繁体   English   中英

在vim命令行模式下:如何从当前光标位置到结尾杀死该行

[英]in vim command line mode: how to kill the line from the current cursor position to the end

bash的<ck>: kill-line功能,这意味着从当前光标位置到行尾删除该行。 如何在编辑命令时在vim命令行模式下执行此操作?

例如:
vim 命令行模式下输入:echo 'hell|o world'这个命令,光标在| 位置,怎么杀线成为:echo 'hell

在Shougo的vimrc中找到了这个键绑定 ,将Ctrl + k设置为删除直到行尾:

" <C-k>, K: delete to end.
cnoremap <C-k> <C-\>e getcmdpos() == 1 ?
      \ '' : getcmdline()[:getcmdpos()-2]<CR>

请注意,这不会保留寄存器中的其余行,就像bash或Emacs中的等效绑定一样。

检查:h eval了解有关在命令行上执行的操作的更多帮助。

编辑命令行不应该发生在命令行本身,而是发生在编辑器中。

这就是你在Bash中使用<Cx>e而在Vim中使用<Cf>的原因。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM