在 neovim 中拉取单词时忽略尾随空格

kis*_*sei 4 vim neovim

因此,当拉出单词(yw)时,我的问题是它也会复制尾随空格:

\n

示例:\n对此执行 yw:

\n
\xe2\x80\x96Hello World\n
Run Code Online (Sandbox Code Playgroud)\n

复制的结果Hello

\n

但这同样适用于:

\n
\xe2\x80\x96LongVariableName                        = 'SomeValue';\n
Run Code Online (Sandbox Code Playgroud)\n

复制的结果LongVariableName

\n

有没有办法让我复制而不复制任何空间?(这对我来说在复制单词时有意义)

\n

mat*_*ttb 9

您可以使用yiw来拉出“内部单词”文本对象(yaw将包括额外的空格)。看:help text-objects

文本对象的一个​​很好的功能是光标可以位于对象(在本例中为单词)上的任何位置以使其工作。

vim中有很多文本对象:

  • is表示内部句子
  • ip表示内部段落
  • i)表示内括号

还有很多!

另外@DoktorOSwaldo 下面的评论指出,您还可以使用ye从当前位置进行拉取,直到单词末尾没有空格,e是当前单词的结尾,w是下一个单词的开头(这不是文本对象,因此在其他单词上重复它需要光标位于相同的位置)。

  • 注意:您还可以使用“ye”从当前位置拖动到单词末尾(不带空格),“e”是当前单词的结尾,“w”是下一个单词的开头。 (3认同)