Vim
Немного про Vim#
Режимы#
Обычный режим (Normal)#
- Режим, в который Vim попадает сразу после запуска
- Выполняются команды редактирования, навигации и копирования
нажать Esc
Выйти в обычный режим можно нажатием Esc
Режим вставки (Insert mode)#
- Режим, который позволяет вводить текст как в обычных текстовых редакторах (Выход из режима - нажатие
Esc)
Режим команд (Command mode)#
- Для выполнения команд: сохранение, выход, поиск и замена (Выход - нажатие
Esc)
Режим визуального выделения (Visual mode)#
- Для выделения текста для копирования, удаления или редактирования (Выход - нажатие
Esc)
Есть ещё режимы, но мне неизвестны сценарии, в которых они могут быть полезны.
Шорткаты#
Нормальный режим -> режим вставки#
i- вставка перед курсоромI- втсавка в начало строкиA- вставка в конец строкиo- создаст новую строку ПОД курсором, переместит на неё фокусO- создаст новую строку НАД курсором, переместит на неё фокус
Нормальный режим#
G- перейти в конец файлаgg- перейти в начало файла0- переместиться в начало строки^- переместиться к первому непробельному символу в начале строки$- переместиться в конец строкиw- перейти в начало следующего словаdw- удалить слово справа от курсораb- перейти в начало предыдущего словаdb- удалить слово слева от курсораx- удалить символ под курсоромyyp- продублировать строку внизdaw- удалит слово включая пробелciw- удалить текущее слово и перейти в режим вставкиdd- удалить строкуd$- удалить все, что после курсораdG- удалить все, что под курсором до конца файлаd<n>j- удалить n строк внизu- отменить дейтсвиеctrl r- вернуть действиеyy- копировать строкуp- вставить после курсора=- автоформатирование кодаctrl u- подняться на пол страницы вверхctrl d- опуститься на пол страницы вниз3j- вниз на 3 строки3k- вверх на 3 строки3dd- удалить на 3 строки вниз3yy- копировать 3 строки
Буферы Vim
В Vim буферы (buffers) не связаны напрямую с системным буфером обмена (clipboard)
Режим визульного выделения#
Чтобы перейти в него, нажать:
V- выделение строками (чаще всего использую)v- выделение посимвольноctrl + v- выделение блоками (колонками):'<,'>s/^/# /- закомментировать диапазон строк
y- копировать выделенный текстd- вырезать выделенноеx- удалить выделенноеu- сделать выделенный текст строчными буквамиU- сделать выделенный текст заглавными буквами><- сдвиг текста вправо, влево
Режим команд#
Чтобы перейти в режим команд, нажать shift :
:
В режиме команд каждая команда начинается с :
wq- сохранить и выйтиq!- выйти без сохраненияw <filename>- сохранить файл с именем<filename>e <filename>- открыть файл с именем<filename>r <filename>- вставить содержимое<filename>saveas <filename>- сохранить файл с новым именем<filename>bn- переход к следующему буферуbp- переход к предыдущему буферуn- перейти к строкеnset number- показать номера строкset nonumber- скрыть номера строк%d_- удалить содержимое файла без копирования в буфер
Чтобы поменять кодировку файла в Vim, выполнить следующие действия:
- перейти в Режим команд, нажать
shift + : set fileencoding?- кодировка текущего файлаe ++enc=utf-8- переоткроет файл в нужной кодировкеset fileencoding=utf-8- устанавливает кодировку файла для сохраненияwq- сохранить и выйти
Поиск#
/word- найтиwordвперёд?word- найтиwordназад
Далее, нажать enter
n- перейти к следующему вхождениюN- перейти к предыдущему вхождению*- поиск слова на котором курсор ниже по тексту (переходы по вхождениям аналогично)#- поиск слова на котором курсор выше по тексту
mc (Midnight Commander)#
Esc Esc- отмена+- выделение-- снять выделениеalt enter- имя файла на котором фокус появиться в терминале mcalt a- полный путь к текущей директории появится в треминале mcalt p- вставить предыдущую команду в терминал mcalt t- меняем отображение файлов в mcalt h- история команд в терминале mcalt e- изменить кодировку файлаalt i- продублировать окно справа налевоalt o- неактивная панель переходит в каталог на который указывает активная панельctrl cpace- размер каталога*- выделяет файлыctrl u- поменять правую и левую панель местамиctrl r- обновить данные в панели mc (если новые файлы добавляются)ctrl s- поиск в панели mcctrl \- панель быстрого доступа для каталоговctrl x + i- информация о файлеctrl x + q- быстрый просмотр файла (файл откроется на чтение в правом окне)ctrl t- выделить файлmc -v <file_name>- открыть файл для просмотра mc view (из консоли)mc -e <file_name>- открыть файл для редактирования mc edit (из консоли)mc -s <file_name>- открыть mc для медленных соединений (не проверял)
Режим просмотра (F3 или alt+3)#
space- в режиме просмотра пролистать на страницу внизb- в режиме просмотра пролистать на страницу вверхPgUp- пролистать на пол страницы вверхPgGd- пролистать на пол страницы внизctrl shift f- просмотр лога в реальном времени в режме просмотраg- перейти в начало файлаG-перейти в конец файла
Поиск#
/ - поиск в файле
n - перейти к следующему вхождению
shift n - перейти к предыдущему вхождению