Как сделать отступ в одну строку несколько раз в vi или vim? - PullRequest
47 голосов
/ 13 сентября 2010

Я нашел несколько ответов о том, как сделать отступ для нескольких строк в vim. Я хочу знать, как взять одну строку и сделать отступ более одного раза.По сути, мне нужна более короткая версия следующей команды: ">>>>>>>>>>" (то есть 10 символов «больше чем» в правой скобке).

Ответы [ 5 ]

75 голосов
/ 13 сентября 2010

Выберите, что вы хотите (обычно с помощью v или Shift + v ), затем введите 5>.

Если вам нужно исправить или повторить тот же выбор, используйте gv .

11 голосов
/ 13 сентября 2010

Вы можете выбрать текущую строку, нажав v, а затем введите 5>, чтобы отступить в текущей строке 5 раз, эквивалентно нажатию > 10 раз.

10 голосов
/ 13 сентября 2010

Один из ответов на «Как быстро сделать отступ в нескольких строках в vi» показал мне хитрый способ переназначить > в визуальном режиме для повторного выбора визуального режима.В вашем .vimrc ...

vnoremap < <gv
vnoremap > >gv

Затем я просто выбираю строку (или строки), которую вы хотите сделать отступом, и нажимаю нужное направление столько раз, сколько вы хотите.

8 голосов
/ 13 сентября 2010

Отступ после использования.повторить предыдущую команду или отменить ее.

3 голосов
/ 31 августа 2017

Из vim help: :help >

Чтобы переместить строку на несколько широт, используйте визуальный режим или команды:.

Например:

    Vjj4>           move three lines 4 indents to the right
    :<<<            move current line 3 indents to the left
    :>> 5           move 5 lines 2 indents to the right
    :5>>            move line 5 2 indents to the right

Или просто >> и повторить команду с . в обычном режиме.

...