На свежеустановленном debian`е vim не поддерживает подсветку синтаксиса. Включаем подсветку следующим образом:
apt-get install vim
vi ~/.vimrc
в vimrc добавим следующие строки:
syntax on //чтобы работала подсветка
set number //чтобы отображались строки
теперь если вы попробуете редактировать к примеру .php файлы у вас будет подсветка — сильно выручает. Если все еще не заработало:
source ~/.bashrc //обновляем конфиг bash`a
vim
Горячие клавиши к Vim
StandardКогда надо быстро что-то подправить на серверах, не мучая IDE, vim очень пригодится. Для того чтобы привыкнуть уйдет может пару дней, но оно того стоит. У vim существуют 3 режима работы:
- Стандартный режим (по умолчанию, чтобы перейти в него из другого режима, нажмите Esc) — в нем можно выполнять команды
- Режим редактирования (включается по клавише i)
- Визуальный режим (клавиша v)
Внизу слева vim уведомит вас об используемом режиме. Для того чтобы выполнить команду нажмите двоеточие и название команды.
Стандартный режим:
- h, j, k, l перемещение по тексту, т.е. ↑, ←, →, ↓ соответственно, можно использовать обычные клавиши перемещения, но так медленней
- u — отменить, <ctrl + r > — команда обратная отменить
- <shift + U>, отменить/ вернуть прошлое действие, полезно когда нужно поменить лишь одно изменение
- ZZ или :wq сохранить и выйти
- CC очистить текущую линию и включить режим редактирования
- <shift + a> — включить режим редактирования и поставить курсор в конце линии
- dd — удалить линию, и запишет её в буфер
- o — включить режим редактирования, добавить пустую строку вниз и перевести туда курсор
- O — аналогично, но добавит строку вверх
- D — удалить все начиная с текущего курсора до конца строки и перевести курсор на 1 символ назад
- d — удаление вместе со следующим символом
- $ - до конца линии
- w -слова
- e — текущего слова
- w — перемещение к первому символу следующего слова, b — тоже, только в обратную сторону
- e — перемещение к последнему символу текущего слова или следующего
- G - в конец файла, gg — в начало файла
- <ctrl + O> — переместить курсор где был до редактирования
- :%s/old/new/g — заменить old слово на new в файле
- :%s/old/new/gc - аналогично, но будет спрашивать подтверждение
- <shift + R> — replace mode, аналог набора текста при включенной клавише insert
- :r имя файла — вставить ниже текст из файла
- $ — в конец линии
- <ctrl + G>- покажет линию где находится курсор
- <ctrl + u/d> — промотка половины экрана вперед, назад
- число + <shift + G> — перейти к линии
- Y — копировать в буфер
- p — вставить строку из буфера внизу
- P — аналогично, но на текущую строку
Визуальный режим:
- <shift + v> — выделить линию
- d - удалить
- gv — выделить последнее выделяемое
Командный режим:
- /искомое — ищет строку, при последующем нажатии n или <shift + n> ищем вперед, назад соответственно
- newtab имя файла — откроет в новой вкладке содержимое файла, переход между табами gt/ gT
- firsttab, lasttab — no comments
- !команда — выйдет из редактора запустит в bash команду и вернется обратно
Хватит теории, покажу на примерах:
К примеру, вы редактируете php файл и хотите проверить его на синтаксис, вот команда: !php -l %, в % — vim автоматически подставит текущее название файла. Чтобы облегчить себе жизнь отредактируйте ~/.vimrc вставив туда строки:
- :synax on (включает подсветку кода)
- :set number (отображает номер линии)
Дальше — больше, например вы хотите удалить 5 слов — d5w, удалить все начиная с 10 строки — 10G, <shift + v>, <shift + g>, d и все Сначала сложно и непривычно, но потом ко всему привыкаешь и начинаешь работать очень продуктивно