![]() |
1
4
我认为你的脚本唯一的问题是位置保存看起来不正确。你基本上可以做你想做的事情:
与问题中的(正确的)代码相同。您可以简单地将其映射为:
如果你想保存这个位置,它会变得更复杂一些。最好的办法可能是使用这样的工具:
其中大部分是注释,但关键是要查看替换前后行的长度,并相应地决定新的光标位置。你可以通过比较你的方法来做到这一点
编辑 如果希望光标在空格字符后结束,请修改行:
这样看起来像这样:
编辑(2) 我已经更改了上面的脚本来考虑您的注释,这样光标位置只会根据光标位置之前的空格数进行调整。这是通过创建第二个正则表达式来完成的,该表达式从行中提取光标前面的空格(而不是其他任何内容),然后根据空格数调整光标位置。 |
![]() |
2
3
我不使用vim,但是如果你想匹配零个或更多的空格,你不应该使用
编辑:是光标定位的问题:你现在要做的是在替换之前在空格的开头设置位置,然后向前移动一个位置,使其在空格之后。尝试将其设置为 结束 相反,像这样:
这样,任何添加或删除都会发生 之前 光标位置。在大多数编辑器中,光标位置自动移动以跟踪这些更改。你不需要做任何getpos/setpos的事情。 |
![]() |
3
0
相反,我使用了法线和修改线之间的差异,找到了第一个与替换的正则表达式匹配的空间的位置。然后我将光标位置设置为+1。 |
![]() |
4
0
我使用的这个简单的方法几乎是相同的:
将光标放在要删除空格的位置,并删除光标和下一个文本后的所有空格。 |
![]() |
farnsy · Vim如何将第二个参数添加到缓冲区列表(备用文件)? 1 年前 |
|
Marcel · VIM-如何在一组单词的开头和结尾添加2个字符 1 年前 |
![]() |
Rian Rizvi · 向后删除连续空格或连续非空格直到行首 7 年前 |
![]() |
alexche8 · 如何突出显示vim中按数字键上的行号? 7 年前 |
![]() |
A.Dumas · 如何为md文件vim关闭HtmlBeautify 7 年前 |
|
ekzotech · Vim插件可用于自定义HTML标记和SCS 7 年前 |