Tüm X11 giriş yığını bir karışıklıktır. Her şeyden önce, XKB klavye düzeniniz tarafından tanımlanan latin karakterleri veya çok karakterli oluşturma dizilerini yazıyorsanız, herhangi bir özel giriş yöntemi çerçevesine ihtiyacınız yoktur. Kesin olarak, ölü tuşlar gibi çok tuşlu diziler çok basit bir giriş yöntemi gerektirir. Ancak libx11 / XKB tarafından sağlanır ve herhangi bir ek IM çerçevesi olmadan çalışırlar. Bu nedenle, Çince veya Japonca gibi diller yazmanız gerekmiyorsa, ibus, uim, fcitx veya herhangi bir giriş yöntemini kaldırmak mükemmeldir.
Daha önce de söylediğin gibi, Gnome ibus'u varsayılan giriş yöntemi yaptı, herkesin memnun olmadığı bir karar. Birkaç nedenden ötürü ibc yerine fcitx'i (çoğu KDE dağıtımı için varsayılan gibi görünüyor) tercih eden birçok insan vardır: uygun dil desteği (çoğunlukla Japoncaya karşı Basitleştirilmiş Çince'ye karşı geleneksel Çince) veya performans sorunları. Özel bir IM çerçevesine ihtiyaç duyan herhangi bir doğu dili konuşmadığımdan, bu tartışmaya gerçekten hiçbir şey ekleyemiyorum. Ancak fcitx vs ibus hakkında daha fazla bilgi edinmek istiyorsanız, bu biraz tarihli (2012), ancak muhtemelen hala doğru LWN makalesini okumak isteyebilirsiniz .
Bununla birlikte, ibus'un Gnome için varsayılan IM olması onu zorunlu kılmaz. Beğendiğiniz veya hiç girmediğiniz diğer giriş yöntemlerini kullanabilirsiniz. IM yapılandırması ortam değişkenleri aracılığıyla yapılır. Ancak, yalnızca GTK + uygulamalarını (şüphelendiğim) kullandığınız durumlar dışında, sadece bundan daha fazlasını ayarlamanız gerekir GTK_IM_MODULE
. Bir giriş yöntemi ayarlamanın uygun yolu:
export GTK_IM_MODULE="fcitx"
export QT_IM_MODULE="fcitx"
export XMODIFIERS="@im=fcitx"
fcitx durumunda veya
export GTK_IM_MODULE="ibus"
export QT_IM_MODULE="ibus"
export XMODIFIERS="@im=ibus"
ibus durumunda. uim aynı şekilde çalışır. Herhangi bir giriş yöntemini açıkça devre dışı bırakmak istiyorsanız, şu ayarları kullanın:
export GTK_IM_MODULE="gtk-im-context-simple"
export QT_IM_MODULE="simple"
Boş bir dize de çalışır.
Bu değişkenleri sistem çapında /etc/profile
(veya /etc/profile.d
sırasıyla içinde özel bir dosya ) veya yerel ayarlarınız içinde ayarlayabilirsiniz ~/.xprofile
. Bunu ayarlama ~/.bashrc
veya ~/.profile
böyle GDM, SDDM, KDM veya LightDM olarak bir grafik giriş yöneticisi kullanarak sisteminize giriş yaparken hatları çalıştırılacaktır sağlamak olmayacaktır. X oturumunuza XDM, Slim veya kullanarak başlıyorsanız, startx
bu satırları girmeniz gerekir ~/.xinitrc
.
İbus dışında bir giriş yöntemi yapılandırdıysanız, daha sonra Gnome ayarlarına gidin ve ibus ile ilgili ayarların, özellikle de klavye kısayollarının devre dışı olduğundan emin olun. Alternatif olarak, Gnome'a aşağıdakileri kullanarak klavye ayarlarınıza dokunmamasını söyleyin:
gsettings set org.gnome.settings-daemon.plugins.keyboard active false
veya ibus'u tamamen kaldırın.
Peki ya XIM? XIM, hem ibus hem de fcitx'in yalnızca eski destek nedenleriyle uyguladığı oldukça eski bir giriş yöntemi protokolüdür. Bugünlerde XIM'i bu ikisinden herhangi birinde kullanmak istemenizin gerçek bir nedeni yoktur. Eğer sette isteyeyim tek nedeni GTK_IM_MODULE="xim"
olan GTK en kodlanmış ComposeKey ayarlarını geçersiz .
Diğer sorunuza cevap vermek için: Ortam değişkenlerine bakmak veya sisteminizde hangi IM'lerin kurulu olduğunu bilmek dışında, şu anda hangi giriş yönteminin aktif olduğunu tespit etmenin bir yolu olduğunu düşünmüyorum. Eğer GTK_IM_MODULE
ayarlı değil, GTK seçer yerleşik bir IM yapılandırmaları temelinde /etc/gtk-2.0/gtk.immodules
. GTK 3.0 /usr/lib/gtk-3.0/3.0.0/immodules.cache
tarafından üretilen görünüm gtk-query-immodules-3.0
.
Nedeni GTK_IM_MODULE
olarak ayarlanır xim
muhtemelen bazı başıboş değişken tanımı yerdedir /etc/profile
, /etc/profile.d/*
ya da yerel veya global kabuk RC dosyaları başka. Bunu yapmanız gerektiğini düşünüyorsanız, bu değişkenin ayarını kaldırmak veya geçersiz kılmaktan çekinmeyin.
Ancak, bu Gnome hata raporu yorumuna göre, üzerinden yapılandırılan gsettings
değerin GTK_IM_MODULE
DBus tarafından etkinleştirilen uygulamalar için ayarlanan değeri geçersiz kıldığını varsayıyorum . Yani en azından Gnome uygulamalarınız şu gtk-im-context-simple
anda muhtemelen standart davranış anlamına geliyor (yani ibus veya başka bir özel IM yok).
gsettings
ben sadece xD (hatta --version segfaults !!) bir şey yapmaya çalıştığımda bana segfault