VIM

Установка последней версии VIM

sudo add-apt-repository ppa:pkg-vim/vim-daily
sudo apt-get upgrade && sudo apt-get install vim

Hotkeys

  • . - повторить последнюю команду
  • u - отменить последнее действие
  • gg - перейти вверх документа
  • G - перейти вниз документа
  • zz - прокрутить документ так, чтобы текущая строка была по центру
  • Ctrl+^ - переход к предыдущему буферу или файлу
  • di( - delete inside - удалить всё, внутри скобок. Вместо символа ( можно указывать любой другой, например { или "
  • ci( - change inside - тоже что и di, только с переходом в режим редактирования
  • vi( - выделить всё внутри скобок или любого другого символа.
  • gt - переход по табам
  • za - развернуть блок кода
  • zc - cвернуть блок кода
  • r<symbol> - заменить символ под курсором на <symbol>
  • cs ' " - change surrounding from ' to "
  • ds ' - delete surrounding
  • dst - delete surrounding tag
  • cst - change surrounding tag

Навигация и поиск по документу

Нажать на '/', ввести текст, нажать Enter. /keyword

n - переход с следующему результату поиска

Чтобы убрать убрать подсвеченные результаты нажать ,<space>

Ctrl+p - переход к файлу Ctrl+r - переход по тегам в файле Ctrl+e - переход к истории открытых файлов

Скопировать строку

Нажать V, для перехода в Visual Line Mode, далее y чтобы скопировать, перейти в нужное место в документе, нажать p для вставки.

Нажать yy для копирования строки, далее p для вставки.

Навигация по проекту

- - открывается список файлов в текущей дирректории файла. Если нажать второй раз - - переход на уровень вверх.

При открытом списке файлов:

d - создать дирректорию % - создать файл D - удалить дирректорию или файл <Leader>1 - открыть дерево папок для навигации

Навигация по тегам (ctags)

:!ctags -R --exclude=node_modules

<Leader>f - перейти к тегу

  • tn - tag next - перейти к следующему найденному по тегу методу
  • 'tp' - tag previous - перейти к предыдущему найденному методу
  • 'ts' - tag search - показать всё найденное по тегу

  • Ctrl+] - перейти к объвлению метода, который находится под курсором
  • Ctrl+^ - переход к предыдущему буферу или файлу

Split windows

  • sp - горизонтальный сплит
  • vsp - вертикальный сплит
  • Ctrl+(h|j|k|l) - навигация по сплитам

Laravel

  • <Leader>lr - Редактировать файл routes.php
  • rg-Tab - route get
  • rp-Tab - route post

PHP

  • ,n - Extract namespace
  • ,nf - Make full namespace
  • <Leader>su - Сортировка списка namespace