emacs - emacs中的Shift箭头选择

标签 emacs elisp

我使用的是 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,而不是选择,等等。 如何解决?

附言
cat -v 换档 <=
^[[1;2D
cat -v 换档 =>
^[[1;2C

如何将这些键正确映射到左移、右移对应?

附言
对不起。我忘记了。我也在用屏幕。

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

最佳答案

这意味着 emacs 和您的终端不同意各种 key 代码的含义。有更高级的方法来配置终端(终端特定的文件),但为了让您开始,请尝试在您的 emacs 初始化文件中添加类似这样的内容:

(define-key input-decode-map "\e[1;2D" [S-left])
(define-key input-decode-map "\e[1;2C" [S-right])

关于emacs - emacs中的Shift箭头选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11721224/

相关文章:

c++ - 如何让Flycheck(使用clang_complete)识别Mojave上的OpenGL框架

emacs - 如何捕获 `M-0 <f4>` 事件并将其写入 Emacs 中该格式的缓冲区?

emacs - 通过编译包加速加载 emacs

emacs - 在项目中查找文件的相对路径

emacs - 如何使用elisp将十六进制字符串转换为ASCII?

python - Emacs defadvice on python-mode 函数

python - emacs 上自动 header 的模板

emacs - 如何从 Eval : in . dir-local.el 设置缓冲区局部变量?

将 elisp unixtime 转换为 js-date 对象

function - Emacs Lisp 可以将 lambda 形式分配给 Scheme 之类的变量吗?