我正在使用GNU Emacs 23.2.1
我的init.el
(cua-mode 1)
(transient-mark-mode 1)
(setq shift-select-mode t)
(global-linum-mode 1)
(show-paren-mode 1)
(desktop-save-mode 1)
所以,而不是选择我在Shift =>上获得2C,在Shift< =上获得2D等。 怎么解决这个问题?
P.S。
cat -v for Shift< =
^ [[1; 2D
cat -v for Shift =>
^ [[1; 2C
我如何正确映射那些键左移,右移对应?
P.P.S。
抱歉。我忘了我也在使用屏幕。
den@playground:~/.emacs.den$ echo $TERM
screen
解决方案:
(define-key input-decode-map "\e[1;2D" [S-left])
(define-key input-decode-map "\e[1;2C" [S-right])
(define-key input-decode-map "\e[1;2B" [S-down])
(define-key input-decode-map "\e[1;2A" [S-up])
(define-key input-decode-map "\e[1;2F" [S-end])
(define-key input-decode-map "\e[1;2H" [S-home])
答案 0 :(得分:6)
这意味着emacs和您的终端不同意各种密钥代码的含义。有更多高级方法来配置终端(终端特定文件),但为了让您入门,请尝试将以下内容添加到您的emacs init文件中:
(define-key input-decode-map "\e[1;2D" [S-left])
(define-key input-decode-map "\e[1;2C" [S-right])
答案 1 :(得分:2)
当您在控制台中运行emacs时,通常会发生这种情况。尝试将emacs作为图形程序运行,这应该不是问题。