Eu quero usar o IBus com libpinyin na instalação do NixOS com o KDE.
O IBus está instalado e funciona bem, com a seguinte configuração em /etc/nixos/configuration.nix
# use IBus for input
i18n.inputMethod = {
enabled = "ibus";
ibus.engines = with pkgs.ibus-engines; [libpinyin];
};
Eu também quero ser capaz de compor alguns caracteres específicos quando estou usando libpinyin no modo 'Inglês' ou quando estou usando o mecanismo de entrada em inglês. Seguindo vários guias, tentei a seguinte configuração:
~/.xsessionrc
:
xmodmap -e "keysym ISO_Level3_Shift = Multi_key"
~/.XCompose
:
include "%L"
# Compose keys for pinyin with tone marks
<Multi_key> <a> <a> : "ā"
<Multi_key> <a> <e> : "ē"
<Multi_key> <a> <i> : "ī"
<Multi_key> <a> <o> : "ō"
<Multi_key> <a> <u> : "ū"
<Multi_key> <s> <a> : "á"
<Multi_key> <s> <e> : "é"
<Multi_key> <s> <i> : "í"
<Multi_key> <s> <o> : "ó"
<Multi_key> <s> <u> : "ú"
<Multi_key> <d> <a> : "ǎ"
<Multi_key> <d> <e> : "ě"
<Multi_key> <d> <i> : "ǐ"
<Multi_key> <d> <o> : "ǒ"
<Multi_key> <d> <u> : "ǔ"
<Multi_key> <f> <a> : "à"
<Multi_key> <f> <e> : "è"
<Multi_key> <f> <i> : "ì"
<Multi_key> <f> <o> : "ò"
<Multi_key> <f> <u> : "ù"
Com essa configuração, nenhum caractere de composição funciona. Se eu executar bash ~/.xsessionrc
, então, eu posso ver que xev
informa os caracteres corretos como estão;
Se eu digitar <alt_gr> <s> <a>
, vários eventos aparecerão no log, um dos quais inclui essa linha:
XmbLookupString gives 3 bytes: (61 cc 81) "á"
Portanto, o arquivo xsessionrc não está sendo executado no momento certo (no login, suponho), mas, além disso, nenhum outro aplicativo realmente permite que eu use as combinações de composição. O kwrite
e o chromium
ignoram a configuração do XCompose, mesmo depois de usar a configuração sugerida abaixo no meu ~/.profile
;
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
(Esta configuração está sendo definida, pois env
mostra essas variáveis como sendo definidas.)
Para ficar claro, é apenas o xev que mostra que a configuração pode ser um pouco correta. Nenhum aplicativo real que realmente precise de entrada me permitirá compor esses caracteres. Como posso obter o comportamento de composição que quero?