哪个是在VIM中没有新行字符的情况下选择整行的最短路径?
我知道SHIFT+ v选择整行,但是换行符号.
要做到这一点,我去了线,我按:
我也知道我可以创建一个做这样的事情的录音.但我在问是否有任何内置快捷方式......
jer*_*rzy 47
是的,g_是你在找什么.g_就像$,但最后没有换行符.
使用0vg_或^vg_,取决于您是否要分别从行的开头或行上的第一个字符进行复制.
glt*_*lts 24
不,没有任何内置工作可以完成.这就是为什么人们甚至创建了插件来满足需求.
可能最受欢迎的选择是textobj-line.使用textobj-line,您将获得两个新的文本对象,al"一条线"和il"内线".然后,
vil选择该行的可打印内容(如^vg_),val选择整行内容(如0v$h).两者都不包括选择中的换行符.
如果你问我,非常方便的插件.它也适用于运营商.
根据要求,安装:
~/.vim.~/.vim.:helptags ~/.vim/doc.rom*_*inl 10
0v$
^v$
0vg_
^vg_
$v0
$v^
g_v0
g_v^
Run Code Online (Sandbox Code Playgroud)
所有人都可以通过不同的线条概念(从第一列或从第一个可打印字符到最后一个字符或最后一个可打印字符)来完成工作.如果您愿意,可以创建自定义映射.
请注意,在vim中通常不需要选择文本.
小智 5
除了@glts 的答案之外,您可以仅使用 vanilla vim 映射来复制textobj-line插件的功能,无需安装插件。
为此,请将以下内容添加到您的 .vimrc
vnoremap al :<C-U>normal 0v$h<CR>
omap al :normal val<CR>
vnoremap il :<C-U>normal ^vg_<CR>
omap il :normal vil<CR>
Run Code Online (Sandbox Code Playgroud)
的al文本对象(以下简称“线”)包括在一个行中的所有字符,但不终止换行符。这包括所有空白。
该il文本对象(以下简称“内线”)变为从第一个非空白字符到最后一个非空白字符。
命令如yil,val和cil预期的工作。
| 归档时间: |
|
| 查看次数: |
5766 次 |
| 最近记录: |