0

在 emacs 中,我不得不编写一些本质上非常重复的代码行。除了一些琐碎的修改外,连续的行几乎完全相同。

在 emacs 中是否有一个按键,光标(点)当前所在的行被复制到下一行。为了概括这一点,如果我可以指定要将当前行粘贴到哪个行号,那也很棒。

4

3 回答 3

1

我倾向于使用以下内容:

选择一个区域,然后C-x r x。其中 r 是寄存器名称;键盘上的单个字符可以用作寄存器。

然后C-x g r你想在哪里插入你保存在寄存器 r 中的任何行。

您可以将这 2 个命令绑定到快捷键,以使您的任务更加轻松。

使用寄存器的好处是可以将不同的行保存在不同的寄存器中,随时调用。此外,如果您这样做C-k并杀死一条线,它不会干扰您保存的寄存器。

我希望这会有所帮助。

于 2012-08-26T18:18:30.607 回答
1

这有效,调整直到它适合你。或者,只需使用宏:)

(defun copy-line ()
  "copies a line"
  (interactive)
  (move-beginning-of-line 1)
  (kill-line 1)
  (yank)
  (yank)
  (setq kill-ring (cdr kill-ring)))
于 2012-08-26T21:19:57.147 回答
0

您可以尝试使用 emacs 宏。C-X ( C-x ). 可以找到更多信息:M-: (info "(emacs)Keyboard Macros") RET

于 2012-08-27T08:36:27.597 回答