有没有办法在不使用可视块模式选择的情况下编辑代码中的垂直块?
答案 0 :(得分:2)
blockwise visual mode 有什么不好?!没有实际的替代方案。
:substitute
与\%>v
,\%<v
,\%>l
和\%<l
等原子一起使用,以将模式匹配限制为矩形块,但这非常乏味的。getline()
/ setline()
和字符串操作的scriptlet /映射。答案 1 :(得分:1)
除了Ingo的回答,我还要补充一点:Ex命令是按行设计的。视觉模式的性质并不重要:默认情况下,Ex命令总是使用您选择的第一行和最后一行作为范围。
因为它不是直线的,所以视觉块模式和块“思考”并不真正与Ex命令对齐。
答案 2 :(得分:1)
您可以执行类似于最近回答的内容:https://stackoverflow.com/a/22238813/3130080
例如,
:%s/\%6c/x/
将在每行的第6个字符前插入“x”,并
:1,2s/\%>1c\%<4c.//g
将删除第1行和第2行中的字符2和3。
:help /\%c