搜索

首页  >  问答  >  正文

gvim - Vim中如何插入n次重复符号直到跟上一行对齐?

最近在使用Vim编写一些小的脚本,在写注释的时候,想采用这样的方式分隔:
"----------------------------------------------------------
"-------------This is Comments ----------------------------
"----------------------------------------------------------
我知道可以采用ni-实现插入n个"-"号的功能,但是中间那一行需要手动输入。因为Comments的内容长度未知,每次都需要手动输入,有时还会出现对不齐的情况。不知道是否有办法在输入完Comments后,自动插入足够的"-"号跟上一行对齐呢?

为情所困为情所困2818 天前925

全部回复(4)我来回复

  • 我想大声告诉你

    我想大声告诉你2017-05-16 16:42:54

    把这个加到你的 vimrc 里:

    inoremap <expr> <C-r>* repeat('*', strdisplaywidth(getline(line('.')-1))-strdisplaywidth(getline('.')))
    

    然后需要使用星号与上一行对齐的时候按 <C-r>*

    另一个解决方案是,写文字部分之前把上一行全星号复制下来,然后在需要写文字的地方按 gR 进入虚拟替换模式,这样就不用数星号了。

    回复
    0
  • 巴扎黑

    巴扎黑2017-05-16 16:42:54

    .号的使用。。

    回复
    0
  • 漂亮男人

    漂亮男人2017-05-16 16:42:54

    直接做的方法我不了解,但有另一个方法能实现你的需求,而且也不麻烦:

    1.每次多插入一些符号
    2.使用块选择,将多余的符号一次性删除

    回复
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-16 16:42:54

    呃~,可不可先写三行星号,跳到中间,再按R?

    回复
    0
  • 取消回复