如何在 vim 中的点后有效地编辑字符串

How to efficiently edit strings after dot in vim

在 vim 中,我必须将 someText.someTextAfterDot 字符串更改为 someText.somethingDifferent。光标在After中的t处。最有效的方法应该是什么?

vim还有其他更有效的方法吗?

我的直觉是输入 bdeisomethingDifferent。我不知道这是一个很大的改进,但它至少不会让你像 F.ce 那样再次键入 .

我通常为此使用更改内部单词。您只需输入

ciwsomethingDifferent

还要查看 text object selection 的文档。

首先 cw 应该只继续前进,所以只删除 terDot。如果 cw 正在做更多的事情,那么我假设你有一些错误的映射。

"inner" 字文本对象 iw 正是您所需要的。例如ciw。但是,如果您已将 . 添加到 'iskeyword',则单词将包含 .,并且 ciw 的行为将不正确。

要找出最后设置 'iskeyword' 的位置,请使用以下命令:

:verbose set iskeyword?

如需更多帮助,请参阅:

:h 'iskeyword'
:h iw
:h w
:h cw
:h :verbose