你如何移动指针向上或向下多行使用Emacs?
-
27-09-2019 - |
题
我可以在Emacs移动我的指针向上和向下一行与我的箭头键就好,所以我想重新定义C-N和C-p来上下移动在时刻5行。
我刚开始学习如何使用Emacs和elisp的是非常陌生的我。我尝试使用 GNU的Emacs Lisp参考,但我不能”吨找到如何击键绑定到多个命令。
下面就是我迄今为止(集中在向上移动的定义):
(global-set-key "\C-p" '(loop for i in '(1 2 3 4 5) do ('previous-line)))
但是,这时,我打C-P,带来了一个错误消息“错误的类型参数。”
任何建议?
谢谢!
解决方案
这些功能(我相信next-line
和previous-line
)接受以C-U的optionnal说法,所以我认为(next-line 5)
会做你想做的。
编辑:所以我只是尝试,这将是
(global-set-key (kbd "C-n")
(lambda () (interactive) (next-line 5)))
和与C-p和previous-line
相同。
(Fiew不能简单地与电话键盘^^一个textarea写码)
其他提示
根据我的emacs配置警告,并从彼得Ajtai的评论,我提出的版本,它使用从我forward-line
init.el
(global-set-key (kbd "C-n")
(lambda () (interactive) (forward-line 5)))
(global-set-key (kbd "C-p")
(lambda () (interactive) (forward-line -5)))
当然也有forward-char
,工作原理相同,只是在不同的方向。
这缺少的唯一事情是,需要一个复杂的号码作为参数,并且可以在所有4个方向被用于导航一个complex-forward
:P
不隶属于 StackOverflow