Изменить все символы в столбце в несколько строк - PullRequest
12 голосов
/ 07 мая 2011

Я не уверен, как объяснить, что я хотел бы сделать, но я видел это в Textmate, и это было довольно полезно.Допустим, у меня есть этот текст:

:aa => foo,
:ab => foo,
:ac => foo,
:ad => foo

Теперь я хочу выделить все первые символы клавиш (4 'a' в lne) и удалить их, чтобы результат выглядел следующим образом:

:a => foo,
:b => foo,
:c => foo,
:d => foo

Какой-то столбец учета в визуальном режиме, а не строки.

Ответы [ 6 ]

9 голосов
/ 07 мая 2011

Используйте Ctrl + V , чтобы войти в блочный визуальный режим.Затем вы можете выделить блок текста с помощью клавиш обычного перемещения и нажать x , чтобы удалить его. I выполнит многострочную вставку.

См. :help ^V и :help visual-operators в vim для полной информации.

6 голосов
/ 07 мая 2011

Использовать vim в режиме столбца. Чтобы использовать его, нажмите:

  1. Ctrl + V для перехода в режим столбцов.
  2. Выберите столбцы и строки, в которые вы хотите ввести свой текст.
  3. Сдвиг + I для перехода в режим вставки в режиме столбца.
  4. Введите текст, который вы хотите ввести.

    Примечание: не расстраивайтесь из-за того, что изменен только первый ряд.

  5. Esc, чтобы применить ваше изменение (или поочередно Ctrl + C ).

Теперь вы увидите, что ваше изменение применено.

Источник: Режим редактирования столбца в VI .

2 голосов
/ 07 мая 2011

Используйте Ctrl-V для выбора в режиме блокировки, затем направьте и редактируйте команды, чтобы сделать все остальное. Увидеть Как удалить кавычки, окружающие первые два столбца в Vim?

1 голос
/ 07 мая 2011

Как уже говорили другие, Ctrl-V - это ответ.Обучающее руководство см. Vimcast эпизод " Выбор столбцов в режиме визуального блока "

1 голос
/ 07 мая 2011

Вы ищете режим визуального блока, который доступен в Ctrl+V в обычном режиме.Работает так же, как Alt+select в TextMate.

0 голосов
/ 02 сентября 2013

В вашем особом случае:

:% s/a/

делает работу.

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