向后删除行(Emacs)

时间:2010-10-07 10:28:01

标签: emacs

这可能是基本但我真的试图找到答案。 “C-k”从光标删除到行尾,但有一个类似的快捷方式从光标点向后删除一行吗? 最好

6 个答案:

答案 0 :(得分:37)

尝试C-u 0 C-k - 即前缀为0的C-k从点到点开始。有关详细信息,请参阅C-k(kill-line)的文档。

答案 1 :(得分:6)

这是asjo对一把钥匙的回答:

(global-set-key "\M-k" '(lambda () (interactive) (kill-line 0)) ) ;M-k kills to the left

答案 2 :(得分:6)

正如其他答案所暗示的那样, C-0 C-k 从点开始杀死线。有关详细信息,请参阅documentation获取 C-k kill-line)。您可能还希望使用 C-S-backspace 来消除整点之前和之后的行,这会使kill-whole-line逐渐消失。

杀戮的另一个便利是重新绑定kill-region,默认为 Cw ,而是绑定到该键,函数backward-kill-word将模仿{{3}的行为}的 Cw readline)。在将kill-region移动到 A-q 之后,我将quoted-insert重新绑定到 C-q 。是的,这需要移动一些键,但如果你试一试,我想你会发现它很方便。

答案 3 :(得分:1)

我尝试了带有负数的 C-u C-k 作为参数。有效。
在光标前删除4行的例子,尝试 C-u -4 C-k

答案 4 :(得分:0)

这并不完全是一行的开头,但是您可能想签出hungry-delete软件包。安装,然后将以下内容添加到初始化文件中:

(add-hook 'after-init-hook (lambda ()
  (require 'hungry-delete)
  (global-hungry-delete-mode)))

之后, DEL 会删除直到下一个非空白字符,而 Backspace 也会删除,但方向相反。

答案 5 :(得分:0)

M-0Ck(因为 C-0Ck 在我的电脑上不起作用)。

删除行首的所有空格:

M-mM-0C-k