如何在vim中获得更好的列编辑模式(更加可视化和可定制)

如何在vim中获得更好的列编辑模式(更加可视化和可定制),vim,Vim,Vi专家,关于栏目编辑我有两个问题 首先,我已经知道如何进入视觉模式并进行列编辑。但关键是,在shift+I和type之后,您只能看到第一行在esc之前发生更改。我的问题是,是否可以使编辑操作在所有行中都可见?或者,对于当前的vim来说,这仍然是一项不可能完成的任务 我的第二个问题是,我想插入一列递增的数字(0…9)或一些用户定义的递增项,如(monday…sunday)blahblah,实现这一点的最佳方法是什么,我可以定义一些自定义函数,然后调用它们吗?“仍然是一项不可能完成的任务”暴露了一

Vi专家,关于栏目编辑我有两个问题

首先,我已经知道如何进入视觉模式并进行列编辑。但关键是,在shift+I和type之后,您只能看到第一行在esc之前发生更改。我的问题是,是否可以使编辑操作在所有行中都可见?或者,对于当前的vim来说,这仍然是一项不可能完成的任务

我的第二个问题是,我想插入一列递增的数字(
0…9
)或一些用户定义的递增项,如(
monday…sunday
)blahblah,实现这一点的最佳方法是什么,我可以定义一些自定义函数,然后调用它们吗?

“仍然是一项不可能完成的任务”暴露了一个错误的假设:Vim从来都不想成为所见即所得的编辑器;仅仅更新当前行就需要更少的屏幕更新(这在连接速度较慢的情况下可能非常重要;vi的整个模式编辑部分是出于这种需要而产生的)

有人尝试使用“多游标”插件;不过,有了这些,您可能会实现这一点

第二个问题 (请注意,在一个问题中问两件不相关的事情是不好的方式。)

是的,您几乎可以在“一些定制的功能”中做任何事情(但您必须澄清您的确切用例才能得到有意义的答案)

其中一些可以通过以下方式完成:

{Visual}
在逐行视觉选择的每一行上按[count]递增光标下的组件。如果一行中没有一个组件,则将其填充为高于其上方一行的[count]。这可用于创建序列。例如,将“0”放在一行上,后跟4个空行,目视选择所有5行,然后按
获得1到5的序列。您也可以在视觉模式下使用字母:如果您想要以a开头的列表,请在第一个条目中输入Z


很抱歉在一篇帖子里问了两个问题。非常感谢。我来看看。如果vi将在缓慢的连接中使用多个游标进行屏幕更新,那么其他编辑器会更好吗?不,就带宽要求而言,大多数其他编辑器不会更好。随着今天的带宽越来越丰富,这一点越来越无关紧要,但了解Vim的来源是非常有用的。感谢您的解释。对于那些和我有同样问题的人,我发现这个插件很有魅力。().