在 emacs 中,我不得不编写一些本质上非常重复的代码行。除了一些琐碎的修改外,连续的行几乎完全相同。
在 emacs 中是否有一个按键,光标(点)当前所在的行被复制到下一行。为了概括这一点,如果我可以指定要将当前行粘贴到哪个行号,那也很棒。
在 emacs 中,我不得不编写一些本质上非常重复的代码行。除了一些琐碎的修改外,连续的行几乎完全相同。
在 emacs 中是否有一个按键,光标(点)当前所在的行被复制到下一行。为了概括这一点,如果我可以指定要将当前行粘贴到哪个行号,那也很棒。
我倾向于使用以下内容:
选择一个区域,然后C-x r x
。其中 r 是寄存器名称;键盘上的单个字符可以用作寄存器。
然后C-x g r
你想在哪里插入你保存在寄存器 r 中的任何行。
您可以将这 2 个命令绑定到快捷键,以使您的任务更加轻松。
使用寄存器的好处是可以将不同的行保存在不同的寄存器中,随时调用。此外,如果您这样做C-k
并杀死一条线,它不会干扰您保存的寄存器。
我希望这会有所帮助。
这有效,调整直到它适合你。或者,只需使用宏:)
(defun copy-line ()
"copies a line"
(interactive)
(move-beginning-of-line 1)
(kill-line 1)
(yank)
(yank)
(setq kill-ring (cdr kill-ring)))
您可以尝试使用 emacs 宏。C-X (
C-x )
. 可以找到更多信息:M-: (info "(emacs)Keyboard Macros") RET