Към съдържанието

Интернационализация ​

Tiptapify поддържа над 35 езика от кутията. Преводите се управляват чрез vue-i18n.

Задаване на локал по подразбиране ​

Създайте екземпляр на vue-i18n и го подайте при регистрирането на плъгина:

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

Смяна на локала по време на изпълнение ​

Tiptapify ползва вашия екземпляр на vue-i18n — сменете локала чрез 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>

Налични локали ​

В момента се поддържат следните езици:

КодЕзик
enАнглийски
arАрабски
bgБългарски
chКитайски
czЧешки
deНемски
elГръцки
esИспански
etЕстонски
fiФински
frФренски
heИврит
hiХинди
hrХърватски
huУнгарски
idИндонезийски
itИталиански
jaЯпонски
koКорейски
laЛатвийски
ltЛитовски
nlНидерландски
noНорвежки
plПолски
ptПортугалски
pt-BRПортугалски (бразилски)
roРумънски
ruРуски
seШведски
skСловашки
slСловенски
srСръбски
thТайландски
trТурски
ukУкраински
viВиетнамски

Преводи, генерирани с AI

Повечето преводи са генерирани с AI и може да съдържат грешки. Ако откриете неточен превод или искате да добавите нов език, моля отворете issue или се свържете с поддържащия проекта.

Добавяне на собствени преводи ​

Tiptapify автоматично слива вградените си съобщения за локалите във вашия екземпляр на vue-i18n, когато го подадете на плъгина. Можете да разширите или преопределите преводите преди регистрирането на плъгина:

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

Или да ги слеете, след като екземплярът на i18n е създаден:

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

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

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

RTL езици ​

За RTL езици като арабския се уверете, че темата на Vuetify поддържа RTL:

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

Локал на ниво екземпляр ​

Tiptapify използва глобално локала на vue-i18n на вашето приложение. Ако ви трябват локали на ниво екземпляр, ползвайте scoped слотовете на vue-i18n или composition API в обхвата на екземпляра:

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

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

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

Разпространява се под лиценза MIT.