Вставка отступа для столбцов в Vim

Использование Vim Я действительно поклонник визуальный режим, позволяющий вставлять текст перед столбцом.

Вставьте некоторый интервал после стрелок,

> one
> two
> three

можно сделать с помощью jjI :

>   one
>   two
>   three
  • перейти в визуальный режим ,
  • расширить визуальное выделение jj ,
  • вставить несколько пробелов I __ ,
  • распространить изменение на все строки поблочного визуального выделения

Теперь у меня есть текстовый файл, который нужно отформатировать. Вот как это выглядит:

start() -- xxx
initialize() -- xxx
go() -- xxx

Теперь я хочу выровнять часть этого текста, чтобы расположить его по столбцам следующим образом:

start()       -- xxx
initialize()  -- xxx
go()          -- xxx

У меня проблема в том, что я не могу вставлять разное количество отступов в каждую строку и просто делаю отступы фиксированного количества пробелов / табуляции недостаточно. Как сделать отступ, при котором весь текст с отступом должен быть выровнен по одному столбцу?


РЕДАКТИРОВАТЬ: Я только придумал довольно многословный и громоздкий метод :

  • найти позицию строки для отступа от: \ - ,
  • вставьте n (скажем, 20) пробелов перед этим: 20i ,
  • удалите часть этих пробелов обратно в определенный столбец (скажем, 15): d | 15 ,
  • сохраните эти шаги как макрос и повторяйте макрос столько раз, сколько необходимо,

.. .очень некрасиво!

12
задан ib. 27 September 2011 в 14:08
поделиться