Vim 是否可以选择一个对象或;这里是“文件”;和维姆?

Vim 是否可以选择一个对象或;这里是“文件”;和维姆?,vim,keyboard-shortcuts,heredoc,Vim,Keyboard Shortcuts,Heredoc,Vim最大的优点之一是,它可以快速处理单词、段落和各种分隔符中的内容 比如说, vi{ 将选择一对{}大括号内的所有内容 是否有任何等效功能可用于选择一个或多个对象: <<<HTML .... .... HTML; 要选择heredoc,我通常将光标放在heredoc标识符的第一行,然后按V键* V将开始行选择,*将开始搜索,转到标识符的下一个匹配项,即herdoc的结尾…a有一个插件,可以让您定义自己的文本对象 我想最好定义一个,这样你就可以说“yih”

Vim最大的优点之一是,它可以快速处理单词、段落和各种分隔符中的内容

比如说,

vi{
将选择一对{}大括号内的所有内容

是否有任何等效功能可用于选择一个或多个对象:

<<<HTML
    ....
    ....
HTML;

要选择heredoc,我通常将光标放在heredoc标识符的第一行,然后按V键*


V将开始行选择,*将开始搜索,转到标识符的下一个匹配项,即herdoc的结尾…

a
有一个插件,可以让您定义自己的文本对象

我想最好定义一个,这样你就可以说“yih”(在heredoc中是yank),这样你就不必明确地开始了

请注意,我自己并没有拿这个开玩笑

如果你只是想要一个视觉选择,你可以

 nnoremap <leader>ih ?HTML<cr>V/HTML<cr>
nnoremap ih?HTMLV/HTML

想想前面的帖子,试着让它们更进一步。这不会是100%可靠的(即如果起始标签出现在heredoc内,则会断开,但类似于:

?<<< "find begining
w    " go to starting tag
*    " find starting tag
v    " enter visual mode (could use Upper V to do an 'ambientish' object select 
n    " find end tag
e    " optional include end tag

?谢谢!我实际上已经忘记了这个问题,但你把我带到了正确的道路上谢谢Ken,很好的调整,但是你的关键地图中有一个输入错误-应该是上V-ie:nmap?
?<<< "find begining
w    " go to starting tag
*    " find starting tag
v    " enter visual mode (could use Upper V to do an 'ambientish' object select 
n    " find end tag
e    " optional include end tag
nmap <F6> ?<<<<CR>w*kV?<<<<CR>j