在vim中,哪个操作符可以将光标移动到屏幕行的最后一个非空字符?

5

我知道g$可以将光标移动到屏幕行的最后一个字符,但是哪个操作符可以将光标移动到屏幕行的最后一个非空白字符呢?


你为什么需要这个(如此频繁以至于你想要一个运算符)?g$b不足以满足需求吗? - Ingo Karkat
1
@IngoKarkat,g$b 对我来说已经足够了。谢谢! - han pingtian
2个回答

5

g_(后跟下划线的g)移动到文本行的最后一个非空字符。(正如评论中han pingtian所指出的)。

要移动到屏幕行的最后一个非空字符,我没有找到单一的操作符,但您可以结合g$ge来实现此结果:使用g$转到屏幕行的最后一个字符(空格或非空格),然后如果光标位于空白处,请使用ge向后移动到上一个单词的最后一个字符。(当然,如果光标下的字符不是空格,只需省略ge操作符)。

如果您正在尝试编写脚本,则这将不如单个专用运算符有用,因为它需要在g$完成后对光标下的字符做出决策。但是,如果您只是想在可视模式下或进行交互式编辑时转到最后一个非空字符,则g$ ge组合应足以满足您的需求。

还可以尝试将gE替换为ge,具体取决于您是否想跳过标点符号。 (有关eE之间的区别,请参见:help word-motions:基本上,E将所有非空格字符都计为单词字符,而e仅计算字母、数字和下划线。)


抱歉,但是 g_ 只会移动到整个文本行的最后一个非空字符,而不是屏幕行。我想知道是否有一种操作符可以实现这个功能.... - han pingtian

0

屏幕右侧

g$

屏幕左侧

g0

屏幕顶部

H ()

屏幕中央

M

屏幕底部

L


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接