Nemzetköziesítés
A Tiptapify dobozból kivéve 35+ nyelvet támogat. A fordításokat a vue-i18n kezeli.
Az alapértelmezett nyelv beállítása
Hozz létre egy vue-i18n példányt, és add át a plugin regisztrálásakor:
// 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 })A nyelv módosítása futásidőben
A Tiptapify a te vue-i18n példányodat használja — a nyelvet a useI18n() segítségével válthatod:
<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>Elérhető nyelvek
Jelenleg a következő nyelvek támogatottak:
| Kód | Nyelv |
|---|---|
en | angol |
ar | arab |
bg | bolgár |
ch | kínai |
cz | cseh |
de | német |
el | görög |
es | spanyol |
et | észt |
fi | finn |
fr | francia |
he | héber |
hi | hindi |
hr | horvát |
hu | magyar |
id | indonéz |
it | olasz |
ja | japán |
ko | koreai |
la | lett |
lt | litván |
nl | holland |
no | norvég |
pl | lengyel |
pt | portugál |
pt-BR | portugál (brazil) |
ro | román |
ru | orosz |
se | svéd |
sk | szlovák |
sl | szlovén |
sr | szerb |
th | thai |
tr | török |
uk | ukrán |
vi | vietnami |
MI által generált fordítások
A fordítások többsége MI által generált, ezért hibákat tartalmazhat. Ha helytelen fordítást találsz, vagy új nyelvet szeretnél hozzáadni, kérjük, nyiss egy issue-t, vagy fordulj a karbantartóhoz.
Egyéni fordítások hozzáadása
A Tiptapify automatikusan beolvasztja a beépített nyelvi üzeneteit a vue-i18n példányodba, amikor átadod a pluginnak. A fordításokat a plugin regisztrálása előtt bővítheted vagy felülírhatod:
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 })Vagy beolvaszthatod az i18n példány létrehozása után:
const i18n = createI18n({
legacy: false,
locale: 'en',
})
i18n.global.mergeLocaleMessage('en', customTranslations)
app.use(i18n)
app.use(TiptapifyPlugin, { i18n })Jobbról balra író (RTL) nyelvek
Az arabhoz hasonló RTL nyelvekhez győződj meg róla, hogy a Vuetify témád támogatja az RTL-t:
const vuetify = createVuetify({
locale: {
rtl: true,
},
})Példányonkénti nyelv
A Tiptapify az alkalmazásod vue-i18n nyelvét globálisan használja. Ha példányonkénti nyelvekre van szükséged, használd a vue-i18n hatókörös slotjait vagy a composition API-t a példány hatókörén belül:
<script setup lang="ts">
import { useI18n } from 'vue-i18n'
const { t, locale } = useI18n({ useScope: 'local' })
</script>
<template>
<Tiptapify :placeholder="t('editor.placeholder')" />
</template>