Internasjonalisering
Tiptapify støtter 35+ språk rett ut av boksen. Oversettelsene håndteres via vue-i18n.
Angi standardspråk
Opprett en vue-i18n-instans og send den inn når du registrerer pluginen:
// main.ts
import { createI18n } from 'vue-i18n'
import TiptapifyPlugin from 'tiptapify'
import 'tiptapify/style.css'
const i18n = createI18n({
legacy: false,
locale: 'en',
})
app.use(i18n)
app.use(TiptapifyPlugin, { i18n })Bytte språk under kjøring
Tiptapify bruker din vue-i18n-instans — bytt språk via useI18n():
<script setup lang="ts">
import { useI18n } from 'vue-i18n'
const { locale } = useI18n()
const languages = [
{ code: 'en', label: 'English' },
{ code: 'de', label: 'Deutsch' },
{ code: 'fr', label: 'Français' },
{ code: 'es', label: 'Español' },
{ code: 'ru', label: 'Русский' },
]
</script>
<template>
<div>
<v-select
v-model="locale"
:items="languages"
item-title="label"
item-value="code"
label="Language"
/>
<Tiptapify placeholder="Start writing..." />
</div>
</template>Tilgjengelige språk
Følgende språk støttes for øyeblikket:
| Kode | Språk |
|---|---|
en | Engelsk |
ar | Arabisk |
bg | Bulgarsk |
ch | Kinesisk |
cz | Tsjekkisk |
de | Tysk |
el | Gresk |
es | Spansk |
et | Estisk |
fi | Finsk |
fr | Fransk |
he | Hebraisk |
hi | Hindi |
hr | Kroatisk |
hu | Ungarsk |
id | Indonesisk |
it | Italiensk |
ja | Japansk |
ko | Koreansk |
la | Latvisk |
lt | Litauisk |
nl | Nederlandsk |
no | Norsk |
pl | Polsk |
pt | Portugisisk |
pt-BR | Portugisisk (brasiliansk) |
ro | Rumensk |
ru | Russisk |
se | Svensk |
sk | Slovakisk |
sl | Slovensk |
sr | Serbisk |
th | Thai |
tr | Tyrkisk |
uk | Ukrainsk |
vi | Vietnamesisk |
AI-genererte oversettelser
De fleste oversettelsene er AI-genererte og kan inneholde feil. Hvis du finner en feil oversettelse eller vil legge til et nytt språk, kan du opprette en sak eller kontakte vedlikeholderen.
Legge til egne oversettelser
Tiptapify slår automatisk sammen de innebygde språkmeldingene sine med din vue-i18n-instans når du sender den til pluginen. Du kan utvide eller overstyre oversettelser før du registrerer pluginen:
import { createI18n } from 'vue-i18n'
import TiptapifyPlugin from 'tiptapify'
import 'tiptapify/style.css'
const i18n = createI18n({
legacy: false,
locale: 'en',
messages: {
// Custom translations take precedence over Tiptapify's built-in ones
en: {
toolbar: {
bold: 'Make bold',
italic: 'Make italic',
},
},
},
})
app.use(i18n)
app.use(TiptapifyPlugin, { i18n })Eller slå sammen etter at i18n-instansen er opprettet:
const i18n = createI18n({
legacy: false,
locale: 'en',
})
i18n.global.mergeLocaleMessage('en', customTranslations)
app.use(i18n)
app.use(TiptapifyPlugin, { i18n })RTL-språk
For RTL-språk som arabisk må du sørge for at Vuetify-temaet ditt støtter RTL:
const vuetify = createVuetify({
locale: {
rtl: true,
},
})Språk per instans
Tiptapify bruker vue-i18n-språket i appen din globalt. Hvis du trenger språk per instans, bruker du vue-i18n sine scopede slots eller composition API innenfor instansens scope:
<script setup lang="ts">
import { useI18n } from 'vue-i18n'
const { t, locale } = useI18n({ useScope: 'local' })
</script>
<template>
<Tiptapify :placeholder="t('editor.placeholder')" />
</template>