Chaves inoperantes no emacs com ibus

13

Acabei de fazer o upgrade para 13.10 e notei que as chaves inativas não estão mais funcionando no emacs (um pressionamento de tecla para 'leva o emacs a exibir <dead-acute> is undefined em vez de esperar pela próxima chave. Além disso, o uso dos principais comandos de composição para <Multi_key> is undefined e é impossível usar atalhos de teclado como <M-^> . Outros aplicativos funcionam bem, tanto quanto eu posso dizer.

Uma breve pesquisa na internet sugeriu para (require 'iso-transl) to .emacs . Isso resolve o primeiro problema, mas não os outros.

Outra solução possível vista na web é lançar o emacs com uma variável XMODIFIERS vazia, como XMODIFIERS='' emacs , em vez de XMODIFIERS= @im=ibus , que parece ser o padrão em 13.10. Então tudo funciona bem, mas parece um kludge. Existe uma maneira de fazer o emacs funcionar com o ibus neste assunto?

Atualização: Eu observo o mesmo comportamento em 14.04.

Atualização: conteúdo de .dmrc como solicitado nos comentários:

[Desktop]
Session=xubuntu
Language=fr_FR
Layout=us       intl
Langlist=fr_FR:en
LCMess=fr_FR.UTF-8
    
por Virgile 23.10.2013 / 12:09

1 resposta

2

Aqui estão as coisas que você pode experimentar.

Edite o arquivo ~ / .dmrc e certifique-se de definir essas linhas:

Language=en_US.utf8
Langlist=en_US:en
LCMess=en_US.UTF-8

Edite o arquivo ~/.emacs e adicione essas linhas a ele em vez de (require 'iso-transl) :

(prefer-coding-system 'utf-8)
(set-default-coding-systems 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(setq default-input-method "latin-1-prefix")
(defun my-set-default-input-method ()
  (set-input-method 'latin-1-prefix))
(add-hook 'text-mode-hook 'my-set-default-input-method)

Você terá que adicionar linhas semelhantes à última se você usar chaves inativas com outros modos no emacs (por exemplo, latex-mode , tex-mode , html-mode ...).

Efetue logout e faça login novamente.

Mesmo assim, se acontecer de você descobrir que chaves não funcionam dentro do emacs, tente digitar C-\ e ver se elas funcionam.

Atualização:

Se isso não funcionar, a única coisa que me vem à mente é que você define dois layouts de teclado nas configurações do sistema

  • Inglês Chaves internacionais internacionais dos EUA (aquela que você tem)
  • Inglês dos EUA

e adicione um seletor de layout de teclado da maneira explicada aqui:

Como mudar a combinação de teclado de idiomas?

Quando você trabalha com o emacs, escolha o layout "English US". Se você adicionou ao seu arquivo .emacs as linhas que mencionei acima, isso forçará o seu teclado a se comportar como um "teclado de teclas mortas" dentro do emacs. Eu sei que isso pode ser chato, mas é a única solução para o seu problema que vem à minha mente.

    
por Charo 02.07.2014 / 22:11