Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
No results found
Show changes
import Vue from 'vue'
import Root from './Root.vue'
import App from './App.vue'
import About from './components/About.vue'
import DictionaryView from './components/DictionaryView.vue'
import VueRouter from 'vue-router'
import { VuePlausible } from 'vue-plausible'
import vuetify from './plugins/vuetify'
import Vuex from 'vuex'
import i18n from './i18n'
import VueMeta from 'vue-meta'
Vue.config.productionTip = false
Vue.use(Vuex)
Vue.use(VueRouter)
Vue.use(VueMeta, {
// optional pluginOptions
refreshOnceOnNavigation: true
})
Vue.use(VuePlausible, {
domain: 'ordbokene.no'
})
Vue.$plausible.enableAutoPageviews()
const router = new VueRouter({
mode: 'history',
base: __dirname,
routes: [
{
name: 'root',
path: '/',
component: App }, // No props, no nothing
{
name: 'lookup',
path: '/:lang/:id(\\d+)',
component: App,
props: true }, // Pass route.params to props
{
name: 'search',
path: '/search',
component: App,
props: true}
beforeEnter(to, from , next) {
if (to.query.OPP) { // Legacy
let query = {q: to.query.OPP.toUpperCase() == to.query.OPP ? to.query.OPP.toLowerCase() : to.query.OPP, scope: "ei"}
if (to.query.ava && to.query.type == "fritekst") {
query["scope"] = "eif"
}
let lang = {"bokmaal": "/bm", "nynorsk": "/nn"}[to.query.ordbok] || "bm,nn"
if (to.query.bokmaal && !to.query.nynorsk) {
lang = "/bm"
}
if (to.query.nynorsk && !to.query.bokmaal) {
lang = "/nn"
}
next({path: lang+"/search", query})
}
else {
next()
}
},
children: [
{
path: 'om',
name: 'about',
component: About
},
{
path: "legacy/:query", // Legacy
redirect: to => {
console.log(to)
let q = to.params.query.replace(/[\[\]]/g, "")
if (q.toUpperCase() == q) {
q = q.toLowerCase()
}
return {path: "bm,nn/search", query: {q}}
}
},
{
path: '',
component: DictionaryView,
children: [
{
path: ':lang(bm|nn|bm,nn)',
children: [
{
path: 'search',
name: 'search'
},
{
name: 'lookup',
path: ':id(\\d+)/:lemma?'
},
{
name: "word",
path: ':q([^?]+)'
}
]
}
]
}
]
}
]
})
// All interaction with local storage is encapsulated in vuex
const store = new Vuex.Store({
strict: true,
state: {
showSearchToolbar: null,
showInflectionNo: null,
currentLocale: null,
collapseArticles: 'never',
defaultDict: null,
perPage: 20,
menuOpen: false,
noMouse: null,
searchRoute: null,
fulltextHighlight: false,
unavailable: null,
localeChosen: false,
inflectionExpanded: false,
inflectionTableContext: true
},
mutations: {
initStore(state) {
try {
state.showInflectionNo = localStorage.getItem('showInflectionNo') && localStorage.getItem('showInflectionNo') != 'false'
state.currentLocale = localStorage.getItem('currentLocale') || null
state.defaultDict = localStorage.getItem('defaultDict') || 'bm,nn'
state.perPage = localStorage.getItem('perPage') || 20
state.collapseArticles = localStorage.getItem('collapseArticles') || 'never'
state.localeChosen = localStorage.getItem('currentLocale') ? true : false
state.inflectionExpanded = localStorage.getItem('inflectionExpanded') && localStorage.getItem('inflectionExpanded') != 'false'
state.inflectionTableContext = !localStorage.getItem('inflectionTableContext') || localStorage.getItem('inflectionTableContext') == 'true' ? true : false
} catch(e) {
console.log("localStorage unavailable")
state.unavailable = true
}
if (!state.currentLocale) {
let locales = navigator.languages.map(l => l.split("-")[0])
if (locales.includes("nn")) state.currentLocale = "nno"
else if (locales.includes("nb")) state.currentLocale = "nob"
else {
state.currentLocale = Math.random() < 0.5 ? "nob" : "nno";
if (!state.unavailable) {
localStorage.setItem('currentLocale', state.currentLocale)
}
}
}
i18n.locale = state.currentLocale
state.noMouse = navigator.userAgentData? navigator.userAgentData.mobile : !window.matchMedia('(pointer: fine)').matches
},
setLocale(state, payload) {
state.currentLocale = payload.value
i18n.locale = payload.value
state.localeChosen = true
if (!state.unavailable) localStorage.setItem("currentLocale", payload.value);
},
setCollapse(state, value) {
if (!state.unavailable) localStorage.setItem("collapseArticles", value)
state.collapseArticles = value
},
setFulltextHighlight(state, value) {
state.fulltextHighlight = value
},
setPerPage(state, value) {
if (!state.unavailable) localStorage.setItem("perPage", value)
state.perPage = value
},
toggleInflectionNo(state) {
state.showInflectionNo = !state.showInflectionNo
if (!state.unavailable) localStorage.setItem('showInflectionNo', state.showInflectionNo);
},
disableHotkey(state) {
state.disableHotkey = !state.disableHotkey
if (!state.unavailable) localStorage.setItem('disableHotkey', state.disableHotkey);
},
toggleInflectionTableContext(state) {
state.inflectionTableContext = !state.inflectionTableContext
if (!state.unavailable) localStorage.setItem('inflectionTableContext', state.inflectionTableContext);
},
toggleInflectionExpanded(state) {
state.inflectionExpanded = !state.inflectionExpanded
if (!state.unavailable) localStorage.setItem('inflectionExpanded', state.inflectionExpanded);
},
toggleMenu(state) {
state.menuOpen = !state.menuOpen
},
setDefaultDict(state, value) {
if (!state.unavailable) localStorage.setItem("defaultDict", value)
state.defaultDict = value
},
resetStore() {
localStorage.removeItem("showSearchToolbar")
localStorage.removeItem("showInflectionNo")
localStorage.removeItem("currentLocale")
localStorage.removeItem("collapseArticles")
localStorage.removeItem("defaultDict")
localStorage.removeItem("perPage")
localStorage.removeItem("inflectionTableContext")
localStorage.removeItem("ukr_popup")
localStorage.removeItem("test_info")
localStorage.removeItem("beta_info")
localStorage.removeItem("app_info")
this.commit("initStore")
},
setSearchRoute(state, path) {
state.searchRoute = path
}
}
})
new Vue({
router,
render: h => h(App),
vuetify,
store,
beforeCreate() {
this.$store.commit('initStore');
},
i18n,
render: h => h(Root )
}).$mount('#app')
import Vue from 'vue';
import 'material-design-icons-iconfont/dist/material-design-icons.css';
import Vuetify from 'vuetify/lib/framework';
Vue.use(Vuetify);
export default new Vuetify({
breakpoint: {
thresholds: {
xs: 470,
sm: 700,
md: 1250,
lg: 1900,
},
scrollBarWidth: 24,
},
theme: {
options: {
customProperties: true
},
themes: {
light: {
primary: '#560027',
secondary: '#BC477B',
tertiary: '#FDF4F5',
anchor: '#880E4F',
error: '#FDF4F5',
border: '#9E9E9E',
button: '#f5f5f5',
text: '#000000'
}
}
},
defaultAssets: {
font: true,
icons: 'md'
},
icons: {
iconfont: 'md',
}
});
import json
import urllib.parse
# Load lemmas
with open("bm_lemma.json") as inn:
bm_list = json.load(inn)
with open("nn_lemma.json") as inn:
nn_list = json.load(inn)
# Merge bm and nn
words = {}
for row in bm_list:
words[row[0]] = words.get(row[0], set())
words[row[0]].add(("bm", row[1]))
for row in nn_list:
words[row[0]] = words.get(row[0], set())
words[row[0]].add(("nn", row[1]))
url_counter = 0
write_start = lambda out: out.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\" xmlns:xhtml=\"http://www.w3.org/1999/xhtml\">\n")
filenum = 0
out = open(f"src/sitemap/xml/sitemap_{filenum}.xml", "w")
write_start(out)
seen_articles = set()
for word, articles in words.items():
if url_counter > 20000:
out.write("</urlset>\n")
url_counter = 0
out.close()
filenum += 1
out = open(f"src/sitemap/xml/sitemap_{filenum}.xml", "w")
write_start(out)
for article in articles:
if article[1] not in seen_articles:
out.write("\t<url>\n")
out.write(f"\t\t<loc>https://ordbokene.no/{article[0]}/{article[1]}</loc>\n")
out.write(f"\t\t<xhtml:link rel=\"alternative\" href=\"https://ordbokene.no/{article[0]}/{article[1]}/{urllib.parse.quote(word)}\"/>\n")
out.write("\t</url>\n")
url_counter += 1
seen_articles.add(article[1])
# Omit articles
if len(articles) > 1:
out.write("\t<url>\n")
out.write(f"\t\t<loc>https://ordbokene.no//bm,nn/{urllib.parse.quote(word)}</loc>\n")
out.write("\t</url>\n")
url_counter += 1
out.write("</urlset>\n")
out.close()
with open("src/sitemap/xml/sitemap_index.xml", "w") as outfile:
outfile.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<sitemapindex xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">\n")
outfile.write("<sitemap><loc>https://ordbokene.no/sitemap.xml</loc></sitemap>\n")
for num in range(filenum+1):
outfile.write(f"<sitemap><loc>https://ordbokene.no/sitemap_{num}.xml</loc></sitemap>\n")
outfile.write("</sitemapindex>")
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>https://ordbokene.no</loc>
<xhtml:link rel="alternative" href="https://ordbokene.no/bm,nn"/>
</url>
<url>
<loc>https://ordbokene.no/bm</loc>
</url>
<url>
<loc>https://ordbokene.no/nn</loc>
</url>
<url>
<loc>https://ordbokene.no/om</loc>
</url>
</urlset>
\ No newline at end of file
var entities = {
'bob': {
'adj': 'adjektiv',
'adjsk': 'adjektivisk',
'adv': 'adverb',
'akk': 'akkusativ',
'am': 'amerikansk',
'am-eng': 'amerikansk-engelsk',
'am_e': 'amerikanske',
'ags': 'angelsaksisk',
'arab': 'arabisk',
'arkais': 'arkaiserende',
'art': 'artikkel',
'art_en': 'artikkelen',
'astron': 'astronomi',
'avl': 'avledning',
'besl': 'beslektet',
'b': 'bestemt',
'bf': 'bestemt form',
'bet': 'betydning',
'bet_er': 'betydninger',
'bibl': 'bibelspråk',
'bil': 'bildelig',
'bio': 'biologi',
'bl_a': 'blant annet',
'bm': 'bokmål',
'bot': 'botanikk',
'd_e': 'd e',
'd_s': 'd s',
'da': 'dansk',
'da_e': 'danske',
'dat': 'dativ',
'dim': 'diminutiv',
'dim-suff': 'diminutivssuffiks',
'dvs': 'dvs.',
'eKr': 'e.Kr.',
'eg': 'egentlig',
'egl': 'egentlig',
'el_l': 'el l',
'e': 'eldre',
'eldre': 'eldre',
'el': 'eller',
'e_l': 'eller lignende',
'eng': 'engelsk',
'eng_e': 'engelske',
'ent': 'entall',
'ev': 'eventuelt',
'fKr': 'f.Kr.',
'fag': 'fagspråk',
'fellesgerm': 'fellesgermansk',
'f': 'femininum',
'filos': 'filosofi',
'flat': 'flat',
'fl': 'flertall',
'fls': 'flertalls',
'f_eks': 'for eksempel',
'forb': 'forbindelse',
'forb_r': 'forbindelser',
'foreld': 'foreldet',
'forh': 'forhold',
'fork_a': 'forkorta',
'fork': 'forkorting',
'fork_ing': 'forkorting',
'forst': 'forsterkende',
'fr': 'fransk',
'fr-lat': 'fransk-latin',
'fr_e': 'franske',
'fris': 'frisisk',
'faer': 'færøysk',
'g': 'g',
'gram': 'g',
'gl': 'gammel',
'gda': 'gammeldansk',
'geng': 'gammelengelsk',
'gfr': 'gammelfransk',
'gfris': 'gammelfrisisk',
'ggerm': 'gammelgermansk',
'ghty': 'gammelhøytysk',
'git': 'gammelitaliensk',
'glat': 'gammellatin',
'glty': 'gammellavtysk',
'gnederl': 'gammelnederlandsk',
'gno': 'gammelnorsk',
'gruss': 'gammelrussisk',
'gsaks': 'gammelsaksisk',
'gslav': 'gammelslavisk',
'gsv': 'gammelsvensk',
'glt': 'gammelt',
'gty': 'gammeltysk',
'gen': 'genitiv',
'germ': 'germansk',
'gj': 'gjennom',
'got': 'gotisk',
'gramm': 'grammatikk',
'gr': 'gresk',
'gr-lat': 'gresk-latin',
'gr_e': 'greske',
'hebr': 'hebraisk',
'hty': 'høytysk',
'i_anat': 'i anatomi',
'i_astron': 'i astronomi',
'i_bibl': 'i bibelspråk',
'i_biokjm': 'i biokjemi',
'i_biol': 'i biologi',
'i_bot': 'i botanikk',
'i_dial': 'i dialekt',
'dial': 'i dialekter',
'i_fag': 'i fagspråk',
'i_filos': 'i filosofi',
'i_forb_m': 'i forbindelse med',
'i_forb': 'i forbindelsen',
'fys': 'i fysikk',
'i_fys': 'i fysikk',
'i_fysiol': 'i fysiologi',
'i_geol': 'i geologi',
'i_gram': 'i grammatikk',
'i_gramm': 'i grammatikk',
'i_gr_myt': 'i gresk mytologi',
'i_idr': 'i idrett',
'i_jus': 'i jus',
'i_kjem': 'i kjemi',
'i_mat': 'i matematikk',
'i_med': 'i medisin',
'i_mil': 'i militærspråk',
'i_mus': 'i musikk',
'i_myt': 'i mytologi',
'i_norr_myt': 'i norrøn mytologi',
'overf': 'i overført betydning',
'i_pol': 'i politikk',
'pol': 'i politikk',
'i_psyk': 'i psykologi',
'i_rel': 'i religiøst språk',
'i_spraakv': 'i språkvitenskap',
'i_tekn_s': 'i teknisk språk',
'i_teol': 'i teologi',
'i_typ': 'i typografi',
'i_zool': 'i zoologi',
'i_oekol': 'i økologi',
'idr': 'idrett',
'imp': 'imperativ',
'ieur': 'indoeuropeisk',
'inf': 'infinitiv',
'innv': 'innvirkning',
'inv': 'innvirkning',
'interj': 'interjeksjon',
'intr': 'intransitivt',
'iron': 'ironisk',
'isl': 'islandsk',
'it': 'italiensk',
'it_e': 'italienske',
'jf': 'jamfør',
'jpn': 'japansk',
'jur': 'jus',
'jy': 'jysk',
'kat': 'katolsk',
'kat_e': 'katolske',
'kelt': 'keltisk',
'kg': 'kilogram',
'kjem': 'kjemisk',
'kl': 'kl.',
'kol': 'kollektivt',
'koll': 'kollektivt',
'komp': 'komparativ',
'konj': 'konjunksjon',
'lat': 'latin',
'lty': 'lavtysk',
'litt': 'litterært språk',
'm': 'm',
'm_a': 'm a',
'm_m': 'm m',
'm_oms_t': 'm oms t',
'mask': 'maskulinum',
'mat': 'matematikk',
'med': 'medisin',
'meds': 'medisinsk',
'mno': 'mellomnorsk',
'mlat': 'middelalderlatin',
'mda': 'middeldansk',
'meng': 'middelengelsk',
'mhty': 'middelhøytysk',
'msv': 'middelsvensk',
'mty': 'middeltysk',
'mil': 'militærstell',
'mots': 'motsatt',
'mus': 'musikk',
'myt': 'mytologi',
'malf': 'målføre',
'ncaron': 'ncaron',
'nederl': 'nederlandsk',
'neds': 'nedsettende',
'nom': 'nominativ',
'nordam': 'nordamerikansk',
'nord': 'nordisk',
'norr_n': 'norrøn',
'norr_e': 'norrøne',
'norr': 'norrønt',
'no': 'norsk',
'no-da': 'norsk-dansk',
'no_e': 'norske',
'nr': 'nummer',
'nyd': 'nydanning',
'nda': 'nydansk',
'ngr': 'nygresk',
'nygr': 'nygresk',
'nisl': 'nyislandsk',
'nyl': 'nylaging',
'nlat': 'nylatin',
'nyno': 'nynorsk',
'n': 'nøytrum',
'obj-': 'objekts',
'off': 'offentlig',
'o_ae': 'og andre',
'o_a': 'og annet',
'o_l': 'og lignende',
'o_norr_forh': 'om norrøne forhold',
'opph': 'opphav',
'opphl': 'opphavlig',
'osv': 'osv.',
'p_g_a': 'p g a',
'pt': 'partisipp',
'pass': 'passiv',
'pf': 'perfektum',
'pf_pt': 'perfektum partisipp',
'pers': 'person',
'poet_s': 'poetisk språk',
'port': 'portugisisk',
'pref': 'prefiks',
'prep': 'preposisjon',
'pr': 'presens',
'pres': 'presens',
'pr_pt': 'presens partisipp',
'pret': 'preteritum',
'pron': 'pronomen',
'pga': 'på grunn av',
'refl': 'refleksivt',
'rel': 'religiøse',
'rom': 'romansk',
'russ': 'russisk',
'russ_e': 'russiske',
's_d': 's d',
'saks': 'saksisk',
'sam': 'samisk',
'sm': 'samme',
'sm_o': 'samme opphav',
'sm_o_s': 'samme opphav som',
'smbl': 'sammenblanding',
'smh': 'sammenheng',
'sms': 'sammensetning',
'sms_er': 'sammensetninger',
'scaron': 'scaron',
'sengr': 'sengresk',
'senlat': 'senlatin',
'seinlat': 'senlatin',
'shet': 'shetlandsk',
'sj': 'sjelden',
'skjemt': 'skjemtende',
'slav': 'slavisk',
'sm_st': 'sm st',
's_adj': 'som adjektiv',
's_adv': 'som adverb',
's_subst': 'som substantiv',
'sp': 'spansk',
'sp-am': 'spansk-amerikansk',
'spraakv': 'språkvitenskap',
'spoekt': 'spøkefullt',
'subj': 'subjekt',
'subst': 'substantiv',
'subst_t': 'substantivert',
'subst_isk': 'substantivisk',
'suff': 'suffiks',
'superl': 'superlativ',
'svar._t': 'svar. t',
'sv': 'svensk',
'sv_e': 'svenske',
'saerl': 'særlig',
'soeram': 'søramerikansk',
'soerfr': 'sørfransk',
'tidl': 'tidligere',
't_forskj_fra': 'til forskjell fra',
't_forsk_f': 'til forskjell fra',
'tr': 'transitivt',
'trol': 'trolig',
'tsjekk': 'tsjekkisk',
'tyd': 'tyding',
'tyrk': 'tyrkisk',
'ty': 'tysk',
'ty_e': 'tyske',
'ub': 'ubestemt',
'ubf': 'ubestemt form',
'uboey': 'ubøyelig',
'upers': 'upersonlig',
'uspes': 'uspesifisert',
'utenl': 'utenlandske',
'utt': 'uttale',
'utr': 'uttrykk',
'uttr': 'uttrykk',
'uttr_et': 'uttrykket',
'uttr_t': 'uttrykket',
'vha': 'ved hjelp av',
'vsa': 'ved siden av',
'v': 'verb',
'verb': 'verb',
'vbs': 'verbalsubstantiv',
'y_st': 'y st',
'zool': 'zoologi'
'bm': {
},
'nob': {
'adj': 'adjektiv',
'adv': 'adverb',
'akk': 'akkusativ',
'am-eng': 'amerikansk-engelsk',
'ags': 'angelsaksisk',
'arab': 'arabisk',
'astron': 'astronomi',
'avl': 'avleiing',
'bibl': 'bibelmål',
'bil': 'biletleg',
'bio': 'biologi',
'bm': 'bokmål',
'bot': 'botanikk',
'bf': 'bunden form',
'd_e': 'd e',
'd_s': 'd s',
'da': 'dansk',
'dat': 'dativ',
'dim': 'diminutiv',
'dvs': 'dvs.',
'eKr': 'eKr.',
'egl': 'egenlig',
'eigl': 'eigenleg',
'eint': 'eintal',
'el_l': 'el l',
'eldre': 'eldre',
'e': 'eldre',
'el': 'eller',
'e_l': 'eller liknande',
'eng': 'engelsk',
'ent': 'entall',
'ev': 'eventuelt',
'f': 'f',
'fKr': 'fKr.',
'fag': 'fagmål',
'filos': 'filosofi',
'flat': 'flat',
'fl': 'fleirtal',
'forh': 'forhold',
'fork_a': 'forkorta',
'fork_ing': 'forkorting',
'forst': 'forsterkande',
'fr': 'fransk',
'fris': 'frisisk',
'fys': 'fysikk',
'faer': 'færøysk',
'gruss': 'gammal-russisk',
'gda': 'gammaldansk',
'geng': 'gammalengelsk',
'gfr': 'gammalfransk',
'gfris': 'gammalfrisisk',
'ghty': 'gammalhøgtysk',
'glat': 'gammallatin',
'glty': 'gammallågtysk',
'gno': 'gammalnorsk',
'gslav': 'gammalslavisk',
'gsv': 'gammalsvensk',
'gty': 'gammaltysk',
'gen': 'genitiv',
'germ': 'germansk',
'gj': 'gjennom',
'got': 'gotisk',
'g': 'gram',
'gramm': 'grammatikk',
'gr': 'gresk',
'hebr': 'hebraisk',
'hty': 'høgtysk',
'idr': 'idrett',
'ieur': 'indoeuropeisk',
'inf': 'infinitiv',
'inv': 'innverknad',
'iron': 'ironisk',
'isl': 'islandsk',
'it': 'italiensk',
'jf': 'jamfør',
'jpn': 'japansk',
'jur': 'jus',
'jy': 'jysk',
'kelt': 'keltisk',
'kg': 'kilogram',
'kjem': 'kjemisk',
'kl': 'kl.',
'kol': 'kollektivt',
'komp': 'komparativ',
'konj': 'konjunksjon',
'lat': 'latin',
'latsk': 'latin',
'litt': 'litterært mål',
'lty': 'lågtysk',
'm': 'm',
'm_a': 'm a',
'm_oms_t': 'm oms t',
'm_m': 'm.a.',
'mat': 'matematikk',
'med': 'medisin',
'meng': 'mellomengelsk',
'mhty': 'mellomhøgtysk',
'mlat': 'mellomlalderlatin',
'mno': 'mellomnorsk',
'msv': 'mellomsvensk',
'mty': 'mellomtysk',
'mil': 'militærstell',
'mots': 'motsett',
'mus': 'musikk',
'myt': 'mytologi',
'malf': 'målføre',
'n': 'n',
'ncaron': 'ncaron',
'nederl': 'nederlandsk',
'neds': 'nedsetjande',
'nordam': 'nordamerikansk',
'nord': 'nordisk',
'norr_e': 'norrøne',
'norr': 'norrønt',
'no': 'norsk',
'no-da': 'norsk-dansk',
'nr': 'nummer',
'nda': 'nydansk',
'nyl': 'nylaging',
'nlat': 'nylatin',
'nyno': 'nynorsk',
'o_a': 'o a',
'o_l': 'o.l.',
'off': 'offentleg',
'opph': 'opphavleg',
'osv': 'osv.',
'overf': 'overført tyding',
'p_g_a': 'p g a',
'pf_pt': 'perfektum partisipp',
'pers': 'person',
'pol': 'politikk',
'port': 'portugisisk',
'pr': 'pr.',
'prep': 'preposisjon',
'pr_pt': 'presens partisipp',
'pron': 'pronomen',
'pga': 'på grunn av',
'refl': 'refleksivt',
'rel': 'religiøst mål',
'rom': 'romansk',
'russ': 'russisk',
'saks': 'saksisk',
'smbl': 'samanblanding',
'smh': 'samanheng',
'sms': 'samansetningar',
'sm_o_s': 'same opphav som',
'sam': 'samisk',
'seinlat': 'seinlatin',
'shet': 'shetlandsk',
'sj': 'sjeldan',
's_d': 'sjå det',
'skjemt': 'skjemtande',
'slav': 'slavisk',
'sm_st': 'sm st',
'sp': 'spansk',
'spraakv': 'språkvitskap',
'subj': 'subjekt',
'subst': 'substantiv',
'subs_isk': 'substantivisk',
'superl': 'superlativ',
'svar._t': 'svar. t',
'sv': 'svensk',
'saerl': 'særleg',
'soeram': 'søramerikansk',
't_skiln': 't skiln',
'tidl': 'tidlegare',
't_d': 'til dømes',
'tsjekk': 'tsjekkisk',
'tyd': 'tyding',
'ty': 'tysk',
'uboey': 'ubøyeleg',
'upers': 'upersonleg',
'uspes': 'uspesifisert',
'utanl': 'utanlandske',
'utt': 'uttrykk',
'utr': 'uttrykk',
'uttr_et': 'uttrykket',
'vbs': 'vbs.',
'vha': 'ved hjelp av',
'verb': 'verb',
'y_st': 'y st',
'zool': 'zoologi'
'nn': {
}
}
......
var mapping = {
"NOUN": "Substantiv",
"VERB": "Verb",
"ADJ": "Adjektiv",
"ADP": "Preposisjon",
"PFX": "Prefiks",
"ADV": "Adverb",
"DET": "Determinativ",
"PROPN": "Egennavn",
"ABBR": "Forkortelse",
"INTJ": "Interjeksjon",
"SYM": "Symbol",
"PRON": "Pronomen",
"CCONJ": "Konjunksjon",
"SCONJ": "Subjunksjon",
"INFM": "Infinitivsmerke",
"COMPPFX": "I sammensetting",
"Masc": "Mask.",
"Fem": "Fem.",
"Neuter": "Nøytr."
var fraction = function(numerator, denominator) {
var superscript = {
'0': '',
'1': '¹',
'2': '²',
'3': '³',
'4': '',
'5': '',
'6': '',
'7': '',
'8': '',
'9': '',
'+': '',
'-': '',
'=': '',
'(': '',
')': '',
'a': '',
'b': '',
'c': '',
'd': '',
'e': '',
'f': '',
'g': '',
'h': 'ʰ',
'i': '',
'j': 'ʲ',
'k': '',
'l': 'ˡ',
'm': '',
'n': '',
'o': '',
'p': '',
'r': 'ʳ',
's': 'ˢ',
't': '',
'u': '',
'v': '',
'w': 'ʷ',
'x': 'ˣ',
'y': 'ʸ',
'z': '',
' ': ' '
}
var subscript = {
'0': '',
'1': '',
'2': '',
'3': '',
'4': '',
'5': '',
'6': '',
'7': '',
'8': '',
'9': '',
'+': '',
'-': '',
'=': '',
'(': '',
')': '',
'a': '',
'e': '',
'h': '',
'i': '',
'j': '',
'k': '',
'l': '',
'm': '',
'n': '',
'o': '',
'p': '',
'r': '',
's': '',
't': '',
'u': '',
'v': '',
'x': '',
' ': ' '
};
var fractions = {
'1/2': '½',
'1/3': '',
'2/3': '',
'1/4': '¼',
'3/4': '¾',
'1/5': '',
'2/5': '',
'3/5': '',
'4/5': '',
'1/6': '',
'5/6': '',
'1/7': '',
'1/8': '',
'3/8': '',
'5/8': '',
'7/8': '',
'1/9': '',
'1/10': ''
};
let other_fraction = null
let num_sup = numerator.toString().split('').map(x => superscript[x] || '_').join('')
let den_sub = denominator.toString().split('').map(x => subscript[x] || '_').join('')
if (! num_sup.includes('_') && ! den_sub.includes('_')) {
other_fraction = num_sup + '' + den_sub
}
return fractions[numerator + '/' + denominator] && {type: 'plain', html: fractions[numerator + '/' + denominator] }
|| other_fraction && {type: 'plain', html: other_fraction }
|| {type: 'fraction', html: '', num: numerator, denom: denominator}
}
var group_list = function(grps) {
var grp_collection = new Set()
grps.forEach(function(lemma){
lemma.paradigm_info.forEach(function(grp){
if (grp.tags){
grp_collection.add(grp.tags[0] == 'NOUN' ? mapping[grp.tags[0]] + ', ' + mapping[grp.tags[1]] : mapping[grp.tags[0]])
}
})
})
if (grp_collection.has('Substantiv, Mask.') && grp_collection.has('Substantiv, Fem.')) {
grp_collection.delete('Substantiv, Mask.')
grp_collection.delete('Substantiv, Fem.')
grp_collection.add('Substantiv, Mask./Fem.')
const roman_hgno = function(lemma) {
let hgint = parseInt(lemma.hgno)
if (hgint > 0) {
return ["I","II","III","IV", "V", "VI", "VII", "VIII", "IX", "X", "XI", "XII", "XIII", "XIV", "XV", "XVI"][hgint-1]
}
return Array.from(grp_collection).join(' - ')
return ""
}
export default { group_list}
export default { fraction, roman_hgno }
var languages = {
'bob': {
'am.-eng.': 'amerikansk',
'arab.': 'arabisk',
'da.': 'dansk',
'eng.': 'engelsk',
'fr.': 'fransk',
'fris.': 'frisisk',
'fær.': 'færøysk',
'g.da.': 'gammeldansk',
'g.eng.': 'gammelengelsk',
'germ.': 'germansk',
'g.fr.': 'gammelfransk',
'g.h.ty.': 'gammelhøytysk',
'g.lat.': 'gammellatin',
'g.l.ty.': 'gammellavtysk',
'g.no.': 'gammelnorsk',
'got.': 'gotisk',
'gr.': 'gresk',
'g.russ.': 'gammelrussisk',
'g.sv.': 'gammelsvensk',
'g.ty.': 'gammeltysk',
'hebr.': 'hebraisk',
'h.ty.': 'høytysk',
'i.eur.': 'indoeuropeisk',
'isl.': 'islandsk',
'it.': 'italiensk',
'jy.': 'jysk',
'kelt.': 'keltisk',
'lat.': 'latin',
'l.ty.': 'lavtysk',
'm.eng.': 'middelengelsk',
'm.h.ty.': 'middelhøytysk',
'm.lat.': 'middelalderlatin',
'm.no.': 'mellomnorsk',
'm.ty.': 'middeltysk',
'nyda.': 'nydansk',
'nederl.': 'nederlandsk',
'finsk': 'finsk',
'no.': 'norsk',
'no.-da.': 'norsk-dansk',
'nord.': 'nordisk',
'bm.': 'bokmål',
'nordam.': 'nordamerikansk',
'norr.': 'norrønt',
'nyno.': 'nynorsk',
'port.': 'portugisisk',
'rom.': 'romansk',
'russ.': 'russisk',
'saks.': 'saksisk',
'sam.': 'samisk',
'senlat.': 'senlatin',
'shet.': 'shetlandsk',
'slav.': 'slavisk',
'sp.': 'spansk',
'sv.': 'svensk',
'sør-am.': 'søramerikansk',
'tsjekk.': 'tsjekkisk',
'ty.': 'tysk',
'algonkin': 'algonkin',
'tyrkisk': 'tyrkisk',
'malayisk': 'malayisk',
'sørkinesisk': 'sørkinesisk',
'marathi': 'marathi',
'hindi': 'hindi',
'sanskrit': 'sanskrit',
'polsk': 'polsk',
'persisk': 'persisk',
'ungarsk': 'ungarsk',
'semittisk': 'semittisk',
'egyptisk': 'egyptisk',
'bretonsk': 'bretonsk',
'singalesisk': 'singalesisk',
'g.fris.': 'gammelfrisisk',
'provençalsk': 'provençalsk',
'japansk': 'japansk',
'aleutisk': 'aleutisk',
'malayalam': 'malayalam',
'turkotatarisk': 'turkotatarisk',
'nepali': 'nepali',
'jakutisk': 'jakutisk',
'hawaiisk': 'hawaiisk',
'g.slav.': 'gammelslavisk',
'tamil': 'tamil',
'senegalesisk': 'senegalesisk',
'urdu': 'urdu',
'gælisk': 'gælisk',
'indianerspråk': 'indianerspråk',
'quechua': 'quechua',
'bengali': 'bengali',
'karibisk språk': 'karibisk språk',
'australsk språk': 'australsk språk',
'tupi-språket': 'tupi-språket',
'bantuspråk': 'bantuspråk',
'indisk språk': 'indisk språk',
'afrikansk språk': 'afrikansk språk',
'romani': 'romani',
'romanes': 'romanes',
'ags.': 'angelsaksisk',
'm.sv.': 'mellomsvensk',
'aram.': 'arameisk',
'nylat.': 'nylatin',
'navnet': 'navnet',
'varemerke': 'varemerke',
'guarani': 'guarani',
'khoikhoi': 'khoikhoi',
'kinesisk': 'kinesisk',
'eskimoisk': 'eskimoisk-aleutiske språk, inkludert grønlandsk',
'am.-sp-': 'amerikansk-spansk',
'afrikaans': 'afrikaans',
'gullah': 'gullah',
'wolof': 'wolof'
},
'nob': {
'am.-eng.': 'amerikansk',
'arab.': 'arabisk',
'da.': 'dansk',
'eng.': 'engelsk',
'fr.': 'fransk',
'fris.': 'frisisk',
'fær.': 'færøysk',
'g.da.': 'gammaldansk',
'g.eng.': 'gammalengelsk',
'germ.': 'germansk',
'g.fr.': 'gammalfransk',
'g.h.ty.': 'gammalhøgtysk',
'g.lat.': 'gammallatin',
'g.l.ty.': 'gammallågtysk',
'g.no.': 'gammalnorsk',
'got.': 'gotisk',
'gr.': 'gresk',
'g.russ.': 'gammalrussisk',
'g.sv.': 'gammalsvensk',
'g.ty.': 'gammaltysk',
'hebr.': 'hebraisk',
'h.ty.': 'høgtysk',
'i.eur.': 'indoeuropeisk',
'isl.': 'islandsk',
'it.': 'italiensk',
'jy.': 'jysk',
'kelt.': 'keltisk',
'lat.': 'latin',
'l.ty.': 'lågtysk',
'm.eng.': 'mellomengelsk',
'm.h.ty.': 'mellomhøgtysk',
'm.lat.': 'mellomalderlatin',
'm.no.': 'mellomnorsk',
'm.ty.': 'mellomtysk',
'nyda.': 'nydansk',
'nederl.': 'nederlandsk',
'finsk': 'finsk',
'no.': 'norsk',
'no.-da.': 'norsk-dansk',
'nord.': 'nordisk',
'bm.': 'bokmål',
'nordam.': 'nordamerikansk',
'norr.': 'norrønt',
'nyno.': 'nynorsk',
'port.': 'portugisisk',
'rom.': 'romansk',
'russ.': 'russisk',
'saks.': 'saksisk',
'sam.': 'samisk',
'senlat.': 'senlatin',
'shet.': 'shetlandsk',
'slav.': 'slavisk',
'sp.': 'spansk',
'sv.': 'svensk',
'sør-am.': 'søramerikansk',
'tsjekk.': 'tsjekkisk',
'ty.': 'tysk',
'algonkin': 'algonkin',
'tyrkisk': 'tyrkisk',
'malayisk': 'malayisk',
'sørkinesisk': 'sørkinesisk',
'marathi': 'marathi',
'hindi': 'hindi',
'sanskrit': 'sanskrit',
'polsk': 'polsk',
'persisk': 'persisk',
'ungarsk': 'ungarsk',
'semittisk': 'semittisk',
'egyptisk': 'egyptisk',
'bretonsk': 'bretonsk',
'singalesisk': 'singalesisk',
'g.fris.': 'gammalfrisisk',
'provençalsk': 'provençalsk',
'japansk': 'japansk',
'aleutisk': 'aleutisk',
'malayalam': 'malayalam',
'turkotatarisk': 'turkotatarisk',
'nepali': 'nepali',
'jakutisk': 'jakutisk',
'hawaiisk': 'hawaiisk',
'g.slav.': 'gammalslavisk',
'tamil': 'tamil',
'senegalesisk': 'senegalesisk',
'urdu': 'urdu',
'gælisk': 'gælisk',
'indianerspråk': 'indianerspråk',
'quechua': 'quechua',
'bengali': 'bengali',
'karibisk språk': 'karibisk språk',
'australsk språk': 'australsk språk',
'tupi-språket': 'tupi-språket',
'bantuspråk': 'bantuspråk',
'indisk språk': 'indisk språk',
'afrikansk språk': 'afrikansk språk',
'romani': 'romani',
'romanes': 'romanes',
'ags.': 'angelsaksisk',
'm.sv.': 'mellomsvensk',
'aram.': 'arameisk',
'nylat.': 'nylatin',
'navnet': 'navnet',
'varemerke': 'varemerke',
'guarani': 'guarani',
'khoikhoi': 'khoikhoi',
'kinesisk': 'kinesisk',
'eskimoisk': 'eskimoisk-aleutiske språk, inkludert grønlandsk',
'am.-sp-': 'amerikansk-spansk',
'afrikaans': 'afrikaans',
'gullah': 'gullah',
'wolof': 'wolof'
}
}
export default languages
module.exports = {
runtimeCompiler: true,
transpileDependencies: [
'vuetify'
],
devServer: {
https: false
},
pluginOptions: {
i18n: {
fallbackLocale: 'eng',
localeDir: 'locales',
enableInSFC: true,
includeLocales: false,
enableBridge: true
}
}
}