Como faço para o IBus não ignorar ~ / .XCompose?


14

Como o UIM não queria jogar bola depois de instalar o Ubuntu 12.04 do zero, tentei o IBus, pois esse é o quadro IME que vem com o Ubuntu por padrão.

No entanto, ibus-table-compone é uma dor de cabeça porque, para inserir um caractere, preciso pressionar a combinação de teclas para acionar o IBus primeiro, inserir a respectiva sequência de composição e pressionar a combinação de teclas IBus novamente para desativá-lo. Em vez disso, eu gostaria de manter minha funcionalidade de composição de teclas conforme fornecida pelo XIM, pois isso requer menos pressionamentos de tecla.

O problema é que, quando o método de entrada padrão é definido como IBus e o IBus é desativado para que (AIUI, desde que eu o iniciei com o ibus-daemon --xim ) seja ignorado em favor do XIM, as configurações em ~ / .XCompose parece ter sido substituído pela própria versão do IBus, portanto, por exemplo, Compose ca não fornece ą (a-ogonek) como eu defini no arquivo .XCompose no meu diretório pessoal, mas ǎ (a-hacek), como definido por outros ajustes.

Eu me acostumei bastante com minha própria mnemnônica, então existe alguma maneira de fazer meu sistema usar meu próprio arquivo ~ / .XCompose com o método de entrada padrão ainda definido como IBus, para que o IBus ainda funcione, por exemplo, no OpenOffice e outros aplicativos que não permitem que você escolha o método de entrada com um menu de contexto?

Nota: Esta não é uma duplicata da pergunta Como posso voltar a compor no ibus?


Esta questão parece estar abandonada e sem resposta. Se você o resolveu, poste uma resposta explicando como foi resolvido (responder suas próprias perguntas não é apenas permitido, mas incentivado quando não houver outra resposta que faça o trabalho ). Se a pergunta não se aplicar mais, você poderá excluí-la / fechá-la voluntariamente.
Eric Carvalho

Respostas:


6

Conforme afirmado por @von, você NÃO pode usar o seu .XComposecom o IBUS por enquanto.

Você pode usar uimcomo método de entrada, que suporta Unicode, tanto os módulos GTK + como Qt com XIMsuporte herdado .

Uma boa maneira de lidar com .XComposee manter o Compose global existente é:

  1. Instale o uim:

    sudo apt-get install uim

  2. Torne o método de entrada padrão:

    im-config -n uim

  3. Edite seu .XComposee adicione a localidade atual do teclado (no meu caso en_US) como primeira linha :

    include "/usr/share/X11/locale/en_US.UTF-8/Compose"

  4. Feito! Reinicie os programas que você deseja iniciar para obter seu .XComposearquivo.

Problemas conhecidos

O Ubuntu Unity Dash nunca produz um cedilla.

Outras Distros

Eu brinquei um pouco com o .XComposeInput Methods nas distribuições modernas hoje em dia, enquanto tentava fazer o Linux manter o mesmo comportamento do teclado do Windows (TM) para idiomas latinos (saída em çvez de ć, sem consoantes acentuadas, etc.).

Criei um repositório com estas instruções (para o Ubuntu e outras distribuições também): https://github.com/raelgc/win_us_intl


4
O que exatamente "você NÃO PODE usar seu .XCompose com IBUS por enquanto" significa? O que mudou? Essa mudança foi no próprio Ubuntu ou em algo que o Ubuntu usa?
andrybak

@AndreyRybak IBUS é o mais novo, em seguida, XIMe uime não suporta .XComposearquivos ainda (e eu não tenho certeza se isso vai mudar, como um ano mais tarde ainda o mesmo status). Não, não é específico do Ubuntu.
Rael Gugelmin Cunha 15/03

Parece estar funcionando para mim em 16.04 (com o Gnome).
Pausado até novo aviso.

@DennisWilliamson Você quer dizer, IBUS e .XCompose? Basta cruzar os dedos para que isso seja corrigido 4 anos desde a minha resposta acima.
Rael Gugelmin Cunha

1
Sim. Eu tive um pequeno ~/.Xcomposecom entradas de trabalho. Eu adicionei ibus restartvárias entradas novas, elas não funcionaram, então eu fiz e todas as novas funcionaram.
Pausado até novo aviso.

1

O problema é que, quando o método de entrada padrão é definido como IBus e o IBus é desativado para que (AIUI, desde que eu o iniciei com o ibus-daemon --xim) seja ignorado em favor do XIM, as configurações em ~ / .XCompose parece ter sido substituído pela própria versão do IBus, portanto, por exemplo, Compose ca não fornece ą (a-ogonek) como eu defini no arquivo .XCompose no meu diretório pessoal, mas ǎ (a-hacek), como definido por outros ajustes.

Parece que não está definido por outras configurações, no sentido de algum arquivo de configuração que você pode editar. Parece que está compilado, codificado no arquivo gtkimcontextsimpleseqs.h. Parece ainda que não é fácil personalizar a gtk_compose_seqs_compactmatriz nesse arquivo e adicionar suas próprias seqüências de teclas de composição. A tabela é otimizada para espaço, não para edição fácil. Portanto, a estratégia "simplesmente mude a fonte e recompile" pode ser mais difícil do que eu pensava.

Eu me acostumei bastante à minha própria mnemnônica, então existe alguma maneira de fazer meu sistema usar meu próprio arquivo ~ / .XCompose com o método de entrada padrão ainda sendo definido como IBus, para que o IBus ainda funcione, por exemplo, no OpenOffice e outros aplicativos que não permitem que você escolha o método de entrada com um menu de contexto?

Existe um relatório de bug em https://bugzilla.gnome.org/show_bug.cgi?id=155010 que possui um patch que (eles dizem) tornaria possível personalizar a tabela de composição. Ele ainda não usaria o arquivo ~ / .XCompose, e a sintaxe seria diferente, mas é algo. Mas notei que o bug em questão ainda está aberto, então acho que isso ainda não foi lançado nos lançamentos oficiais.


1

Como Dennis Williamson disse que funcionou em 16.04 em um comentário acima, testei nesta nova instalação 18.04 com uma .XComposecópia curta da instalação anterior 16.04.

# Import default rules from the system Compose file
include "%L"

# Custom definitions
<Multi_key> <R> <R> <R>             : "ʁ"   U0281 # LATIN LETTER SMALL CAPITAL INVERTED R

Então eu corri ibus restartem um terminal e posso digitar ʁ.


0
  1. Definido globalmente (ou seja, para o Ubuntu em /etc/environment) as QT_IM_MODULE, GTK_IM_MODULEvariáveis (o último desnecessários para o GNOME) para ibus, e XMODIFIERSpara @im=ibus.

  2.α Execute setxkbmapcom -optionpara escolher a tecla de composição. Por exemplo, para usar a tecla do logotipo do direito: setxkbmap -option compose:rwin. Isso seria substituído na reinicialização.

  2.β Para manter a configuração na reinicialização, crie /etc/X11/xorg.conf.d/00-keyboard.confo seguinte conteúdo:

Section "InputClass"
        Identifier "system-keyboard"
        MatchIsKeyboard "on"
        Option "XkbOptions"    "compose:rwin"
EndSection

Testado e funciona para o X11 e (pelo menos a setxkbmapmaneira) Wayland.

Obrigado por uma dica vai para fujiwarat , atualizado de acordo com esta discussão .


1
Mudar a configuração de todo o sistema é uma loucura. Basta colocar 2alpha e essas variáveis ​​de ambiente no seu .xprofile ou .xinitrc, qualquer que seja o que você estiver usando.
enigmaticPhysicist

@enigmaticPhysicist err… lol, o que ?? Faça-me não vê-lo - você primeiro fez a versão reduzida da minha resposta, depois diminuiu a minha para uma adição que a sua resposta não possui (como você manterá a configuração no modo de reinicialização?) E qual é opcional (como você pode ver por enumeração e explicação) .
Hi-Angel

Alguém não pode receber críticas ... Ei, você tem cabelo laranja, por acaso?
enigmaticPhysicist

@enigmaticPhysicist lol você não fez uma crítica. Você copiou minha resposta e depois desclassificou a minha para estar no topo. Poderia até funcionar se você não deixasse o comentário, então notei e sinalizei sua resposta. Quanto ao conteúdo do seu comentário - eu já respondi. E desculpe, eu não entendi - sobre o que é a piada de cabelos alaranjados?
Hi-Angel
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.