Combina o acorde da tecla e um método de entrada

1

Eu gostaria de poder usar simultaneamente key-chord e um método de entrada, como rfc1345 .

Atualmente eu uso

C-x RET C-M-\ rfc1234 RET

para ativar o método de entrada.

e

M-x key-chord-mode RET M-x key-chord-mode RET (yes, two times)

para reativar o acorde de teclas.

Esse switch é um pouco complicado. Alguma idéia sobre como ter ambos ativados? Ou talvez uma maneira de mudar mais rapidamente?

    
por Alfred M. 17.07.2012 / 14:33

3 respostas

0

Existe uma função interna toggle-input-method , ligada a C - \ por padrão, que convenientemente permite alternar entre o método de entrada definido e o suporte a acordes de teclas.

    
por 31.07.2012 / 18:31
1

O código a seguir funcionou para mim (eu não o escrevi, só recebi de outra fonte - não lembro onde)

Acabei de fazer alguns ajustes para minhas necessidades ...

(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)

Na última linha, você pode definir os ganchos que não usam o método de entrada padrão, mas o modo acorde de teclas também será ativado.

    
por 19.02.2016 / 15:01
0

Esta função faz o que você quer:

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

Eu não tenho certeza do que você tem C-M - \ ligado, mas se ele está ligado a activate-input-method , eu acho que isso faz o equivalente às suas teclas pressionadas.

Obviamente, você ligaria essa função a uma sequência de teclas de sua escolha.

    
por 17.07.2012 / 16:54

Tags