我看到了this same question for VIM我自己也想知道如何为 Emacs 做这件事。在 ReSharper 中,我使用 CTRL-D 执行此操作。在 Emacs 中执行此操作最少需要多少命令?
最佳答案
我用
C-a C-SPACE C-n M-w C-y
分解为
C-a
:将光标移至行首C-SPACE
:开始选择(“设置标记”)C-n
:将光标移至下一行M-w
:复制区域C-y
:粘贴(“复制”)
前述内容
C-a C-k C-k C-y C-y
相当于同一件事(TMTOWTDI)
C-a
:将光标移至行首C-k
:剪切(“杀死”)该行C-k
:剪切换行符C-y
:粘贴(“yank”)(我们回到第一个位置)C-y
:再次粘贴(现在我们有该行的两个副本)
与编辑器中的 C-d
相比,这些都冗长得令人尴尬,但在 Emacs 中总是可以进行自定义。 C-d
默认绑定(bind)到 delete-char
,那么 C-c C-d
又如何呢?只需将以下内容添加到您的 .emacs
中:
(global-set-key "\C-c\C-d" "\C-a\C- \C-n\M-w\C-y")
(@Nathan 的 elisp 版本可能更可取,因为如果更改任何键绑定(bind),它也不会中断。)
注意:某些 Emacs 模式可能会回收 C-c C-d
来执行其他操作。
关于emacs - 如何在 Emacs 中复制整行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/88399/