Чтобы vim работал

111
Standard


На свежеустановленном debian`е vim не поддерживает подсветку синтаксиса. Включаем подсветку следующим образом:

apt-get install vim
vi ~/.vimrc

в vimrc добавим следующие строки:

syntax on //чтобы работала подсветка
set number //чтобы отображались строки

теперь если вы попробуете редактировать к примеру .php файлы у вас будет подсветка — сильно выручает. Если все еще не заработало:

source ~/.bashrc //обновляем конфиг bash`a

Горячие клавиши к Vim

Standard

Когда надо быстро что-то подправить на серверах, не мучая IDE, vim очень пригодится. Для того чтобы привыкнуть уйдет может пару дней, но оно того стоит. У vim существуют 3 режима работы:

  1. Стандартный режим (по умолчанию, чтобы перейти в него из другого режима, нажмите Esc) — в нем можно выполнять команды
  2. Режим редактирования (включается по клавише i)
  3. Визуальный режим (клавиша v)

Внизу слева vim уведомит вас об используемом режиме.  Для того чтобы выполнить команду нажмите двоеточие и название команды.

Стандартный режим:

  1. h, j, k, l перемещение по тексту, т.е. ↑, ←, →, ↓ соответственно, можно использовать обычные клавиши перемещения, но так медленней
  2. u — отменить, <ctrl + r > — команда обратная отменить
  3. <shift + U>,  отменить/ вернуть прошлое действие, полезно когда нужно поменить лишь одно изменение
  4. ZZ или :wq сохранить и выйти
  5. CC очистить текущую линию и включить режим редактирования
  6. <shift + a> — включить режим редактирования и поставить курсор в конце линии
  7. dd — удалить линию, и запишет её в буфер
  8. o — включить режим редактирования, добавить пустую строку вниз и перевести туда курсор
  9. O — аналогично, но добавит строку вверх
  10. D — удалить все начиная с текущего курсора до конца строки и перевести курсор на 1 символ назад
  11. d — удаление вместе со следующим символом
    • $  - до конца линии
    • w -слова
    • e — текущего слова
  12. w — перемещение к первому символу следующего слова, b — тоже, только в обратную сторону
  13. e — перемещение к последнему символу текущего слова или следующего
  14. G  - в конец файла, gg — в начало файла
  15. <ctrl + O> — переместить курсор где был до редактирования
  16. :%s/old/new/g — заменить old слово на new в файле
  17. :%s/old/new/gc  - аналогично, но будет спрашивать подтверждение
  18. <shift + R> — replace mode, аналог набора текста при включенной клавише insert
  19. :r имя файла — вставить ниже текст из файла
  20.  $ — в конец линии
  21. <ctrl + G>- покажет линию где находится курсор
  22. <ctrl + u/d> — промотка половины экрана вперед, назад
  23. число + <shift + G> — перейти к линии
  24. Y — копировать в буфер
  25. p — вставить строку из буфера внизу
  26. P — аналогично, но на текущую строку

Визуальный режим:

  1. <shift + v> — выделить линию
  2. d  - удалить
  3. gv — выделить последнее выделяемое

Командный режим:

  1. /искомое — ищет строку, при последующем нажатии n или <shift + n> ищем вперед, назад соответственно
  2. newtab имя файла — откроет в новой вкладке содержимое файла, переход между табами gt/ gT
  3. firsttab, lasttab — no comments
  4. !команда — выйдет из редактора запустит в bash команду и вернется обратно

Хватит теории, покажу на примерах:

К примеру, вы редактируете php файл и хотите проверить его на синтаксис, вот команда:   !php -l %, в % — vim автоматически подставит текущее название файла. Чтобы облегчить себе жизнь отредактируйте ~/.vimrc вставив туда строки:

  • :synax on (включает подсветку кода)
  • :set number (отображает номер линии)

Дальше — больше, например вы хотите удалить 5 слов — d5w, удалить все начиная с 10 строки — 10G, <shift + v>, <shift + g>, d и все :) Сначала сложно и непривычно, но потом ко всему привыкаешь и начинаешь работать очень продуктивно