Açık kaynak · Kürtçe metin girişi · v0.1.1 GitHub Deneme alanı

kürtçe klavye

Web'in her yerinde Kürtçe yazın — Soranî ve Kurmancî, tek widget, temelden doğru birleşik Unicode.

2 yazı sistemi 3 düzen 0 çalışma zamanı bağımlılığı 55 doğrulanmış kod noktası

00 · Canlı demo

Ekran görüntüsü değil — widget'ın kendisi

Aşağıdaki çerçeveler görsel değildir. Her iki yazı sistemi de gerçek klavyedir; CSS özel özellikleriyle bu sayfaya göre biçimlendirilmiştir. Sekmelerle geçiş yapın, tuşlara tıklayın; ⇧ ikinci katmanı gösterir, Kurmancî ⇪ Caps Lock da ekler.

01 · Özellikler

Bir Kürtçe girişin ihtiyaç duyduğu her şey

  1. Birleşik UnicodeTemelden doğru.

    Widget yalnızca KRG ve UCD ile doğrulanmış kod noktası envanterini üretebilir: her zaman ک, asla ك; her zaman ی, asla ي; ve ە olduğu ünlü olarak. Parçalanmış metin geçmişte kalır.

  2. İki yazı sistemi, üç düzenRTL ve LTR, tek motor.

    Unicode CLDR verisinden üretilmiş bir Soranî düzeni ve topluluğun iki Kurmancî varyantı. setLayout() ile canlı geçiş yapın — yön, katmanlar ve Caps Lock kendiliğinden gelir.

  3. Mobil için yapıldıWidget'ın kendisi klavyedir.

    Alan başına inputmode="none" yerel klavyeyi gizli tutar; sabitlenmiş veya yüzen panel yazma işini yapar. 44px dokunma hedefleri bir capability query'den gelir — asla user-agent koklama yok.

  4. Varsayılan olarak erişilebilirRoving tabindex, sesli adlar.

    WAI-ARIA APG klavye gezinmesi, görünür odak ve İngilizce ya da Kürtçe yardımcı teknoloji etiketleri — çalışma zamanında değiştirilebilir.

  5. Eski metin normalleştiriciOn yılların ك ve ي temizliği.

    normalizeLegacy() eski parçalanmış Soranî'yi birleşik kod noktalarına dönüştürür; klavyenin kullandığı aynı veri dosyasıyla çalışır. DOM'suz olduğundan Node ve CLI'larda da çalışır.

02 · İlkeler

Nasıl yapıldı

  1. 1 İcat değil, standartKod noktaları KRG birleşik klavye standardından, Soranî düzeni Unicode CLDR'den gelir. Standardın olduğu yerde hiçbir şey elle uydurulmaz.
  2. 2 Kod değil, veriDüzenler bir şemayla doğrulanan JSON dosyalarıdır. Motor asla bir düzenin adına göre dallanmaz — varyant eklemek veri eklemektir, kod değil.
  3. 3 Platform yeterEkleme için setRangeText, mobil için inputmode, tema için custom property. Sıfır çalışma zamanı bağımlılığı, ESM ve CJS, tree-shakable düzenler.
  4. 4 Varsayılmış değil, doğrulanmışHer kod noktası birincil kaynaklara karşı karakter karakter incelendi; yayımlanan paket, yayından önce çalıştırılabilir bir doğrulama speciyle kanıtlanır.

03 · Edinin

Ücretsiz, bir klavyenin olması gerektiği gibi

Ücretsiz

MIT lisanslı · katman yok, telemetri yok, kilitlenme yok

GitHub'da görüntüle

npm install kurdish-keyboard

npm'de 0.1.1 sürümü — ya da GitHub deposundan kurun.

04 · Sorular

Siz sormadan yanıtlandı

Hangi tarayıcılar destekleniyor?
Son üç yılın evergreen tarayıcıları ve Safari 15+. Widget'ın dayandığı her platform API'si «Baseline widely available» düzeyindedir; bu yüzden hiçbir polyfill gönderilmez.
React, Vue veya Svelte ile çalışır mı?
Evet. Widget her eklemeden sonra kabarcıklanan bir input olayı yayınlar; framework bağlamaları değişiklikleri wrapper ya da adapter olmadan görür.
Her alana yazabilir mi?
Aynı sayfadaki her input veya textarea. Cross-origin iframe'ler tarayıcı güvenlik tasarımı gereği kapsam dışıdır; zengin metin editörleri yol haritasındadır.
Neden Arapça kef yazmıyor?
Kürtçe metinde ك, arama ve sıralamayı sessizce bozan bir benzerdir — widget her zaman ک üretir. Gerçek Arapça harfler, Arapça adları yazmak için Soranî shift katmanında erişilebilir kalır.
Kendi düzenimi yapabilir miyim?
Düzenler, yayımlanmış bir şemayla doğrulanan düz JSON'dur. Motor, uyumlu her düzeni olduğu gibi çizer — topluluk varyantları eklemedir, çatal değil.

Başka sorunuz mu var? Entegrasyon rehberi (İngilizce) tüm API'yi, temayı ve platform sınırlarını kapsar.