Preskoči na sadržaj

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:

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

Promjena jezika tijekom izvođenja ​

Tiptapify koristi vašu instancu vue-i18n — jezik promijenite putem 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>

Dostupni jezici ​

Trenutno su podržani sljedeći jezici:

KôdJezik
enEngleski
arArapski
bgBugarski
chKineski
czČeški
deNjemački
elGrčki
esŠpanjolski
etEstonski
fiFinski
frFrancuski
heHebrejski
hiHindi
hrHrvatski
huMađarski
idIndonezijski
itTalijanski
jaJapanski
koKorejski
laLatvijski
ltLitavski
nlNizozemski
noNorveški
plPoljski
ptPortugalski
pt-BRPortugalski (brazilski)
roRumunjski
ruRuski
seŠvedski
skSlovački
slSlovenski
srSrpski
thTajlandski
trTurski
ukUkrajinski
viVijetnamski

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:

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

Ili ih spojite nakon izrade i18n instance:

typescript
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:

typescript
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:

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

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

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

Objavljeno pod MIT licencom.