如何select所有单词和引号不加白space前言?
How to select all words and quotation marks without white space foreword?
如果vim中有这样的东西:
text = 'hellowo|rld'
|
是光标,当我输入va'
时,它会变成text =[ 'helloworld']|
,注意白色的space前言也包括在内。
有没有办法排除白space前言?
呵呵,其实还有更好的办法。我检查了帮助页面 (:h i'
),这确实有效:
v2i'
(我以前不知道!)来自帮助页面:
Special case: With a count of 2 the quotes are
included, but no extra white space as with a"/a'/a`.
您可以将其映射到您的 vimrc 中以使可视模式始终以这种方式运行(甚至其他运算符,如 y
或 d
):
vnoremap a' 2i'
vnoremap a" 2i"
vnoremap a` 2i`
onoremap a' 2i'
onoremap a" 2i"
onoremap a` 2i`
旧答案:
有点不雅,但是可以用va'ol
(visual around quotes,转到visual selection的另一边,向左移动一个字符)。
如果您希望视觉模式始终 正常运行,这里有一个快速的 hack 可以完成它(将它放在您的 vimrc 中):
vnoremap a' i'loho
(就是 "inside quotes, extend one left, switch to the other side, extend one right, switch back.")
如果vim中有这样的东西:
text = 'hellowo|rld'
|
是光标,当我输入va'
时,它会变成text =[ 'helloworld']|
,注意白色的space前言也包括在内。
有没有办法排除白space前言?
呵呵,其实还有更好的办法。我检查了帮助页面 (:h i'
),这确实有效:
v2i'
(我以前不知道!)来自帮助页面:
Special case: With a count of 2 the quotes are
included, but no extra white space as with a"/a'/a`.
您可以将其映射到您的 vimrc 中以使可视模式始终以这种方式运行(甚至其他运算符,如 y
或 d
):
vnoremap a' 2i'
vnoremap a" 2i"
vnoremap a` 2i`
onoremap a' 2i'
onoremap a" 2i"
onoremap a` 2i`
旧答案:
有点不雅,但是可以用va'ol
(visual around quotes,转到visual selection的另一边,向左移动一个字符)。
如果您希望视觉模式始终 正常运行,这里有一个快速的 hack 可以完成它(将它放在您的 vimrc 中):
vnoremap a' i'loho
(就是 "inside quotes, extend one left, switch to the other side, extend one right, switch back.")