Internacionalizacija
Tiptapify podržava 35+ jezika odmah po instalaciji. Prijevodima se upravlja putem vue-i18n.
Postavljanje zadanog jezika
Izradite instancu vue-i18n i proslijedite je pri registraciji dodatka:
// 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 })Promjena jezika tijekom izvođenja
Tiptapify koristi vašu instancu vue-i18n — jezik promijenite putem 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>Dostupni jezici
Trenutno su podržani sljedeći jezici:
| Kôd | Jezik |
|---|---|
en | Engleski |
ar | Arapski |
bg | Bugarski |
ch | Kineski |
cz | Češki |
de | Njemački |
el | Grčki |
es | Španjolski |
et | Estonski |
fi | Finski |
fr | Francuski |
he | Hebrejski |
hi | Hindi |
hr | Hrvatski |
hu | Mađarski |
id | Indonezijski |
it | Talijanski |
ja | Japanski |
ko | Korejski |
la | Latvijski |
lt | Litavski |
nl | Nizozemski |
no | Norveški |
pl | Poljski |
pt | Portugalski |
pt-BR | Portugalski (brazilski) |
ro | Rumunjski |
ru | Ruski |
se | Švedski |
sk | Slovački |
sl | Slovenski |
sr | Srpski |
th | Tajlandski |
tr | Turski |
uk | Ukrajinski |
vi | Vijetnamski |
Prijevodi generirani umjetnom inteligencijom
Većina prijevoda generirana je umjetnom inteligencijom i može sadržavati pogreške. Ako pronađete netočan prijevod ili želite dodati novi jezik, otvorite issue ili se obratite održavatelju.
Dodavanje vlastitih prijevoda
Tiptapify automatski spaja svoje ugrađene jezične poruke u vašu instancu vue-i18n kad je proslijedite dodatku. Prijevode možete proširiti ili nadjačati prije registracije dodatka:
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 })Ili ih spojite nakon izrade i18n instance:
const i18n = createI18n({
legacy: false,
locale: 'en',
})
i18n.global.mergeLocaleMessage('en', customTranslations)
app.use(i18n)
app.use(TiptapifyPlugin, { i18n })RTL jezici
Za RTL jezike poput arapskog provjerite podržava li vaša Vuetify tema RTL:
const vuetify = createVuetify({
locale: {
rtl: true,
},
})Jezik po instanci
Tiptapify globalno koristi vue-i18n jezik vaše aplikacije. Ako trebate jezike po instanci, koristite scoped slotove ili composition API iz vue-i18n unutar opsega instance:
<script setup lang="ts">
import { useI18n } from 'vue-i18n'
const { t, locale } = useI18n({ useScope: 'local' })
</script>
<template>
<Tiptapify :placeholder="t('editor.placeholder')" />
</template>