Содержание

Основные сочетания клавишей vi, vim

Для использование vim, как среды разработки для Python, vim должен быть собран с поддержкой Python.

# apt install vim-nox
# apt install vim-python

Режимы работы vim

  1. Нормальный режим. По умолчанию Vim начинает свою работу в нормальном режиме, который иногда также называют командным. Нажатие клавиш в этом режиме воспринимается как команды, такие, например, как скопировать, удалить или переместить текст. Команды бывают «односимвольные», так, например, нажатие $ приведёт к перемещению курсора в конец строки, нажатие клавиши 0 — в начало, D (в верхнем регистре) — к удалению («delete») части текущей строки от текущего положения курсора до конца, С (в верхнем регистре) — замене («change») части текущей строки от текущего положения курсора до конца и т. д. Некоторые команды для своей работы будут ждать дальнейшего продолжения ввода, например, fc — быстрое перемещение курсора следующему символу c в строке, после нажатия f Vim будет ждать набора следующего символа чтобы использовать его в качестве искомого (с). После нажатия y («yank»), d, c и других подобных «управляющих» клавиш Vim будет ожидать дальнейшего ввода команд, задающих объект над которым будет произведено действие (копирование, удаление или замены соответственно). Так, daw удалит текущее слово под курсором («delete ambient word»), а d$ — все символы начиная с текущего положения курсора и заканчивая концом строки. Нормальный режим — это центральный режим, из этого режима осуществляется переход во все остальные режимы. Из любого режима в командный режим можно перейти, дважды нажав клавишу Escape (в большинстве случаев достаточно одного нажатия).
  2. Режим непосредственной вставки текста. В этом режиме Vim работает так же как и большинство «обычных» текстовых редакторов. Набранные символы не воспринимаются как команды, а вставляются в существующий текст. Для вставки, удаления, изменения, автодополнения текста также могут использоваться клавиатурные сочетания (<Ctrl-R> и др.) Для возврата в нормальный режим следует нажать клавишу Escape.
  3. Режим командной строки. Этот режим вызывается нажатием символа : двоеточия из командного режима. За двоеточием следует сложная команда, например такая как поиск или замена, после ввода которой она передаётся на исполнение нажатием Enter. После того как команда выполнена, редактор возвращается в нормальный режим. К этому режиму также относятся команды / (поиск вперёд по тексту), ? (поиск назад по тексту) и команда-фильтр ! (передача данных внешнему фильтру).
  4. Визуальный режим. Визуальный режим отсутствовал в Vi и впервые появился в Vim. Этот режим чем-то напоминает командный. С помощью специальных управляющих команд в сочетании со стрелками и командами навигации можно посимвольно, построчно или в виде блока выделить область текста. Затем к выделенной области можно применять команды нормального режима. Редактирование в этом режиме проще в сравнении с нормальным режимом, потому что чётко видно, к какому блоку текста будет применяться вызванная команда редактирования.

Основные сочетания клавишей vi, vim

Файл настройки: ~/.vimrc Можно редактировать файлы через сеть, например

:e <scp|ftp|ftps>://user@host/path/to/the/file.txt
:Ex или :e ./ - файловый менеджер

Как отобразить/скрыть номер строк в Vi (vim)

Перемещение по файлу в редакторе vi

После загрузки Vim, на экране вы увидите часть загруженного вами текстового файла. Загрузившись, Vim находится в «командном режиме» - один из основных режимов. Это значит, что если вы нажмете клавишу <l> (строчная L), вместо появления «l» на месте курсора вы увидите, что курсор сдвинулся на один символ вправо. В командном режиме знаки, набираемые на клавиатуре, используются как команды для Vim, а не как помещаемые в текст символы. Команды перемещения - один из наиболее важных типов команд. Вот некоторые из них:

Для перемещения курсора нажмите клавиши h,j,k,l так, как показано ниже:
             ^
             k          Советы: Клавиша h находится слева и перемещает влево.
       < h       l >            Клавиша l находится справа и перемещает вправо.
             j                  Клавиша j похожа на стрелку "вниз".
             v
 
<Ctrl-f> - на страницу (экран) вниз;
<Ctrl-b> - на страницу (экран) верх;
<Ctrl-d> - на пол страницы (экрана) вниз;
<Ctrl-u> - на пол страницы (экрана) верх;
<Ctrl-y> - на строку вниз, без изменения положения курсора;
<Ctrl-e> - на строку верх, без изменения положения курсора;
0 («ноль») - в начало текущей строки;
^ - в начало текущей строки (к первому непробельному символу);
$ - в конец текущей строки;
w - на слово вправо;
b - на слово влево;
W - до пробела вправо;
B - до пробела влево;
} - абзац вниз;
{ - абзац вверх;
gg - перейти в начало файла;
G - перейти в конец файла;
<number>G - перейти на конкретную строку <number>;
/<text><CR> - перейти к <text>;
?<text><CR> - то же самое, но искать назад;
n - повторить поиск;
N - повторить поиск назад;
[[ - в начало функции;
'' - к месту выполнения команды [[