Přejít na obsah

Internacionalizace ​

Tiptapify podporuje více než 35 jazyků hned po instalaci. Překlady se spravují přes vue-i18n.

Nastavení výchozího jazyka ​

Vytvořte instanci vue-i18n a předejte ji při registraci pluginu:

typescript
// 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 })

Změna jazyka za běhu ​

Tiptapify používá vaši instanci vue-i18n — jazyk změníte přes useI18n():

vue
<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>

Dostupné jazyky ​

Aktuálně jsou podporovány tyto jazyky:

KódJazyk
enangličtina
ararabština
bgbulharština
chčínština
czčeština
deněmčina
elřečtina
esšpanělština
etestonština
fifinština
frfrancouzština
hehebrejština
hihindština
hrchorvatština
humaďarština
idindonéština
ititalština
jajaponština
kokorejština
lalotyština
ltlitevština
nlnizozemština
nonorština
plpolština
ptportugalština
pt-BRportugalština (brazilská)
rorumunština
ruruština
sešvédština
skslovenština
slslovinština
srsrbština
ththajština
trturečtina
ukukrajinština
vivietnamština

Překlady vytvořené pomocí AI

Většina překladů byla vytvořena pomocí AI a může obsahovat chyby. Pokud najdete nesprávný překlad nebo chcete přidat nový jazyk, otevřete issue nebo kontaktujte správce.

Přidání vlastních překladů ​

Tiptapify při předání instance pluginu automaticky sloučí své vestavěné jazykové zprávy do vaší instance vue-i18n. Překlady můžete rozšířit nebo přepsat před registrací pluginu:

typescript
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 })

Nebo je sloučit po vytvoření instance i18n:

typescript
const i18n = createI18n({
  legacy: false,
  locale: 'en',
})

i18n.global.mergeLocaleMessage('en', customTranslations)

app.use(i18n)
app.use(TiptapifyPlugin, { i18n })

Jazyky psané zprava doleva (RTL) ​

U jazyků psaných zprava doleva, například arabštiny, zajistěte, aby váš motiv Vuetify podporoval RTL:

typescript
const vuetify = createVuetify({
  locale: {
    rtl: true,
  },
})

Jazyk pro jednotlivou instanci ​

Tiptapify používá jazyk vue-i18n vaší aplikace globálně. Potřebujete-li jazyk pro jednotlivé instance, použijte scoped sloty vue-i18n nebo composition API v rozsahu dané instance:

vue
<script setup lang="ts">
import { useI18n } from 'vue-i18n'

const { t, locale } = useI18n({ useScope: 'local' })
</script>

<template>
  <Tiptapify :placeholder="t('editor.placeholder')" />
</template>

Vydáno pod licencí MIT.