Я только что обновился до 13.10 и заметил, что мертвые ключи больше не работают в emacs (нажатие клавиши приводит к тому, что emacs отображает <dead-acute> is undefined
вместо ожидания следующей клавиши. Кроме того, использование клавиши compose приводит к до <Multi_key> is undefined
, и невозможно использовать сочетания клавиш, такие как <M-^>
. Насколько я могу судить, другие приложения работают нормально.
Краткий поиск в Интернете предложил (require 'iso-transl)
- .emacs
. Это решает первую проблему, но не другие.
Еще один возможный обходной путь, который можно увидеть в Интернете, - это запуск emacs с пустой переменной XMODIFIERS
, как XMODIFIERS='' emacs
, вместо XMODIFIERS= @im=ibus
, который, кажется, по умолчанию в 13.10. Тогда все работает нормально, но выглядит как клудж. Есть ли способ заставить emacs работать с ibus на эту тему?
Обновление: Я наблюдаю то же самое поведение в 14.04.
Обновление: содержание .dmrc
, как просили в комментариях:
[Desktop]
Session=xubuntu
Language=fr_FR
Layout=us intl
Langlist=fr_FR:en
LCMess=fr_FR.UTF-8
Вот вещи, которые можно попробовать.
Отредактируйте файл ~/.dmrc и удостоверьтесь, что установили эти строки на нем:
Language=en_US.utf8 Langlist=en_US:en LCMess=en_US.UTF-8
Отредактируйте файл ~/.emacs
и добавьте эти строки к нему вместо (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)
Необходимо будет добавить подобные строки к последней при использовании мертвых клавиш с другими режимами в emacs (например, latex-mode
, tex-mode
, html-mode
...).
Выйдите из системы и затем войдите в систему снова.
Несмотря на это, если это когда-нибудь происходит с Вами, что мертвые клавиши не работают в emacs, попытайтесь ввести C-\
и посмотрите, работают ли они.
Обновление:
Если это не работает, единственная вещь, которая прибывает по моему мнению, состоит в том, что Вы определяете две раскладки клавиатуры в своих параметрах настройки системы
и добавьте селектор раскладки клавиатуры в пути, объясненном здесь:
Как переключить комбинацию клавиатуры языка?
Когда Вы работаете с emacs, выбираете расположение "English US". Если Вы добавили к Вашему .emacs
зарегистрируйте строки, которые я упомянул выше, это вынудит Вашу клавиатуру вести себя как "клавиатура мертвых клавиш" в emacs. Я знаю, что это может быть раздражающим, но это - единственное решение Вашей проблемы, которая прибывает по моему мнению.