Vim – свободный режимный текстовый редактор, созданный на основе более старого vi.
Одна из главных особенностей редактора ‒ применение двух основных, вручную переключаемых, режимов ввода: командного (после запуска редактор находится в нем) и текстового (режим непосредственного редактирования текста).
Vim включает обширную справочную систему, доступ к которой можно получить с помощью команды. Темы включают команды, параметры конфигурации, привязки клавиш, плагины и т. д.
Контактная информация:
Официальный сайт
Лицензия:
custom:vim
Синтаксис:
vim [параметры] [файл ..] редактирование указанных файлов
Параметры:
Параметр | Описание |
---|---|
-- | Далее указываются только имена файлов |
-v | Режим Vi (как "vi") |
-e | Режим Ex (как "ex") |
-E | Улучшенный режим Ex |
-s | Тихий (пакетный) режим (только для "ex") |
-d | Режим отличий (как "vimdiff") |
-y | Простой режим (как "evim", безрежимный) |
-R | Только для чтения (как "view") |
-Z | Ограниченный режим (как "rvim") |
-m | Без возможности сохранения изменений (записи файлов) |
-M | Без возможности внесения изменений в текст |
-b | Двоичный режим |
-l | Режим Lisp |
-C | Режим совместимости с Vi: 'compatible' |
-N | Режим неполной совместимости с Vi: 'nocompatible' |
-V[N][файл] | Выводить дополнительные сообщения [уровень N] [записывать в файл] |
-D | Режим отладки |
-n | Без своп-файла, используется только память |
-r | Вывести список своп-файлов и завершить работу |
-r | (с именем файла) Восстановить аварийно завершённый сеанс |
-L | То же, что и -r |
-A | Запуск в Арабском режиме |
-H | Запуск в режиме "Иврит" |
-T <терминал> | Назначить указанный тип <терминала> |
--not-a-term | Не предупреждать при вводе/выводе не в терминал |
--ttyfail | Выйти при вводе/выводе не в терминал |
-u | Использовать вместо любых файлов .vimrc |
--noplugin | Не загружать сценарии модулей |
-p[N] | Открыть N вкладок (по умолчанию: по одной на каждый файл) |
-o[N] | Открыть N окон (по умолчанию: по одному на каждый файл) |
-O[N] | То же, что и -o, но с вертикальным разделением окон |
+ | Начать редактирование в конце файла |
+ | Начать редактирование в строке с номером |
--cmd <команда> | Выполнить <команду> перед загрузкой файла vimrc |
-c <команда> | Выполнить <команду> после загрузки первого файла |
-S <сеанс> | Прочитать сценарий <сеанса> после загрузки первого файла |
-s <сценарий> | Прочитать команды Обычного режима из файла <сценария> |
-w <сценарий> | Добавлять все введённые команды в файл <сценария> |
-W <сценарий> | Записать все введённые команды в файл <сценария> |
-x | Редактирование зашифрованных файлов |
--startuptime <файл> | Записать временную метку о запуске в <файл> |
-i | Использовать вместо .viminfo файл |
--clean | Неполная совместимость с Vi, Vim по умолчанию, без модулей, без viminfo |
-h или --help | Вывести справку (это сообщение) и завершить работу |
--version | Вывести информацию о версии Vim и завершить работу |
В Vim существуют четыре основных режима работы:
По умолчанию Vim начинает свою работу в основном режиме, который также называют командным. Нажатие клавиш в этом режиме воспринимается как команды (копирования, удаления, перемещения текста и других команд).
Основной режим предназначен для просмотра файлов, ввода команд и перехода из него в другие режимы. Из любого режима в командный режим можно перейти, нажав (в некоторых случаях дважды) клавишу Esc.
При нажатии клавиши : происходит переход в режим командной строки Vim, в которой можно вводить команды. За двоеточием следует сложная команда (например, поиска или замены), которая после ввода передается на исполнение нажатием клавиши Enter.
После выполнения команды редактор возвращается в нормальный режим. К этому режиму также относятся команды поиска дальше по тексту /, поиск назад по тексту (?) и команда-фильтр ! для передачи данных внешнему фильтру.
Другие примеры команд:
Для перехода из командного режима в режим непосредственного редактирования текста можно нажать клавишу i (для начала вставки текста на месте курсора) или клавишу a (для начала вставки текста после курсора).
В этом режиме по умолчанию набранные символы не воспринимаются как команды, а вставляются в существующий текст. Однако даже в этом режиме можно задать особые действия редактора, выполняемые при нажатии определенных клавиш, или их сочетаний.
Для вставки, удаления, изменения и автодополнения текста могут использоваться клавиатурные сочетания вида Ctrl + R.
Визуальный режим предназначен в первую очередь для выделения блоков текста. Для перехода используются следующие сочетания клавиш:
К выделенным фрагментам текста затем можно применить команды нормального режима
(например, удаление выделенного текста или его замена).
Перечисленные ниже команды вводятся в основном режиме. Все они имеют команднострочные аналоги и могут быть легко переопределены.
Для перехода на строку с номером n необходимо воспользоваться командой:
G
Для перехода к началу текста необходимо воспользоваться командой:
1G
Для перехода к концу текста необходимо воспользоваться командой:
$G
Для перехода на n символов в нужную вам сторону можно использовать клавиши со стрелками.
Используются для отметки позиции и быстрого к ней перехода. Метки нижнего регистра действительны в пределах данного файла, метки верхнего регистра действуют во всех открытых файлах. Список всех меток можно получить следующей командой:
Marks
При ведении группы проектов нередко желательно сохранить текущее состояние и настройки редактора, чтобы в дальнейшем продолжить работу с того же места. Для этого предназначены сессии, которые можно создать следующей командой:
:mksession /path/to/Session.vim
Сессии читаются следующей командой:
:so /path/to/Session.vim
Сохранение текущего контекста (например, положение курсора в тексте) выполняется
следующей командой:
:mkview
Для открытия сохраненного состояния используется следующая команда:
:loadview
Установить можно отдельным модулем или пакетом:
Для установки следует воспользоваться утилитой "Установка и удаление программ".
Модуль, необходимый для установки:
Для установки следует воспользоваться утилитой "Установка и удаление программ".
Пакет, необходимый для установки:
Внимание! Если система загружена в режиме полного сохранения, то внесенные изменения в систему будут сохранены. Если режим загрузки другой, то рекомендуется воспользоваться "Сохранением изменений".