emacs (osx + iterm2) define-key input-decode-map 已弃用?

emacs (osx + iterm2) define-key input-decode-map deprecated?

我有以下用于 iterm2 的定义键 - 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 m a c RET C-d ESC x m a g i t - s t a t u s RET g C-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 m a r t SPC p a r e n s 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 i g RET ESC ! s h e l l RET C-g ESC ! e C-g ESC x s h e l l RET q RET q u i t RET C-d ESC x e s h e 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 u TAB DEL h TAB RET f g RET p s SPC DEL DEL DEL DEL DEL n e t t DEL s t a t SPC - a n o 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 "$@"

是因为我调用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]) 

)