Как нарисовать линию в VIM? - PullRequest
       3

Как нарисовать линию в VIM?

6 голосов
/ 27 ноября 2011

Как нарисовать вертикальную линию вместо ввода одной за другой?

Например, я хочу установить вертикальную линию в столбце 10 для 20 строк.Так же, как моя первая строка.как мне сделать это умным способом?

enter image description here

Ответы [ 3 ]

13 голосов
/ 27 ноября 2011

Сначала установите virtualedit=all, чтобы позволить себе перемещаться за конец строки:

:set virtualedit=all

Затем ...

10|<C-V>20jr|

Где:

  • 10|: перемещает вас в столбец экрана 10
  • ctrl + V : вход в блочный визуальный режим
  • 20j: перемещение на 20 строк вниз (отрегулировано по вкусу)
  • r|: заменяет выделение на столбцы
2 голосов
/ 28 ноября 2011

Ниже приведено альтернативное решение для установки virtualedit=all для создания 20 строк с | в столбце 10:

  1. Начиная с режима Нормальный , сделайтепример строки, например, 10i<space><esc>r|
    • 10i пробел вставит пробел десять раз и при нажатии esc с последующим r|заменит последний символ на |
  2. Скопируйте всю строку с помощью Y
  3. В обычном режиме вставьте скопированную строку 20 раз с помощью 20p
    • Это вставит недавно скопированную строку 20 раз ниже, давая вам в общей сложности 21 одинаковую строку

В сумме:

10i<space><esc>r|Y20p
1 голос
/ 27 ноября 2011

Похоже, это плагин VIM, который делает именно то, что вы ищете:

http://www.vim.org/scripts/script.php?script_id=40

Я сам не пробовал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...