diff --git a/.env.dev_server b/.env.dev_server index d78c51a208376954cc258f474ab06763a71ab314..ccec77e29305185dc1a60c846590210769a5e53c 100644 --- a/.env.dev_server +++ b/.env.dev_server @@ -1,3 +1,2 @@ NODE_ENV=production -VUE_APP_VERSION_LABEL=DEVELOPMENT VUE_APP_API_PREFIX= diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9f695676f706a1eefd493701e450eb282cc295d7..2fe5b1b80abe91ec75962faee349dd3bbddf5d0b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,6 +8,7 @@ build-dev: - spraaksamlingene_01 stage: build script: + - echo "VUE_APP_VERSION_LABEL=$CI_COMMIT_BRANCH" >> .env.dev_server - npm install --progress=false - npm run build -- --mode dev_server artifacts: @@ -36,8 +37,11 @@ deploy-dev: tags: - spraaksamlingene_01 stage: deploy - only: - - master + rules: + - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH + when: always + - if: $CI_COMMIT_BRANCH != $CI_DEFAULT_BRANCH + when: manual script: - rm -rf ~/.aws - mv .aws ~/ diff --git a/README.md b/README.md index 3a9bac1e35d36616f901048b6f7f51d9cba602be..210d48655fde5a86831a33ba50611fc697fe99bb 100644 --- a/README.md +++ b/README.md @@ -27,3 +27,16 @@ npm run lint ### Customize configuration See [Configuration Reference](https://cli.vuejs.org/config/). + +### Universell utforming +Nettsiden kan brukes med en skjermleser. Man kan navigere gjennom siden med Tab. Pileknapper må brukes for å navigere mellom +radioknapper ved valget av målformen og ved navigeringen opp/ned i dropdown-menyen i søkefeltet. Det finnes en ekspress-navigasjon +til søkefeltet, men snarveien kan være forskjellig avhengig av nettleseren og operativsystemet. "Nøkkelbokstav" er "s": f.eks, +på Linux er det alt+s i Chrome og shift+alt+s i Firefox. En full oversikt over flere nettlesere og OS finnes i en tabell +her https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/accesskey + +### Workflow +Create a merge request and merge your branch into master if and only if the issue is tagged as ready for prod. +Before submitting the merge request, you must pull any changes from the master branch, resolve merge conflicts and test the result on the dev server. +Deployment to dev server is now accessible on all branches. You can re-run deploy-dev without build-dev to deploy a particular branch to dev (within +the expiry date of 1 week). \ No newline at end of file diff --git a/src/App.vue b/src/App.vue index 4b7d9f6376678bdf32d2334a1a53e8c21e3e3c68..b90afa25c7494eedbd6fa228f1ce909b7b10b4e6 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,10 +1,10 @@ <template> <v-app id="app"> <header> - <div class="about-link"><router-link to="/om" tabindex="2">OM ORDBØKENE</router-link></div> - <h1><a :class="$vuetify.breakpoint.name" href="/" tabindex="1">Ordbøkene</a></h1> + <div class="about-link"><router-link aria-label="Lenke til informasjon om ordbøkene" to="/om" tabindex="2">OM ORDBØKENE</router-link></div> + <h1><a aria-label="Ordbøkene bokmålsordboka og nynorskordboka sitt nettsted" :class="$vuetify.breakpoint.name" href="/" tabindex="1">Ordbøkene</a></h1> <div class="beta" :title="release">{{version_label}}</div> - <p class="sub-title"><router-link to="/" tabindex="3">Bokmålsordboka og Nynorskordboka</router-link></p> + <p class="sub-title"><router-link aria-label="Ordbøkene bokmålsordboka og nynorskordboka sitt nettsted" to="/" tabindex="3">Bokmålsordboka og Nynorskordboka</router-link></p> </header> <router-view></router-view> <footer> diff --git a/src/components/About.vue b/src/components/About.vue index d2dc4ab8699a156f7c671e3a253f5699d79bf58c..ee2208afb20f428b9ae5ee5e121f4e6bc3a2a435 100644 --- a/src/components/About.vue +++ b/src/components/About.vue @@ -4,25 +4,25 @@ <h2>OM ORDBØKENE</h2> <h3>Om betaversjonen</h3> <p>Dette er en ny versjon av standardordbøkene <em>Bokmålsordboka</em> og <em>Nynorskordboka</em>. Siden er fortsatt under utvikling, så det er noen ting som ikke er helt på plass ennå.</p> - <p>Dersom du vil søke i ordbøkene med det gamle grensesnittet, kan du fortsatt finne dem her: <a href="https://ordbok.uib.no/">https://ordbok.uib.no/</a></p> - <p>I forbindelse med oppgraderingen har vi gjort en opprydding både i grensesnittet og i dataene våre. Det betyr at det kan være feil og mangler i den nye løsningen vi ikke har oppdaget ennå, eller ikke har hatt tid til å få på plass. Dersom du oppdager noe som er feil eller mangelfullt, vil vi gjerne ha tilbakemelding om det! Kontakt oss gjerne på <a href="mailto:ordbok-beta@uib.no">ordbok-beta@uib.no</a>. </p> + <p>Dersom du vil søke i ordbøkene med det gamle grensesnittet, kan du fortsatt finne dem her: <a aria-label="Lenke til forelda versjon av ordbøkene" href="https://ordbok.uib.no/">https://ordbok.uib.no/</a></p> + <p>I forbindelse med oppgraderingen har vi gjort en opprydding både i grensesnittet og i dataene våre. Det betyr at det kan være feil og mangler i den nye løsningen vi ikke har oppdaget ennå, eller ikke har hatt tid til å få på plass. Dersom du oppdager noe som er feil eller mangelfullt, vil vi gjerne ha tilbakemelding om det! Kontakt oss gjerne på <a aria-label="skriv e-post til Ordbøkene" href="mailto:ordbok-beta@uib.no">ordbok-beta@uib.no</a>. </p> <h3>Kvalitetssikret innhold</h3> <p><em>Bokmålsordboka</em> og <em>Nynorskordboka</em> er enspråklige ordbøker for henholdsvis bokmål og nynorsk. Ordbøkene eies av Språkrådet og Universitetet i Bergen i fellesskap. Innholdet har blitt utarbeidet av universitetstilsatte ordbokredaktører og er kvalitetssikret av Språkrådet.</p> - <p><a href="https://www.sprakradet.no/">Språkrådet</a> bestemmer hvordan ord skal skrives og bøyes på bokmål og nynorsk. <em>Bokmålsordboka</em> og <em>Nynorskordboka</em> blir løpende oppdatert i tråd med rettskrivingsvedtak i Språkrådet, så det er her du finner fasiten på hva som er gjeldende og fullstendig rettskriving i bokmål og nynorsk. </p> + <p><a aria-label="Lenke til Språkrådet" href="https://www.sprakradet.no/">Språkrådet</a> bestemmer hvordan ord skal skrives og bøyes på bokmål og nynorsk. <em>Bokmålsordboka</em> og <em>Nynorskordboka</em> blir løpende oppdatert i tråd med rettskrivingsvedtak i Språkrådet, så det er her du finner fasiten på hva som er gjeldende og fullstendig rettskriving i bokmål og nynorsk. </p> <p>Det redaksjonelle arbeidet med ordbøkene har siden 2016 foregått ved Universitetet i Bergen. Språksamlingene forvalter ordbøkene og kildegrunnlaget de bygger på, ordbokredaktørene er tilsatt ved Institutt for lingvistiske, litterære og estetiske studier og det datatekniske arbeidet foregår ved IT-avdelingen. </p> <h3>Historikk</h3> <p><em>Bokmålsordboka</em> og <em>Nynorskordboka</em> ble utgitt første gang i 1986, produsert gjennom et samarbeidsprosjekt mellom Universitetet i Oslo og Språkrådet, og er siden kommet i flere utgaver. I trykt form er <em>Bokmålsordboka</em> og <em>Nynorskordboka</em> store ettbinds ordbøker. De viser skrivemåter og bøying som alltid er i tråd med de gjeldende normene. Videre oppgir ordbøkene betydninger, brukseksempler og korte etymologier.</p> - <p><a href="https://www.uib.no/sites/w3.uib.no/files/attachments/om_ordbokene_0.pdf">Her</a> finner du forordene til de trykte utgavene og mer informasjon om tidligere ordbokredaktører og arbeidet med ordbøkene ved Universitetet i Oslo.</p> + <p><a aria-label="Lenke til PDF med forordene til de trykte utgavene og annen informasjon om ordbøkene" href="https://www.uib.no/sites/w3.uib.no/files/attachments/om_ordbokene_0.pdf">Her</a> finner du forordene til de trykte utgavene og mer informasjon om tidligere ordbokredaktører og arbeidet med ordbøkene ved Universitetet i Oslo.</p> <p>Universitetet i Bergen og Språkrådet kommer ikke til publisere flere trykte utgaver av standardordbøkene.</p> <h3>Revisjonsprosjektet</h3> - <p>Det pågår for tiden et omfattende arbeid med å oppdatere innholdet i <em>Bokmålsordboka</em> og <em>Nynorskordboka</em>. I perioden 2018–2023 går en gruppe redaktører gjennom begge ordbøkene fra a til å. De viktigste oppgavene er å få inn nye ord og betydninger, passe på at innholdet er i tråd med dagens språkbruk, og gjøre utvalget av ord likere i de to ordbøkene. Mer informasjon finner du på nettsiden til <a href="https://www.uib.no/lle/revisjonsprosjektet">Revisjonsprosjektet</a>.</p> + <p>Det pågår for tiden et omfattende arbeid med å oppdatere innholdet i <em>Bokmålsordboka</em> og <em>Nynorskordboka</em>. I perioden 2018–2023 går en gruppe redaktører gjennom begge ordbøkene fra a til å. De viktigste oppgavene er å få inn nye ord og betydninger, passe på at innholdet er i tråd med dagens språkbruk, og gjøre utvalget av ord likere i de to ordbøkene. Mer informasjon finner du på nettsiden til <a aria-label="Lenke til informasjon om Revisjonsprojsektet" href="https://www.uib.no/lle/revisjonsprosjektet">Revisjonsprosjektet</a>.</p> <p>Nåværende redaksjon for <em>Bokmålsordboka</em> og <em>Nynorskordboka</em>: <ul> <li>Anne Engø, redaktør 2018–2023</li> @@ -55,7 +55,7 @@ ‹http://ordbok.uib.no› (henta 4.12.2020).</p> </blockquote> <p>Begge eierne av ordboka, Språkrådet og Universitetet i Bergen, bør oppgis i referansen.</p> - <p><em>Bokmålsordboka</em> og <em>Nynorskordboka</em> ligger åpent tilgjengelig for nedlasting. De kan brukes til hvilke formål som helst, inkludert kommersielle, i samsvar med gitte vilkår. Les mer om den åpne lisensen <a href="https://www.uib.no/ub/fagressurser/spesialsamlingene/142334/lisens-bokm%C3%A5lsordboka-og-nynorskordboka">her</a>.</p> + <p><em>Bokmålsordboka</em> og <em>Nynorskordboka</em> ligger åpent tilgjengelig for nedlasting. De kan brukes til hvilke formål som helst, inkludert kommersielle, i samsvar med gitte vilkår. Les mer om den åpne lisensen <a aria-label="Lenke til informasjon om Lisensen til Ordbøkene" href="https://www.uib.no/ub/fagressurser/spesialsamlingene/142334/lisens-bokm%C3%A5lsordboka-og-nynorskordboka">her</a>.</p> <h3>Hva betyr det om du ikke finner et ord i ordboka?</h3> <p><em>Bokmålsordboka</em> og <em>Nynorskordboka</em> er mellomstore nettordbøker. <em>Bokmålsordboka</em> har hatt rundt 65 000 oppslagsord og <em>Nynorskordboka</em> rundt 90 000, men etter revisjonen @@ -68,8 +68,8 @@ </ul> <p>Tilsvarende er bare et avgrenset utvalg av avledninger (for eksempel verbalsubstantiv på -ing) tatt med i standardordbøkene. På norsk kan vi danne ing-former av de aller fleste verb, så finner du oppslagsordene organisere og sitere i <em>Bokmålsordboka</em> og <em>Nynorskordboka</em>, kan du selv lage avledningene organisering og sitering. Merk likevel at det finnes potensielle ing-former som sjelden blir brukt, for eksempel komming og væring.</p> <p><em>Bokmålsordboka</em> og <em>Nynorskordboka</em> er ikke å betrakte som lister over hvilke ord som er tillatt å bruke på norsk. Det finnes mange ord, både gamle og nye, som ikke er med i ordbøkene, men som man gjerne kan bruke likevel. Det er heller ikke slik at nye ord må godkjennes før de kan tas i bruk, det er språkbrukerne som i fellesskap avgjør hvilke ord som er gangbare i norsk. Normalt kommer ikke nye ord inn i ordbøkene før de har vært i bruk en stund og er etablert i språket. Ordbokredaksjonen avgjør hvilke ord som skal være med basert på undersøkelser av store tekstsamlinger, og Språkrådet bestemmer hvordan ordene skal staves og bøyes.</p> - <p><a href="https://www.sprakradet.no/Vi-og-vart/Publikasjoner/Spraaknytt/spraknytt-2014/Spraknytt-12014/Ord-som-finst-og-ikkje-finst/">Her</a> kan du lese mer om ordutvalget bl.a. i <em>Bokmålsordboka</em> og <em>Nynorskordboka</em>.</p> - <p>Dersom du ikke finner ordet du leter etter, kan du sjekke de større og dokumenterende ordbøkene <a href="http://no2014.uib.no/">Norsk Ordbok</a> (for dialektord og nynorsk) og <a href="https://naob.no/">NAOB</a> (for bokmål).</p> + <p><a aria-label="Lenke til informasjon om ordudvalget i ordbøkene" href="https://www.sprakradet.no/Vi-og-vart/Publikasjoner/Spraaknytt/spraknytt-2014/Spraknytt-12014/Ord-som-finst-og-ikkje-finst/">Her</a> kan du lese mer om ordutvalget bl.a. i <em>Bokmålsordboka</em> og <em>Nynorskordboka</em>.</p> + <p>Dersom du ikke finner ordet du leter etter, kan du sjekke de større og dokumenterende ordbøkene <a aria-label="Lenke til Norsk Ordbok, ordboka over det norske folkemålet og det nynorske skriftmålet" href="http://no2014.uib.no/">Norsk Ordbok</a> (for dialektord og nynorsk) og <a aria-label="Lenke til NAOB, det Norske Akademis Ordbok´på bokmål og riksmål" href="https://naob.no/">NAOB</a> (for bokmål).</p> <h3>HJELP TIL SØK</h3> <p>Informasjon kommer når søkefunksjonaliteten er ferdig utviklet.</p> @@ -80,22 +80,22 @@ <h4>Språkressurser på nettet</h4> <p>Språksamlingene ved Universitetsbiblioteket i Bergen har en rekke språkressurser, blant annet:</p> <ul class="bullet"> - <li><a href="http://inger.uib.no/perl/search/search.cgi?appid=72&tabid=1106">Norsk ordbank, bokmål:</a> søk i fullformslister for bokmål</li> - <li><a href="http://inger.uib.no/perl/search/search.cgi?appid=73&tabid=1116">Norsk ordbank, nynorsk:</a> søk i fullformslister for nynorsk</li> - <li><a href="http://inger.uib.no/perl/search/search.cgi?appid=7&tabid=571">Metaordboka:</a> felles database over alle dokumenterte ord sortert på normert nynorsk oppslagsord</li> - <li><a href="http://inger.uib.no/perl/search/search.cgi?appid=118&tabid=1777">Ordbokhotellet:</a> elektronisk indeks over ordformer fra en rekke lokale ordsamlinger sortert under normert oppslagsform</li> - <li><a href="http://inger.uib.no/perl/search/search.cgi">Alle digitale språkressurser under språksamlingene</a></li> + <li><a aria-label="Lenke til Norsk ordbanks fullformslister for bokmål" href="http://inger.uib.no/perl/search/search.cgi?appid=72&tabid=1106">Norsk ordbank, bokmål:</a> søk i fullformslister for bokmål</li> + <li><a aria-label="Lenke til Norsk ordbanks i fullformslister for nynorsk" href="http://inger.uib.no/perl/search/search.cgi?appid=73&tabid=1116">Norsk ordbank, nynorsk:</a> søk i fullformslister for nynorsk</li> + <li><a aria-label="Lenke til Metaordboka, felles database over alle dokumenterte ord sortert på normert nynorsk oppslagsord" href="http://inger.uib.no/perl/search/search.cgi?appid=7&tabid=571">Metaordboka:</a> felles database over alle dokumenterte ord sortert på normert nynorsk oppslagsord</li> + <li><a aria-label="Lenke til Ordbokshotellet, elektronisk indeks med en rekke lokale ordsamlinger" href="http://inger.uib.no/perl/search/search.cgi?appid=118&tabid=1777">Ordbokhotellet:</a> elektronisk indeks over ordformer fra en rekke lokale ordsamlinger sortert under normert oppslagsform</li> + <li><a aria-label="Lenke til alle digitale språkressurser under språksamlingene" href="http://inger.uib.no/perl/search/search.cgi">Alle digitale språkressurser under språksamlingene</a></li> </ul> - <p><a href="http://www.sprakradet.no/">Språkrådet</a> har mange språkressurser samlet under menyen Språkhjelp, gå til <a href="http://www.sprakradet.no/sprakhjelp/Skriveregler/">skriveregler</a>, <a href="http://www.sprakradet.no/sprakhjelp/Praktisk-grammatikk/">praktisk grammatikk</a> eller <a href="http://www.sprakradet.no/sprakhjelp/Skriverad/">skriveråd</a>.</p> - <p>Norsk ordbank ligger også tilgjengelig for nedlasting hos <a href="https://www.nb.no/sprakbanken/ressurskatalog/?_search=ordbank">Språkbanken ved Nasjonalbiblioteket</a> under lisensen CC-BY. Ordbanken inneholder bl.a. fullformslister for bokmål og nynorsk med informasjon om ordklasse og normert bøying.</p> + <p><a aria-label="Lenke til Språkrådet" href="http://www.sprakradet.no/">Språkrådet</a> har mange språkressurser samlet under menyen Språkhjelp, gå til <a aria-label="Lenke til nettsted for Språkrådets skriveregler" href="http://www.sprakradet.no/sprakhjelp/Skriveregler/">skriveregler</a>, <a aria-label="Lenke til Språkrådets nettsted for praktisk grammatikk" href="http://www.sprakradet.no/sprakhjelp/Praktisk-grammatikk/">praktisk grammatikk</a> eller <a aria-label="Lenke til skriveråd på Språkrådets nettsted" href="http://www.sprakradet.no/sprakhjelp/Skriverad/">skriveråd</a>.</p> + <p>Norsk ordbank ligger også tilgjengelig for nedlasting hos <a aria-label="Lenke til Språkbanken ved Nasjonalbiblioteket" href="https://www.nb.no/sprakbanken/ressurskatalog/?_search=ordbank">Språkbanken ved Nasjonalbiblioteket</a> under lisensen CC-BY. Ordbanken inneholder bl.a. fullformslister for bokmål og nynorsk med informasjon om ordklasse og normert bøying.</p> <h4>Andre kvalitetssikrede og fritt tilgjengelige ordbøker</h4> <ul class="bullet"> - <li><a href="http://no2014.uib.no/perl/ordbok/no2014.cgi">Norsk Ordbok:</a> Ordboka over det norske folkemålet og det nynorske skriftmålet</li> - <li><a href="https://naob.no/">NAOB:</a> Det Norske Akademis Ordbok: bokmål og riksmål fra tidlig 1800-tall fram til i dag</li> - <li><a href="http://lexin.udir.no/">LEXIN:</a> ordbøker for minoritetsspråklige elever i grunnskolen, videregående og voksenopplæring</li> - <li><a href="http://www.islex.no/">Islex:</a> ordbok fra islandsk til norsk (bokmål og nynorsk), svensk, dansk, færøysk og finsk</li> - <li><a href="http://ordnet.dk/">ordnet.dk:</a> flere danske ordbøker og korpus</li> - <li><a href="https://svenska.se/">svenska.se:</a> flere svenske ordbøker</li> + <li><a aria-label="Lenke til Norsk Ordbok, ordboka over det norske folkemålet og det nynorske skriftmålet" href="http://no2014.uib.no/perl/ordbok/no2014.cgi">Norsk Ordbok:</a> Ordboka over det norske folkemålet og det nynorske skriftmålet</li> + <li><a aria-label="Lenke til NAOB, det Norske Akademis Ordbok´på bokmål og riksmål" href="https://naob.no/">NAOB:</a> Det Norske Akademis Ordbok: bokmål og riksmål fra tidlig 1800-tall fram til i dag</li> + <li><a aria-label="Lenke til LEXIN, ordbøker for minoritetsspråklige elever" href="http://lexin.udir.no/">LEXIN:</a> ordbøker for minoritetsspråklige elever i grunnskolen, videregående og voksenopplæring</li> + <li><a aria-label="Lenke til Islex, ordbok fra islandsk til nordiske språk" href="http://www.islex.no/">Islex:</a> ordbok fra islandsk til norsk (bokmål og nynorsk), svensk, dansk, færøysk og finsk</li> + <li><a aria-label="Lenke til ordnet.dk, nettsted med danske ordbøker og korpus" href="http://ordnet.dk/">ordnet.dk:</a> flere danske ordbøker og korpus</li> + <li><a aria-label="Lenke til svenska.se, nettsted med svenske ordbøker" href="https://svenska.se/">svenska.se:</a> flere svenske ordbøker</li> </ul> </div> </main> diff --git a/src/components/Article.vue b/src/components/Article.vue index 1952759d9c4391647c3bf73f3c92a8deef146d04..0bd81f0afc2c88487f507686d1e0ec345061ae2e 100644 --- a/src/components/Article.vue +++ b/src/components/Article.vue @@ -161,7 +161,7 @@ section.etymology li:not(:first-child):not(:last-child):before, section.pronunci } section.etymology li:not(:first-child):last-child:before, section.pronunciation li:not(:first-child):last-child:before { - content: " eller "; + content: "; "; font-size: smaller; } diff --git a/src/components/ArticleFooter.vue b/src/components/ArticleFooter.vue index e8611fba156d3510bf0445b1f8763765f3115c9c..5bf7540408b52a83629930066851fafee3a421ee 100644 --- a/src/components/ArticleFooter.vue +++ b/src/components/ArticleFooter.vue @@ -1,7 +1,7 @@ <template> <div class="article_footer"> <span v-if="hasPointer"> - <button class="share_button" tabindex="0"> + <button aria-label="Del ordboksartikkel på Facebook" class="share_button" tabindex="0"> <ShareNetwork network="facebook" title="" :url="share_link" @@ -9,7 +9,7 @@ <v-icon dense>$vuetify.icons.facebook</v-icon> </ShareNetwork> </button> - <button class="share_button" tabindex="0"> + <button aria-label="Del del ordboksartikkel på Twitter" class="share_button" tabindex="0"> <ShareNetwork network="twitter" :url="share_link" @@ -20,7 +20,7 @@ </ShareNetwork> </button> </span> - <button v-if="webShareApiSupported" class="share_button" @click="shareViaWebShare"> + <button v-if="webShareApiSupported" aria-label="Del ordboksartikkelen med andre" class="share_button" tabindex="0" @click="shareViaWebShare"> <span v-if="!hasPointer" class = "share_text">Del ordet</span> <v-icon dense>$vuetify.icons.share</v-icon> </button> diff --git a/src/components/Autocomplete.vue b/src/components/Autocomplete.vue index a042536d768a7601817e977f719d57d3cd45ae04..1ac5facb424a4edd257f7424d93ff927d0fdef82 100644 --- a/src/components/Autocomplete.vue +++ b/src/components/Autocomplete.vue @@ -1,6 +1,6 @@ <template> <div class="autocomplete-container" :class="$vuetify.breakpoint.name"> - <v-combobox + <v-combobox accesskey="s" aria-label="søkefelt" v-model="select" :loading="loading" :items="items" @@ -52,10 +52,11 @@ }, watch: { search (val) { + const time = Date.now() if (! val) { this.items = [] } else { - this.run_query(val) + this.run_query(val, time) } }, select(item) { @@ -81,17 +82,17 @@ } }, methods: { - run_query(q) { + run_query(q, time) { this.suggesting = true // Keep full text search in the list while requesting suggestions if (this.items[0]) { - if (this.items[0].lang) { - this.items.unshift({q: q, label: q}) - } - else { - this.items[0] = {q: q, label: q} + if (this.items[0].time < time) { + this.items.splice(0,1, {q: q, label: q, time: time}) } } + else { + this.items.push({q: q, label: q, time: time}) + } let self = this self.api.get('suggest?', {params: {q: q, dict: self.$parent.lang, n: 9}}) .then(async (response) => { @@ -100,7 +101,7 @@ let hits = [] response.data.forEach((item, i) => { let match = item[0] - let hit = {q: q, match: match, label: match} + let hit = {q: q, match: match, label: match, time: time} hit.article_promise = self.api.get('articles?', {params: {lord: match, dict: self.$parent.lang}}) @@ -109,7 +110,7 @@ }); // whitespace necessary because duplicates aren't allowed in the dropdown - hits.push({q: q, label: q + ' '}) + hits.push({q: q, label: q + ' ', time: time}) self.items = hits } self.loading = false diff --git a/src/components/DictionaryView.vue b/src/components/DictionaryView.vue index 359d51324be844108b124855af6d6714cc3b1896..03783034781e6c99da4744206df613d6308d025d 100644 --- a/src/components/DictionaryView.vue +++ b/src/components/DictionaryView.vue @@ -4,7 +4,7 @@ <div class="lang_select_container"> <v-radio-group row v-model="lang" @change="update_lang_form"> <template v-slot:label tabindex="1"> - <span aria-label="Vis dresultat i begge ordbøkene eller bruk radioknapp for bokmålsordboka eller radioknapp for nynorskordboka">VIS</span> + <span aria-label="Vis resultat i begge ordbøkene eller bruk radioknapp for bokmålsordboka eller radioknapp for nynorskordboka">VIS</span> </template> <v-radio value="bob,nob" color="primary"> <template v-slot:label> diff --git a/src/components/Header.vue b/src/components/Header.vue index 9f8f52e5c7bcee3a2f7830ddddcfaaee91acf86a..e7ad3eafed21819242a35a53c8d099a736f9f404 100644 --- a/src/components/Header.vue +++ b/src/components/Header.vue @@ -4,13 +4,29 @@ <span class="dict-label" tabindex="0">{{dict_label}}</span> <h2 class="article_header" tabindex="0">{{header_text}}</h2> <h2 class="secondary_header" v-if="secondary_header_text.length" tabindex="0">{{secondary_header_text}}</h2> - <span class="header_group_list" v-if="group_list.length" tabindex="0">{{group_list}}</span> - <details :title="inflect_tooltip" @toggle="toggle()" v-if="inflected" :class="$vuetify.breakpoint.name"> - <summary :class="dictionary" onclick="this.blur()" tabindex="0">bøying</summary> - <div class="inflection-canvas"> - <inflectionTable :lemmaList="lemmas_with_word_class_and_lang" :mq="$vuetify.breakpoint.name" /> - </div> - </details> + <span class="header_group_list" v-if="group_list.length" tabindex="0">{{group_list}}</span> + + <span v-if="split_inf" tabindex="0"> (kløyvd infinitiv: <i>-a</i> + <v-menu rounded="0" v-model="menu" offset-x max-width="200px"> + <template v-slot:activator="{ on, attrs }"> + <v-btn v-bind="attrs" v-on="on" depressed min-width="14px" max-width="14px" class="help-button" x-small + color="primary"> + <v-icon middle x-small>$vuetify.icons.value.info</v-icon> + </v-btn> + </template> + <v-card rounded="0" class="info-card"> + Dersom du bruker kløyvd infinitiv, skal dette verbet ha <i>-a</i> i infinitiv. Les meir + <a target="_blank" href="https://www.sprakradet.no/svardatabase/sporsmal-og-svar/kloyvd-infinitiv-/">her</a>. + </v-card> + </v-menu>) + </span> + + <details :title="inflect_tooltip" @toggle="toggle()" v-if="inflected" :class="$vuetify.breakpoint.name"> + <summary :class="dictionary" onclick="this.blur()" tabindex="0">bøying</summary> + <div class="inflection-canvas"> + <inflectionTable :lemmaList="lemmas_with_word_class_and_lang" :mq="$vuetify.breakpoint.name" /> + </div> + </details> </div> </template> @@ -74,6 +90,9 @@ export default { }, inflected: function() { return this.lemmas.reduce((acc, lemma) => acc += lemma.paradigm_info.reduce((acc2, digm) => acc2 += digm.inflection.length, 0), 0) > 0 + }, + split_inf: function() { + return this.lemmas[0].split_inf } }, components: { @@ -81,7 +100,8 @@ export default { }, data: function() { return { - inflect_reported: false + inflect_reported: false, + menu: false } }, methods: { @@ -116,6 +136,17 @@ article h2.secondary_header { padding-bottom: 4px; } +.help-button { + margin-left: 6px; + margin-right: 2px; + margin-bottom: 4px; + color: var(--v-primary-base); +} + +.info-card { + padding: 12px; +} + .word-classification { text-decoration: underline dashed; } diff --git a/src/plugins/vuetify.js b/src/plugins/vuetify.js index 8c16122517c4b13fe266731c1fba398f833a3ce6..9a38c46979e3250f23aa3bc170b6d584b91769ce 100644 --- a/src/plugins/vuetify.js +++ b/src/plugins/vuetify.js @@ -2,10 +2,10 @@ import Vue from 'vue'; import 'material-design-icons-iconfont/dist/material-design-icons.css'; import Vuetify from 'vuetify/lib/framework'; import { library } from '@fortawesome/fontawesome-svg-core' -import { faShareAltSquare } from '@fortawesome/free-solid-svg-icons' -import { faFacebookSquare, faTwitterSquare } from '@fortawesome/free-brands-svg-icons' +import { faShareAltSquare, faInfo} from '@fortawesome/free-solid-svg-icons' +import { faFacebookSquare, faTwitterSquare} from '@fortawesome/free-brands-svg-icons' import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome' -library.add(faFacebookSquare, faTwitterSquare, faShareAltSquare) +library.add(faFacebookSquare, faTwitterSquare, faShareAltSquare, faInfo) Vue.component('font-awesome-icon', FontAwesomeIcon); Vue.use(Vuetify); @@ -28,6 +28,12 @@ const FONTAWESOME_ICONS = { props: { icon: "share-alt-square" } + }, + info: { + component: FontAwesomeIcon, + props: { + icon: ["fa", "info"] + } } }