如何在 Vim 中反转视觉块中线条片段的顺序?

  • 本文关键字:片段 顺序 视觉 Vim vim
  • 更新时间 :
  • 英文 :


我想反转在 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 截屏视频之后。

最新更新