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

Ted*_*lik 6 vim

我想颠倒在vim中的Visual Block中选择的行片段的顺序.也就是说,从

one   = [33];
two   = [22];
three = [11];
Run Code Online (Sandbox Code Playgroud)

我想知道,

one   = [11];
two   = [22];
three = [33];
Run Code Online (Sandbox Code Playgroud)

通过选择块

         33
         22
         11
Run Code Online (Sandbox Code Playgroud)

并且仅在此块内反转线顺序.

这可以实现吗?我尝试使用!tac,如相关问题中所述,但是反转整行,而不仅仅是选定的块.

And*_*dev 4

有一个名为“vis”的插件,它试图完全满足您的需求: https: //github.com/vim-scripts/vis

安装后,您可以在可视模式下选择列并执行:B sort以仅对该区域进行排序。

作为一个不幸的副作用,我似乎在选择周围有额外的间距:

one   = [ 11 ];
two   = [ 22 ];
three = [ 33 ];
Run Code Online (Sandbox Code Playgroud)

这可能是我自己的 Vim 配置中的一些奇怪之处,也可能是一个普遍问题。我建议您尝试一下该插件并亲自看看。