Апр 082013
 

Отсюда http://www.instanceof.ru/linux/vim/step-by-step

VIM — Шаг за шагом

Когда-то, когда я в первые увидел Линуксовую консоль на своем десктопе, VIM казался мне монстром, которым вообще невозможно пользоваться. Первый мой вход в редактор закончился перезагрузкой, т.к. я просто не знал как из него выйти. Данная статья опишет возможности (далеко не все) редактора в том порядке, в котором познавал их я.

Итак приступим. Первое что нужно знать, и с чего начинаются все руководства по VIM — это режимы.

Да, да в vim есть несколько режимов работы:

  • Коммандный режим
  • Режим редактирования
  • Визуальный режим

Начнем с самого важного действия: как выйти из редактора.

Для этого нужно перейти в коммандный режим — нажмите клавишу <esc> (пару раз для верности 🙂 ) затем наберите :q и нажмите Enter.

Набираемая вами комманда должна отображаться в самом низу экрана.

Если же вы уже успели сделать изменения в файле редактор не даст вам выйти, сообщив о том, что файл изменен. Чтобы выйти без сохранения нужно добавить в конце комманды восклицательный знак :q!.

Если же вам нужно сохранить изменения наберите :w затем повторите комманду выхода из редактора. Можно сделать это в одно действие: :wq или 😡 .


Итак, выходить из редактора мы научились. Теперь перезагрузка не потребуется :). Идем дальше. Если вы открыли редактор, то для чего-то…. Конечно — изменить файл. Самое простое действие здесь — при помощи клавиш со стрелками на клавиатуре поместит курсор в то место, где вы собираетесь начать редактирование.

Если же ваша клавиатура не имеет таких клавиш — вам помогут аналоги:

  • j — вниз
  • k — вверх
  • h — влево
  • l — вправо

Как начать редактирование? нажать клавишу <i> — при этом в нижней части экрана появится надпись – INSERT – или – ВСТАВКА —-.

Теперь вы можете редактировать содержимое файла. для удаления символа — клавиша <delete> , переход в командный режим <esc>


На этом базовые возможности заканчиваются. С этим знанием уже можно работать — так я и поступал, пока мне не надоело выполнять рутинные операции. Зная, что VIM может больше я начал читать руководства, и следующим, что я усвоил была комманда dd

Находясь в коммандном режиме перейдите на нужную строку и два раза нажмите клавишу <d> — строка исчезнет.

Если нажать D — исчезнеть часть строки от курсора, до ее конца. Чувствуете насколько стало удобней?


Однажды меня достало безумная долбежка клавиши d при удалении сотни строк. Оказалось перед любой коммандой можно ввести числовой модификатор, который укажет сколко раз выполнить комманду.

Итак: 5dd — удалит 5 строк начиная с текущей.


Дальше — больше. Понадобилось копировать и вырезать строки для последующей вставки, оказалось, что dd не удаляет строку, а вырезает ее.

Есть еще комманда yy, которая копирует строку целиком.

Вырезанное или копируемое нужно как-то вставить в место назначения — нет ничего проще p вставит строки, находящиеся в буфере после текущей строки, а P — перед текущей строкой.

В коммандном режиме можно удалять символ под курсором клавишей <delete> или x — тут так же применимы числовые модификаторы.

Для полноценного редактирования не хватает операций отмены изменений и повтора. Они есть: в коммандном режиме u и Ctrl+r — соответственно. И снова не забываем про числовые модификаторы.


В последнее время я начал редактировать в VIM исходные тексты программ. Вот тут появилась необходимость видеть номера строк. :set number — включит отображение номеров, а :set nonumber — выключит.

Но тут у меня появилось несколько бед сразу, во первых, если скопировать что-то из другого редактора и попытаться при помощи средней кнопки вставить в VIM в режиме редактирования — приходится править отступы. От этой беды спасает режим вклейки: :set paste / :set nopaste.

Следующая беда — если во вставленный текст попадают номера строк. Приходится по несколько раз нажимать на каждой строке x или delete оказалось и от этой беды есть панацея — визуальный режим.

Переходим в визуальный режим нажатием Ctrl+v, двигаем курсор по экрану, чем выделяем определенную прямоугольную область, затем нажимаем x, и выделенной области — как не бывало.

Так же может потребоваться групповая вставка — например нужно закомментировать блок кода, вставив в начале каждой строки »«. Снова на помощь приходит визуальный режим: Выделяем область шириной в один символ и нужной высоты, нажимаем клавишу I (заметьте в верхнем регистре) и пишем нужный текст, который отображается только в верхней строке. Далее, чтобы выйти из режима редактирования жмем <esc>**, и …. О чудо!!! Текст появляется в начале каждой строки, что были выделены в визуальном режиме.

QR Code - Take this post Mobile!
Use this unique QR (Quick Response) code with your smart device. The code will save the url of this webpage to the device for mobile sharing and storage.
Понравилось? Поделитесь:

:

Sorry, the comment form is closed at this time.