İsteğinizin çözümü Giriş Yöntemi'dir.
Açıkladığınız şey çoğu CJK dili kullanıcısı için tanıdık bir şeydir. Girdi yönteminin mevcut Linux sistemlerinde nasıl çalıştığını inceleyelim.
Giriş Yöntemi sistemi
İşte ortak bir giriş yöntemi sistemi için basit bir mimari:
NOT: Bu görüntü X Giriş Yöntemi Protokolü'nden anlık görüntü . Okların bazıları aşağıdaki tartışmayla ilgisizdir.
Tarihsel olarak, XIM (X Giriş Yöntemi protokolü) tek protokoldü. Aşırı karmaşıktır ve istenen bazı özelliklerden yoksundur. Bu yüzden çoğunlukla terk edilmiş olsa da, uyumluluk hala GTK, Qt.
Modern bir giriş yöntemi sistemi birkaç bölüm içerir:
İstemci tarafı kitaplık desteği
- tipik olarak araç takımları tarafından yüklenen bir modül olarak uygulanır (örneğin GTK için, bkz.
/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/
)
- Giriş yöntemi sunucusu
- X sunucusu
Bu parçalar birbirine nasıl uyuyor?
Kullanıcı bir anahtar yazar. X sunucusu donanım olayını evdev arayüzünden alır, bir XEvent oluşturur ve uygulamaya klavye odağı altında gönderir. Uygulama araç seti (GTK, Qt) giriş yöntemi modülü olayı keser ve bilgileri giriş yöntemi sunucusuna iletir. Giriş yöntemi sunucusu kullanıcının ne isteyebileceğini belirler ve bir kısmı IM modülüne geri gönderir.
Şimdi IM sunucusunun mimarisi hakkında konuşalım.
Bir IM sunucusu genellikle iki bölümden oluşur:
- Platforma özgü karmaşıklıkları işleyen ve IM motoru ve araç seti IM modüllerine hoş bir arayüz sağlayan bir IM çerçevesi. IM modülü, sunucu ve motor tarafından kullanılan IPC mekanizmalarını sağlar.
- Çeşitli IM motorları, kullanıcı tarafından yazılan tuşları istenen metne dönüştürme gerçek işini yapar. IM motorları, IM sunucusu tarafından yüklenen paylaşımlı kütüphaneler veya IM sunucusuyla iletişim kuran bağımsız süreçler olabilir.
- Yardımcı giriş yöntemi yapılandırma programları, IM sunucusunu ve motor davranışlarını özelleştirmek için kullanıcı dostu arayüz sağlar.
Sonuç olarak, bir IM'nin yaptığı, yazdıklarınızı farklı bir şeye dönüştürmek ve isteğe bağlı olarak tahminler sunmaktır.
Bir örnek
Biz kullanmak ibus-pinyin
bazı Çinli karakterleri yazmak için buraya.
汉语拼音 'nun romantizasyonu han yu pin yin
. Önce, dört Çince karakteri elde etmek için tüm bu harfleri yazmanız gerekir. Ancak birkaç kez sonra h y p y
, Çince karakteri elde etmek için ilk dört karakteri yazmanız yeterlidir .
Gelen ibus-pinyin
durumda, han yu pin yin
bir süreye kadar kısalmaktadır h y p y
.
Daha gelişmiş IM motorları, daha iyi tahmin sağlamak için istatistiksel öğrenme tekniklerini kullanır. Hiçbir şey, bir yazma desteği sağlamak için bir İngilizce giriş yöntemi motoru yazmanızı engelleyemez.
Bonus olarak, bazı düz eski X programları dışında tüm araç setlerinin giriş yöntemi desteği vardır. Bu oldukça evrensel bir çözüm.
Anders FU Kiær'a teşekkürler. Özellikler / Typing-Booster | Cevap Fedora Projesi Wiki olmalı