我想反转在 vim 中视觉块中选择的行片段的顺序。 也就是说,从
one = [33];
two = [22];
three = [11];
我想得到,
one = [11];
two = [22];
three = [33];
通过选择 块
33
22
11
并仅在此块内反转行顺序。
这能实现吗? 我尝试使用!tac
,如相关问题中所述,但这反转了整行,而不仅仅是选定的块。
有一个名为"vis"的插件,它试图完全按照你的要求去做:https://github.com/vim-scripts/vis
安装后,您可以在可视模式下选择列并执行:B sort
以仅对该区域进行排序。
作为一个不幸的副作用,我似乎在选择周围获得了额外的间距:
one = [ 11 ];
two = [ 22 ];
three = [ 33 ];
这可能是我自己的 Vim 配置中的一些奇怪之处,也可能是一个普遍问题。我建议您尝试该插件并亲自查看。
使用 vim-exchange 插件,我们可以执行以下操作: 将光标放在第一个数字上,键入cxi[
然后键入2j.
我之所以提供这个基于插件的解决方案,是因为我认为"vim-exchange"它是一个更常见的插件,尤其是在那些非常著名的 vim 截屏视频之后。