【发布时间】:2016-02-24 09:08:41
【问题描述】:
在像 Visual Studio/Sublime Text 这样的编辑器中,我可以在一行上使用 ctrl-c 来复制整行。 (不选择任何东西)
这在 Emacs 中可行吗?
这是我当前的配置:
https://github.com/r03/dotfiles/blob/master/.emacs.d/init.el
【问题讨论】:
标签: emacs
在像 Visual Studio/Sublime Text 这样的编辑器中,我可以在一行上使用 ctrl-c 来复制整行。 (不选择任何东西)
这在 Emacs 中可行吗?
这是我当前的配置:
https://github.com/r03/dotfiles/blob/master/.emacs.d/init.el
【问题讨论】:
标签: emacs
不是开箱即用的。但是,添加它并不难。几乎。 不幸的是,C-c 通常是为 Emacs 中的其他功能保留的,它用作所谓的前缀键。也就是说,有很多更复杂的键盘快捷键实际上以 C-c 开头,然后是一些额外的击键。因此,您可能不得不放弃复杂按键序列的功能,或者为复制行选择不同的键盘快捷键。
(即使是您使用的 cua-mode,也因为这个原因而单独留下 C-c ,除非您首先标记一个区域,即完全 不是 的情况之后。)
无论如何,我们可以编写一个复制当前行的短函数,如下所示:
(defun copy-line ()
(interactive)
(kill-ring-save (line-beginning-position) (line-end-position)))
要将此函数绑定到某个键,例如 C-c C-c(即两次 CTRL+C),请使用:
(global-set-key (kbd "C-c C-c") 'copy-line)
将以上所有内容放在你的init.el文件中,重启Emacs后你可以复制当前行而不用先选择它。
【讨论】: