1

Я хотел бы иметь возможность использовать одновременно key-chord и метод ввода, например, rfc1345 .

В настоящее время я использую

Cx RET CM-\ rfc1234 RET

активировать метод ввода.

а также

Mx ключ-аккорд-режим RET Mx ключ-аккорд-режим RET (да, два раза)

повторно активировать аккорд-ключ.

Этот переключатель довольно громоздкий. Есть идеи о том, как активировать их обоих? Или, может быть, способ переключиться быстрее?

3 ответа3

1

Следующий код работал для меня (я не писал его, просто получил из какого-то другого источника - не помню где)

Я просто сделал некоторые корректировки для своих нужд ...

(set-language-environment "UTF-8")
(setq default-input-method "portuguese-prefix")

(defvar use-default-input-method t)
(make-variable-buffer-local 'use-default-input-method)

(defun activate-default-input-method ()
  (interactive)
  (if use-default-input-method
      (progn
        (set-input-method default-input-method)
        (activate-input-method default-input-method))
    (inactivate-input-method))
  (key-chord-mode t))

(add-hook 'after-change-major-mode-hook 'activate-default-input-method)
(add-hook 'org-mode-hook 'activate-default-input-method)
(add-hook 'minibuffer-setup-hook 'activate-default-input-method)

(defun inactivate-default-input-method ()
  (setq use-default-input-method nil)
  (key-chord-mode t))

(add-hook 'c-mode-hook 'inactivate-default-input-method)

(activate-default-input-method)

В последней строке вы можете определить ловушки, которые не будут использовать метод ввода по умолчанию, но также будет включен режим key-chord-mode.

0

Есть встроенная функция toggle-input-method , по умолчанию связанная с C-\ , которая позволяет удобно переключаться из заданного метода ввода и поддержки клавишных аккордов.

0

Эта функция делает то, что вы хотите:

(defun my-whatever ()
  (interactive)
  "Doc string goes here."
  (activate-input-method "rfc1234")
  (key-chord-mode nil)
  (key-chord-mode nil))

Я не уверен, к чему у вас CM-\ привязанный, но если он связан с activate-input-method , я думаю, что это делает эквивалент ваших нажатий клавиш.

Очевидно, вы бы связали эту функцию с последовательностью клавиш по вашему выбору.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .