我想将C-f C-b映射为以文件中固定数量的行向前和向后移动。使用参数定义键绑定
我这样做:
(global-set-key (kbd "C-f") 'next-line)
(global-set-key (kbd "C-b") 'previous-line)
,但我不知道如何指定next-line
命令之前的参数。我想我应该使用digit-argument
,但我无法以正确的方式编写命令。
我想将C-f C-b映射为以文件中固定数量的行向前和向后移动。使用参数定义键绑定
我这样做:
(global-set-key (kbd "C-f") 'next-line)
(global-set-key (kbd "C-b") 'previous-line)
,但我不知道如何指定next-line
命令之前的参数。我想我应该使用digit-argument
,但我无法以正确的方式编写命令。
一个可能的选择将是定义一个新功能:
(defun my-next-line()
(interactive)
(next-line 5))
(global-set-key (kbd "C-f") 'my-next-line)
否则,如果它仅仅是东西,你可以用键盘完成,你可能想使用
M-x name-last-kbd-macro
和保存它在你的.emacs文件中
M-x insert-kbd-macro
并且让emacs为你实现这个功能。 它只是将让你在你的电话给了名字,最后大骨节病宏
你改变你的问题的名称是如何直接绑定到按键序列
这种结合抄送升到铜5的C n
(global-set-key (kbd "C-c l") (kbd "C-u 5 C-n"))
[emacs中的λ结合到键的elisp当错误](的
不错,我不知道。非常感谢这个提示。 – mikyra 2013-02-11 18:25:13
不错,不知道! – PascalVKooten 2013-02-11 22:09:08
当您已经知道击键并删除命名宏的步骤时,这是添加新键控绑定的绝佳方式。 – aartist 2013-02-12 17:27:43
可能重复http://stackoverflow.com/questions/1250846/error-in-emacs-elisp-when -binding-a-lambda-a-key) – 2013-02-11 03:12:49
ok this(global-set-key(kbd“Cf”)') (lambda()(interactive)(forward-line 5)))的作品。 虽然它不能完全回答我的问题,但我怎么会绑定类似M-5 Cn或更复杂的宏而不必使用lambda,我可能会错过elisp工作上真正基本的东西... – igon 2013-02-11 03:20:28