İçeriğe geç

Çok Dillilik ​

Tiptapify kutudan çıktığı gibi 35'ten fazla dili destekler. Çeviriler vue-i18n ile yönetilir.

Varsayılan Yerel Ayarı Belirleme ​

Bir vue-i18n örneği oluşturun ve eklentiyi kaydederken ona verin:

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

Yerel Ayarı Çalışma Zamanında Değiştirme ​

Tiptapify sizin vue-i18n örneğinizi kullanır — yerel ayarı useI18n() ile değiştirin:

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>

Kullanılabilir Yerel Ayarlar ​

Şu anda aşağıdaki diller desteklenmektedir:

CodeDil
enİngilizce
arArapça
bgBulgarca
chÇince
czÇekçe
deAlmanca
elYunanca
esİspanyolca
etEstonca
fiFince
frFransızca
heİbranice
hiHintçe
hrHırvatça
huMacarca
idEndonezce
itİtalyanca
jaJaponca
koKorece
laLetonca
ltLitvanca
nlFelemenkçe
noNorveççe
plLehçe
ptPortekizce
pt-BRPortekizce (Brezilya)
roRumence
ruRusça
seİsveççe
skSlovakça
slSlovence
srSırpça
thTayca
trTürkçe
ukUkraynaca
viVietnamca

Yapay Zekâ ile Üretilmiş Çeviriler

Çevirilerin çoğu yapay zekâ ile üretilmiştir ve hatalar içerebilir. Hatalı bir çeviri bulursanız veya yeni bir dil eklemek isterseniz lütfen bir issue açın ya da proje yöneticisiyle iletişime geçin.

Özel Çeviriler Ekleme ​

Tiptapify, vue-i18n örneğinizi eklentiye verdiğinizde yerleşik yerel ayar mesajlarını bu örneğe otomatik olarak birleştirir. Eklentiyi kaydetmeden önce çevirileri genişletebilir veya geçersiz kılabilirsiniz:

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

Veya i18n örneğini oluşturduktan sonra birleştirin:

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

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

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

RTL Dilleri ​

Arapça gibi RTL dilleri için Vuetify temanızın RTL'yi desteklediğinden emin olun:

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

Örnek Başına Yerel Ayar ​

Tiptapify, uygulamanızın vue-i18n yerel ayarını genel olarak kullanır. Örnek başına yerel ayar gerekiyorsa örneğin kapsamında vue-i18n'in kapsamlı slot'larını veya composition API'sini kullanın:

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 Lisansı altında yayımlanmıştır.