emacs(osx + iterm2)不推荐使用define-key input-decode-map?

时间:2015-09-03 08:15:01

标签: emacs iterm2

我有以下关于iterm2的define-key - emacs使用。

 (define-key input-decode-map "\e[1;31" (kbd "C-;"))
 (define-key input-decode-map "\e[1;32" (kbd "C-="))
 (define-key input-decode-map "\e[1;33" (kbd "C-:"))

升级emacs 24.5.1后,它停止工作 它的正确语法是什么?

修改

我之前使用过24.3

c-h l给出

  

b RET C-a C-n C-n C-n C-n C-x b i n p u t C-g C-x C-f DEL DEL DEL~ /   。 e c a c RET C-d ESC x m a g i t - s t a t r t g t-a C-n C-n C-n   C-n C-n C-n C-n C-n TAB TAB TAB TAB TAB TAB K y g C-a C-n C-n C-p C-p   C-p C-n C-p C-a C-n C-n C-x o C-c g s r a SPC p a r e n C-g C-g   C-n C-n C-n C-x ESC p s m a r t SPC p a r e n RET C-a C-n C-x d RET g   C-a C-n C-n C-n C-p C-p C-s s m a r t-p a C-a C-s C-a C-n C-n C-a   C-x ESC p s m a r t C-n C-n C-n C-g RET g ^ R R O O T _ o r ig RET   退出 !我的RET C-g ESC! e C-g ESC x s l l l RET RET RET q u i t   RET C-d ESC x e s l l l RET l s RET c p SPC DEL DEL DEL l n SPC-s   SPC g C-a C-k c d SPC。 。 / b i n RET l l RET l s RET。 / s你TAB DEL   h TAB RET f g RET p s SPC DEL DEL DEL DEL DELT t DEL t t a SPC    - 一个SPC | g r e p SPC 8 0 8 9 RET ESC O A DEL 0 RET C-h l C-g C-x 1 C-x b C-s C-s C-s RET C-h l

我的emacs是

 #!/bin/sh
 which osascript > /dev/null 2>&1 && osascript -e 'tell application "Emacs" to activate'
 emacsclient -nw -c "$@"

1 个答案:

答案 0 :(得分:1)

这是因为我调用emacs的方式发生了变化。

我曾经做过emacs -nw

现在我启动emacs-server并附上emacs-client。

它打破了input-decode-map

https://groups.google.com/forum/#!topic/gnu.emacs.help/ZGu2MNkJGrI

您需要将它们包含在defadvice内,如下所示。

(defadvice terminal-init-xterm (after map-S-up-escape-sequence 
activate) 
  (define-key input-decode-map "\e[1;2A" [S-up]) 

)