Vim — Введение
Vim editor — один из самых популярных текстовых редакторов, которые мы используем сегодня. Это клон редактора Vi, написанный Брэмом Муленааром. Это кроссплатформенный редактор, доступный на большинстве популярных платформ, таких как Windows, Linux, Mac и другие варианты UNIX. В этой главе мы обсудим следующие пункты —
- Вступление
- Особенности Vim
- Почему Vim был создан?
Вступление
Vim является аббревиатурой от Vi IM доказано. Это бесплатный текстовый редактор с открытым исходным кодом, написанный Bram Moolenaar. Впервые он был выпущен в 1991 году для вариантов UNIX, и его основной целью было усовершенствовать редактор Vi, выпущенный еще в 1976 году.
Vim считается клоном Vi редактора. Как и Vi, это также командно-ориентированный редактор. Одно из преимуществ изучения Vim — это доступно везде. Возьмите любой вариант UNIX, такой как Linux, Mac, HP-UX, AIX и многие другие, Vim по умолчанию там. Vim традиционно не имеет графического интерфейса, но теперь есть отдельный установщик, называемый gVim, который предоставляет графический интерфейс.
Особенности Vim
В этом разделе обсуждаются некоторые важные функции Vim —
-
Его память занимает очень мало места
-
Это командный центр. Вы можете выполнить сложную текстовую задачу с помощью нескольких команд
-
Он легко настраивается и использует простой текстовый файл для хранения своей конфигурации.
-
Для Vim доступно множество плагинов. Его функциональность может быть расширена с помощью этих плагинов.
-
Он поддерживает несколько окон. С помощью этой функции экран можно разбить на несколько окон
-
Так же, как несколько окон, он также поддерживает несколько буферов
-
Он поддерживает несколько вкладок, что позволяет работать с несколькими файлами
-
Он поддерживает функции записи, которые позволяют записывать и воспроизводить команды Vim в повторяющемся порядке
Его память занимает очень мало места
Это командный центр. Вы можете выполнить сложную текстовую задачу с помощью нескольких команд
Он легко настраивается и использует простой текстовый файл для хранения своей конфигурации.
Для Vim доступно множество плагинов. Его функциональность может быть расширена с помощью этих плагинов.
Он поддерживает несколько окон. С помощью этой функции экран можно разбить на несколько окон
Так же, как несколько окон, он также поддерживает несколько буферов
Он поддерживает несколько вкладок, что позволяет работать с несколькими файлами
Он поддерживает функции записи, которые позволяют записывать и воспроизводить команды Vim в повторяющемся порядке
Почему Vim был создан
Vim основан на оригинальном редакторе Vi, который был создан Биллом Джой в 1976 году. В течение 90-х годов Vi не хватало в так называемой войне редакторов, существовавшей между редактором Vi и Emacs. Поэтому Брэм реализовал множество недостающих функций, которые сообщество Emacs использовало в качестве аргумента, почему Emacs лучше, чем Vi / Vim.
Vim — Установка и настройка
Vim — это легкий пакет, и его установка действительно проста. В этой главе мы обсудим следующие пункты —
- Установка на платформе Windows
- Установка на Linux на основе Debian
- Установка на основе RPM Linux
Установка на платформе Windows
У Vim нет особых требований. Это простой пакет программного обеспечения, который обеспечивает все зависимости.
Монтаж
-
Чтобы скачать Vim, посетите vim.org
-
Нажмите на опцию загрузки на левой панели
-
Нажмите на ПК — MS-DOS и MS-Windows вариант
-
Загрузите установщик .exe с этой страницы. На момент написания этого учебника имя установщика было gvim80.exe
-
Дважды щелкните установщик и следуйте инструкциям на экране для завершения установки
Чтобы скачать Vim, посетите vim.org
Нажмите на опцию загрузки на левой панели
Нажмите на ПК — MS-DOS и MS-Windows вариант
Загрузите установщик .exe с этой страницы. На момент написания этого учебника имя установщика было gvim80.exe
Дважды щелкните установщик и следуйте инструкциям на экране для завершения установки
конфигурация
Vim хранит свою конфигурацию в простом текстовом файле, а именно _vimrc, и находится в домашнем каталоге пользователя.
-
Чтобы найти домашний каталог текущего пользователя, выполните в терминале следующую команду —
Чтобы найти домашний каталог текущего пользователя, выполните в терминале следующую команду —
$ echo %userprofile%
-
Перейдите в домашний каталог и создайте новый файл, а именно _vimrc. Убедитесь, что этот файл не имеет расширения.
-
Откройте этот файл в текстовом редакторе, введите следующий текст и сохраните его —
Перейдите в домашний каталог и создайте новый файл, а именно _vimrc. Убедитесь, что этот файл не имеет расширения.
Откройте этот файл в текстовом редакторе, введите следующий текст и сохраните его —
set nu
-
Теперь Vim будет показывать номера строк при открытии файла. Мы добавим больше опций в этот файл позже.
Теперь Vim будет показывать номера строк при открытии файла. Мы добавим больше опций в этот файл позже.
Установка на Linux на основе Debian
Установка на платформе Linux довольно проста по сравнению с Windows. В этом разделе описывается установка и настройка в Linux на основе Debian.
Монтаж
-
Выполните команду ниже в терминале —
Выполните команду ниже в терминале —
$ sudo apt-get update $ sudo apt-get install vim
-
Чтобы убедиться, что Vim правильно установлен, выполните следующую команду:
Чтобы убедиться, что Vim правильно установлен, выполните следующую команду:
$ which vim
-
Это должно напечатать местоположение двоичного файла Vim. В моем случае это было —
Это должно напечатать местоположение двоичного файла Vim. В моем случае это было —
/usr/bin/vim
конфигурация
Vim хранит свою конфигурацию в простом текстовом файле, а именно .vimrc, и он находится в домашнем каталоге пользователя.
-
Чтобы найти домашний каталог текущего пользователя, выполните в терминале следующую команду —
Чтобы найти домашний каталог текущего пользователя, выполните в терминале следующую команду —
$ echo $HOME
-
Перейдите в домашний каталог и создайте новый файл, а именно .vimrc. Убедитесь, что этот файл не имеет расширения.
-
Откройте этот файл в текстовом редакторе, введите следующий текст и сохраните его —
Перейдите в домашний каталог и создайте новый файл, а именно .vimrc. Убедитесь, что этот файл не имеет расширения.
Откройте этот файл в текстовом редакторе, введите следующий текст и сохраните его —
set nu
-
Теперь Vim будет показывать номера строк при открытии файла. Мы добавим больше опций в этот файл позже.
Теперь Vim будет показывать номера строк при открытии файла. Мы добавим больше опций в этот файл позже.
Установка на основе RPM Linux
В этом разделе описывается установка и настройка в Linux на основе RPM.
Монтаж
-
Выполните команду ниже в терминале —
Выполните команду ниже в терминале —
$ su - $ yum install vim
-
Чтобы убедиться, что Vim правильно установлен, выполните следующую команду:
Чтобы убедиться, что Vim правильно установлен, выполните следующую команду:
$ which vim
-
Это должно напечатать местоположение двоичного файла Vim. В моем случае это было —
Это должно напечатать местоположение двоичного файла Vim. В моем случае это было —
/usr/bin/vim
конфигурация
Vim хранит свою конфигурацию в простом текстовом файле, а именно .vimrc, и он находится в домашнем каталоге пользователя.
-
Чтобы найти домашний каталог текущего пользователя, выполните в терминале следующую команду —
Чтобы найти домашний каталог текущего пользователя, выполните в терминале следующую команду —
$ echo $HOME
-
Перейдите в домашний каталог и создайте новый файл, а именно .vimrc. Убедитесь, что этот файл не имеет расширения.
-
Откройте этот файл в текстовом редакторе, введите следующий текст и сохраните его —
Перейдите в домашний каталог и создайте новый файл, а именно .vimrc. Убедитесь, что этот файл не имеет расширения.
Откройте этот файл в текстовом редакторе, введите следующий текст и сохраните его —
set nu
-
Теперь Vim будет показывать номера строк при открытии файла. Мы добавим больше опций в этот файл позже.
Теперь Vim будет показывать номера строк при открытии файла. Мы добавим больше опций в этот файл позже.
Vim — это друзья
Vim — клон оригинального редактора Vi. В этой главе мы обсудим другие клоны Vi. Основная цель этой главы — узнать о других клонах и их совместимости с оригинальным редактором Vi.
В этой главе мы обсудим следующие пункты —
- VI
- Стиви
- Элвис
- NVI
- подлый
- Совместимость с оригинальным Vi
VI
Vi — это сокращение от Visual. Это экранно-ориентированный текстовый редактор, изначально созданный для UNIX. Оригинальный код для Vi был написан Биллом Джой в 1976 году и впервые выпущен на платформе BSD. Vi был расширением редактора ed, который был наиболее распространенным в то время.
Vim был первым редактором, представившим несколько режимов. Существует отдельный режим для редактирования текста, выбора текста и выполнения команды. Редактор Vim поддерживает все эти режимы. В следующих разделах этого руководства описываются эти режимы.
Стиви
Редактор Stevie был разработан для платформы Atari ST. Это было выпущено в 1987, это сокращение от ST Editor для энтузиастов VI.
Это было очень просто и предоставило только очень маленькое подмножество оригинального редактора Vi. Тем не менее, он предоставил знакомую среду для пользователей, перемещающихся на платформе Atari ST.
Элвис
Главным намерением Элвиса было снять ограничение редактора Стиви. Стиви раньше загружал весь файл в ОЗУ, Элвис снял это ограничение, введя буферы. Также он добавил некоторые функции, такие как подсветка синтаксиса, поддержка нескольких окон, поддержка сети и простой графический интерфейс.
NVI
nvi означает новый Vi. Это было результатом лицензионного спора между AT & T lab и Computer Science Research Group (CSRC) в Калифорнийском университете, Беркли. Vi был основан на редакторе ed и имел лицензию AT & T, которая ограничивала их распространение Vi с BDS. Поэтому они переписали Vi и выпустили его под лицензией BSD.
напор
Vim — улучшенная версия Vi, в которую добавлено множество функций, в которых Vi отстает. Было добавлено много полезных функций, таких как —
- Несколько окон / вкладок / буферов
- Введение в скриптовый язык Vim
- Подсветка синтаксиса для более чем 200 языков
- Интеграция с компиляторами, интерпретаторами и отладчиками
подлый
Vile — это аббревиатура, обозначающая Vi, как Emacs, и это была попытка собрать популярные функции из обоих редакторов и объединить их в один. Несколько популярных функций Vile —
- Один режим редактирования для каждого типа файла
- Введение подлого процедурного языка
- Именованные функции для привязанных клавиш по выбору пользователя
Совместимость с Vioriginal Vi
Хотя вышеупомянутые редакторы рассматриваются как клоны Vi, они не на 100% совместимы с оригинальными Vi. Ниже таблица показывает более подробную информацию об их совместимости —
клон | Vi совместимость | Заметки |
---|---|---|
СТИВИ | 10% | Ограниченные возможности были общими |
подлый | 10% | Ограниченные возможности и режимы Vi были распространены |
Элвис | 80% | Большие особенности были общими |
NVI | 95% | Большие особенности были общими |
напор | 99% | Почти идентичен Vi с некоторыми дополнительными функциями |
Vim — Знакомимся
Начиная с этого раздела, мы запачкаем руки Vim. В этой главе мы обсудим следующие пункты —
-
Запустить Vim
-
Режимы Vim
-
Создать новый файл
-
Просмотр файла в режиме только для чтения
-
Изменить существующий файл
Запустить Vim
Режимы Vim
Создать новый файл
Просмотр файла в режиме только для чтения
Изменить существующий файл
Запустить Vim
Vim немного отличается от сегодняшнего редактора на основе графического интерфейса. Его можно запускать и использовать как из графического интерфейса, так и из терминала.
Использовать графический лаунчер
-
Чтобы запустить Vim из графического модуля запуска, просто дважды щелкните значок gVim. Откроется окно редактора следующим образом:
Чтобы запустить Vim из графического модуля запуска, просто дважды щелкните значок gVim. Откроется окно редактора следующим образом:
Используйте терминал
Использование Vim из терминала будет одинаково на платформе Windows и Linux. Выполните следующие шаги, чтобы запустить и выйти из Vim с терминала —
-
Откройте терминал и введите команду vim следующим образом:
Откройте терминал и введите команду vim следующим образом:
$ vim
-
Это откроет Vim в терминале следующим образом —
Это откроет Vim в терминале следующим образом —
-
Чтобы закрыть это, нажмите клавишу Esc, а затем двоеточие (:) и q. В Vim команда q означает выход. Эта команда будет показана в левом нижнем углу самого редактора —
Чтобы закрыть это, нажмите клавишу Esc, а затем двоеточие (:) и q. В Vim команда q означает выход. Эта команда будет показана в левом нижнем углу самого редактора —
Режимы Vim
Vim поддерживает несколько режимов. В этом разделе обсуждаются некоторые важные режимы, которые будут использоваться на ежедневной основе.
Командный режим
Это режим по умолчанию, в котором запускается Vim. Мы можем вводить команды редактора в этом режиме. В этом режиме мы можем использовать различные команды, такие как копирование, вставка, удаление, замена и многое другое. Мы обсудим эти команды в следующих разделах.
ПРИМЕЧАНИЕ. — Здесь и далее любая команда Vim без двоеточия указывает, что мы выполняем эту команду в командном режиме.
Режим вставки
Вы можете использовать этот режим для ввода / редактирования текста. Чтобы переключиться с команды по умолчанию на режим вставки, нажмите клавишу i. Текущий режим будет отображаться в левом нижнем углу редактора.
Мы можем ввести любой текст, когда мы находимся в режиме вставки. Ниже изображение показывает это —
Используйте клавишу Escape, чтобы переключиться обратно в командный режим из этого режима.
Режим командной строки
Этот режим также используется для ввода команд. Команды в этом режиме начинаются с двоеточия (:). Например, в предыдущем разделе команда выхода была введена в этом режиме. Мы можем перейти в этот режим либо из командного, либо из режима вставки.
-
Чтобы переключиться из командного режима в этот режим, просто введите двоеточие
-
Для переключения из режима вставки в этот режим нажмите Escape и введите двоеточие
Чтобы переключиться из командного режима в этот режим, просто введите двоеточие
Для переключения из режима вставки в этот режим нажмите Escape и введите двоеточие
На изображении ниже двоеточие слева внизу указывает режим строки.
ПРИМЕЧАНИЕ. — Здесь и далее любая команда Vim, начинающаяся с двоеточия, указывает, что мы выполняем эту команду в режиме командной строки.
Визуальный режим
В этом режиме мы можем визуально выделять текст и запускать команды на выбранных разделах.
-
Для переключения из командного режима в визуальный режим введите v
-
Чтобы переключиться из любого другого режима в визуальный режим, сначала вернитесь в командный режим, нажав клавишу Escape, а затем введите v, чтобы переключиться в визуальный режим.
Для переключения из командного режима в визуальный режим введите v
Чтобы переключиться из любого другого режима в визуальный режим, сначала вернитесь в командный режим, нажав клавишу Escape, а затем введите v, чтобы переключиться в визуальный режим.
В нижнем левом углу изображения показан визуальный режим.
Создать новый файл
Выполните следующие шаги, чтобы создать и сохранить новый файл —
-
Выполните следующую команду, чтобы открыть Vim
Выполните следующую команду, чтобы открыть Vim
$ vim
-
Введите следующую команду в Vim
Введите следующую команду в Vim
:edit message.txt
-
Переключиться в режим вставки
Он перезагрузит файл, если он уже существует
Он перезагрузит файл, если он уже существует
Переключиться в режим вставки
i
-
Введите текст
-
Вернитесь в командный режим
Введите текст
Вернитесь в командный режим
Esc
-
Сохранить изменения в файл
Сохранить изменения в файл
:w
Теперь файл message.txt будет создан.
-
Выйти из Vim
Выйти из Vim
:q
Открыть файл в режиме только для чтения
Используйте параметр –R, чтобы открыть файл в режиме только для чтения.
$ vim -R message.txt
В нижнем левом углу изображения показан режим только для чтения —
В качестве альтернативы вы можете использовать команду просмотра для достижения того же результата.
$ view message.txt
Изменить существующий файл
Выполните следующие шаги для редактирования существующего файла —
-
Открыть файл с помощью Vim
Открыть файл с помощью Vim
$ vim message.txt
-
Переключитесь в режим вставки и введите текст там.
Переключитесь в режим вставки и введите текст там.
i
-
Выйти из редактора без сохранения изменений
Выйти из редактора без сохранения изменений
:q!
-
Сохраните изменения и выйдите из редактора, используя следующую команду —
ИЛИ ЖЕ
ИЛИ ЖЕ
Сохраните изменения и выйдите из редактора, используя следующую команду —
:wq
Vim — Получение справки
Vim — многофункциональный редактор, поэтому запомнить все об этом будет сложно. Но не нужно беспокоиться, мы всегда можем обратиться за помощью. К счастью, эта помощь предоставляется самим Vim.
В этой главе мы обсудим следующие пункты —
- Доступ к справочному руководству
- Помощь по конкретной теме
- Поиск справочной фразы в руководстве
- Доступ к онлайн-справке
Доступ к справочному руководству
Справочное руководство поставляется с самим редактором Vim, и оно действительно всеобъемлющее. Для доступа к справке выполните команду ниже —
:help
Помощь по конкретной теме
Справочное руководство покажет всю справку о Vim. Но что, если, мы заинтересованы только в определенной теме. Vim также предоставляет команду для этого со следующим синтаксисом
:help <topic-name>
В приведенной выше команде замените <topic-name> темой, в которой вы заинтересованы. Чтобы получить доступ к справке о режиме vim, выполните следующую команду
:help modes
Поиск справочной фразы в руководстве
Вы можете искать конкретную тему, только если вы знаете ее название. Но что, если, вы не знаете точное название темы справки. В этом случае вы можете использовать следующую команду —
:helpgrep <phrase>
Например, для доступа к справке о навигации в Vim выполните команду ниже
:helpgrep navigation
Доступ к онлайн-справке
Vim также предоставляет онлайн помощь. Чтобы получить доступ к онлайн-справке —
-
Посетите vim-help URL
-
Кроме того, вы также можете обратиться к документации vim-docs.
Посетите vim-help URL
Кроме того, вы также можете обратиться к документации vim-docs.
Vim — Редактирование
Vim предоставляет много команд, которые делают функциональность редактирования действительно мощной. В этой главе мы обсудим следующие пункты —
- Вставить
- присоединять
- Открыть новую линию
- Замена
- + Изменить
- замещать
- Присоединиться
Вставить текст перед курсором
Чтобы вставить текст перед курсором, выполните следующие действия:
- Чтобы вставить текст перед курсором, выполните следующие действия.
- Переключиться в режим вставки
i
Вставить текст в начале строки
Предположим, вы находитесь в середине строки и хотите вставить текст в начале текущей строки, а затем выполните следующие шаги:
- Переключиться в командный режим
Esc
- Активировать режим вставки
I
Это действие переместит курсор в начало текущей строки и переключит Vim в режим вставки.
Добавить текст после курсора
Чтобы добавить текст после курсора, выполните следующие шаги
- Переключитесь в командный режим и переместите курсор в соответствующую позицию
Esc
- Переключиться в режим вставки
a
Это действие переместит курсор на одну позицию вперед и переключит Vim в режим вставки.
Добавить текст в конце строки
Предположим, вы находитесь в середине строки и хотите добавить текст в конце текущей строки, а затем выполните следующие шаги:
- Переключиться в командный режим
Esc
- Переключиться в режим вставки
A
Это действие переместит курсор в конец строки и переключит Vim в режим вставки.
Открыть новую строку под курсором
Предположим, вы находитесь в середине строки и хотите открыть новую строку ниже текущей строки, а затем выполните следующие шаги:
- Переключиться в командный режим
Esc
- Переключиться в режим вставки
o
Это действие вставит пустую строку ниже текущей строки и переключит Vim в режим вставки
Открыть новую строку над курсором
Предположим, вы находитесь в середине строки и хотите открыть новую строку над текущей строкой, а затем выполните следующие шаги:
- Переключиться в командный режим
Esc
- Переключиться в режим вставки
o
Это действие вставит пустую строку над текущей строкой и переключит Vim в режим вставки
Заменить текст
Предположим, вы хотите заменить один символ, а затем выполнить следующие шаги:
- Переключиться в командный режим
Esc
- Переместить курсор в соответствующую позицию
- Переключиться в режим вставки
s
Это действие удалит символ под курсором и переключит Vim в режим вставки. Чтобы заменить использование всей строки —
s
Это действие удалит всю строку и переключит Vim в режим вставки.
Изменить текст
Допустим, вы хотите изменить текст в текущей строке, а затем выполнить следующие шаги:
- Переключиться в командный режим
Esc
- Выполните следующую команду —
cc
Это похоже на действие замены с использованием S
Чтобы изменить текст с текущей позиции курсора, выполните следующую команду
C
Это действие удалит текст после текущей позиции курсора и переключит Vim в режим вставки.
Заменить текст
Чтобы заменить один символ, выполните следующие действия:
- Переключиться в командный режим
Esc
- Переместить курсор в соответствующую позицию
- Выполните следующую команду —
r
- Введите символ для замены.
Обратите внимание, что эта команда не переключит Vim в режиме вставки
Для замены всей строки выполните —
R
Он переключит Vim в режим замены, как показано на рисунке ниже —
Присоединить текст
Чтобы соединить две строки, выполните следующие шаги —
- Переключиться в командный режим
Esc
- Переместить курсор на соответствующую строку
- Выполните следующую команду —
J
Vim — Навигация
Vim имеет отличную поддержку для расширенной навигации. В этой главе мы обсудим некоторые из популярных методов навигации, которые помогают повысить производительность.
Базовая навигация
В базовой навигации мы можем перемещаться влево, вправо, вверх и вниз по положению. Для этого могут быть использованы следующие команды:
Sr.No | Команда и описание |
---|---|
1 | час
Переместить курсор влево на одну позицию |
2 | L
Переместить курсор вправо на одну позицию |
3 | К
Переместить курсор вверх на одну строку |
4 | J
Переместить курсор вниз на одну строку |
Переместить курсор влево на одну позицию
Переместить курсор вправо на одну позицию
Переместить курсор вверх на одну строку
Переместить курсор вниз на одну строку
Для выполнения многопозиционной навигации используйте номер с этими командами. Например, для перемещения курсора на 10 строк ниже от текущей строки выполните следующую команду —
10j
Вы можете использовать числа с оставшимися командами.
В дополнение к этому нижеуказанные команды также выполняют полезную навигацию.
Sr.No | Команда и описание |
---|---|
1 | 0
Переместить курсор в начало текущей строки |
2 | $
Переместить курсор в конец текущей строки |
3 | Ctrl + F
Прокрутить всю страницу вниз |
4 | Ctrl + B
Прокрутить всю страницу |
Переместить курсор в начало текущей строки
Переместить курсор в конец текущей строки
Прокрутить всю страницу вниз
Прокрутить всю страницу
Перейти к линии
Команда ниже может быть использована для перехода к определенной строке —
Sr.No | Команда и описание |
---|---|
1 | : п
Перейти к n-й строке |
2 | : 0
Перейти к началу файла |
3 | : $
Перейти в конец файла |
Перейти к n-й строке
Перейти к началу файла
Перейти в конец файла
Навигация по словам
Мы можем использовать следующие команды для навигации по словам —
Sr.No | Команда и описание |
---|---|
1 | вес
Переместить курсор в начало следующего слова |
2 | е
Переместить курсор в конец текущего слова |
3 | б
Переместить курсор в начало предыдущего слова |
Переместить курсор в начало следующего слова
Переместить курсор в конец текущего слова
Переместить курсор в начало предыдущего слова
Использование прыжков
Vim отслеживает вашу навигацию, используя список переходов. Вы можете идти вперед и назад по этому списку.
Список переходов отслеживает все места, где вы были, отслеживая имя файла, номер строки и номер столбца.
Для просмотра списка переходов выполните следующую команду —
:jumps
Следующая команда основана на списке переходов —
Sr.No | Команда и описание |
---|---|
1 | Ctrl + o
Перейти к предыдущей позиции |
2 | Ctrl + I
Перейти к следующей позиции |
Перейти к предыдущей позиции
Перейти к следующей позиции
Vim — Пересмотр редактирования
Мы видели базовое редактирование ранее. Давайте разберемся с некоторыми другими функциями редактирования Vim. В этом разделе мы обсудим следующие пункты —
- буфер
- Обмен файлами
- Вырезать, копировать, удалять, вставлять действия
- Отменить и повторить действия
буфер
Буфер — это временная память, используемая Vim. Когда мы открываем файл в редакторе, Vim загружает его содержимое с диска. Это содержимое хранится в памяти (RAM) всякий раз, когда мы редактируем файл, мы фактически редактируем файл из буфера. Как только мы закончим редактирование и сохраняем файл, в это время только содержимое буфера переносится в соответствующий файл.
Своп
Область подкачки — это файл, созданный Vim для периодического хранения содержимого буфера. Во время редактирования файла наши изменения могут быть потеряны по любым причинам, и Vim предоставляет файлы подкачки для восстановления данных.
Чтобы получить реальное имя файла подкачки, выполните следующую команду —
:swapname
Например, в моем случае имя было message.txt.swp, как показано на рисунке ниже —
Вырезать, копировать и вставлять действия
Мы часто выполняем операции вырезания, копирования и вставки текста. Vim предоставляет следующие команды для выполнения этих действий (y обозначает yank, а p обозначает действие вставки) —
Sr.No | Команда и описание |
---|---|
1 | Икс
Удалить символ из позиции курсора |
2 | Икс
Удалить предыдущий символ из позиции курсора |
3 | Y
Копировать один символ из позиции курсора |
4 | п
Вставить символ после позиции курсора |
5 | п
Вставить символ перед позицией курсора |
Удалить символ из позиции курсора
Удалить предыдущий символ из позиции курсора
Копировать один символ из позиции курсора
Вставить символ после позиции курсора
Вставить символ перед позицией курсора
Многопозиционная команда
Мы можем использовать команды вырезания, копирования и вставки со словами и предложениями. Ниже таблица показывает это —
Sr.No | Команда и описание |
---|---|
1 | с.в.
Удалить слово из позиции курсора |
2 | D
Удалить всю строку из позиции курсора |
3 | дд
Удалить всю строку |
4 | Y
Копирует всю строку |
5 | уу
Копирует всю строку |
Удалить слово из позиции курсора
Удалить всю строку из позиции курсора
Удалить всю строку
Копирует всю строку
Копирует всю строку
Для выполнения многострочных / многословных действий просто используйте числа с командой. Вы можете использовать этот синтаксис и с другими командами. Например, чтобы удалить 3 слова, используйте —
3dw
расстегивать
Мы можем отменить одно или несколько действий. Чтобы выполнить одно действие отмены, выполните —
u
Чтобы выполнить несколько действий отмены, используйте число с той же командой. Например, приведенная ниже команда отменит последние 3 действия:
3u
В дополнение к этому, чтобы отменить все, выполните следующую команду —
U
переделывать
Повторить это подходящее действие отменить. Выполните любую команду для выполнения действия повтора.
Ctrl + r OR : red
Vim — Поиск
Поиск — это очень распространенное действие, которое мы используем чаще всего. В этой главе мы увидим некоторую команду, которая позволит эффективно выполнять эти действия.
В этой главе мы обсудим следующие пункты —
- Настройки поиска
- Искать в текущем файле
- Поиск в нескольких файлах
- Поиск в файлах справки
Настройки поиска
Для выполнения пошагового поиска выполните следующую команду —
:set incsearch
Чтобы выделить поиск, выполните следующую команду —
:set hlsearch
Эта команда автоматически выделит текущие совпадения. Например, на рисунке ниже выделено слово лиса —
Чтобы отключить добавочный и выделенный поиск, выполните следующие команды:
:set noincsearch :set nohlsearch
Искать в текущем файле
Поиск в прямом направлении
Используйте следующие команды для поиска в прямом направлении —
Sr.No | Команда и описание |
---|---|
1 | / <выражение>
Поиск выражения в прямом направлении |
2 | N
Найти следующее вхождение. Это то же самое и найти следующее |
3 | N
Найти предыдущее вхождение. Это так же, как найти предыдущий |
4 | //
Повторите предыдущий поиск вперед |
Поиск выражения в прямом направлении
Найти следующее вхождение. Это то же самое и найти следующее
Найти предыдущее вхождение. Это так же, как найти предыдущий
Повторите предыдущий поиск вперед
Поиск в обратном направлении
Используйте следующие команды для выполнения поиска в обратном направлении
Sr.No | Команда и описание |
---|---|
1 | ? <выражение>
Поиск выражения в обратном направлении |
2 | N
Найти предыдущее вхождение. Это то же самое и найти предыдущее |
3 | N
Найти следующее вхождение. Это так же, как найти следующий |
4 | ??
Повторите предыдущий поиск назад |
Поиск выражения в обратном направлении
Найти предыдущее вхождение. Это то же самое и найти предыдущее
Найти следующее вхождение. Это так же, как найти следующий
Повторите предыдущий поиск назад
Поиск слова под курсором
Поместите курсор под любое слово и выполните следующие команды для выполнения операции поиска —
Sr.No | Команда и описание |
---|---|
1 | *
Поиск следующего вхождения текущего слова |
2 | #
Поиск предыдущего вхождения текущего слова |
Поиск следующего вхождения текущего слова
Поиск предыдущего вхождения текущего слова
Поиск в нескольких файлах
Используя команду vimgrep, мы можем искать <expression> в нескольких файлах. Например, ниже команда ищет строку — Jarvis во всех текстовых файлах.
:vimgrep Jarvis *.txt
Обратите внимание, что для перехода к следующему и предыдущему вхождению мы должны использовать следующие команды:
Sr.No | Команда и описание |
---|---|
1 | : сп
Перейти к следующему появлению выражения |
2 | : сН
Перейти к предыдущему появлению выражения |
Перейти к следующему появлению выражения
Перейти к предыдущему появлению выражения
Vim — Работа с несколькими вещами
Vim очень мощный редактор. Он поддерживает множество расширенных функций для работы с несколькими файлами, буфером и окнами. В этом разделе мы обсудим следующие пункты —
- Несколько файлов
- Несколько буферов
- Несколько вкладок
- Несколько окон
Несколько файлов
Предположим, вы редактируете файл и хотите открыть другой файл в том же сеансе Vim. В этом случае вы можете использовать команду редактирования Vim. Ниже в таблице приведены эти команды
Sr.No | Команда и описание |
---|---|
1 | : е
Загрузить новый файл в буфер для редактирования |
2 | :редактировать
Такой же как: e |
3 | : e <tab>
Вывести список файлов для редактирования из текущего каталога |
4 | : edit <tab>
То же, что: e <tab> |
Загрузить новый файл в буфер для редактирования
Такой же как: e
Вывести список файлов для редактирования из текущего каталога
То же, что: e <tab>
Несколько буферов
Мы уже видели, что такое буферы Vim. Vim поддерживает несколько буферов. Ниже будут полезны команды работы с буферами —
Sr.No | Команда и описание |
---|---|
1 | : badd <файл>
Добавить файл в новый буфер |
2 | : Б.Н.
Переключиться на N-й буфер. Например, чтобы переключиться на третий буфер, используйте: b3 |
3 | : bnext
Перейти к следующему буферу в списке буферов |
4 | : bprevious
Перейти к предыдущему буферу в списке буферов |
5 | : буферы
Список всех буферов |
6 | : bfirst
Перейти к первому буферу |
7 | : взрыв
Перейти к последнему буферу |
8 | :мяч
Загрузить все буферы |
Добавить файл в новый буфер
Переключиться на N-й буфер. Например, чтобы переключиться на третий буфер, используйте: b3
Перейти к следующему буферу в списке буферов
Перейти к предыдущему буферу в списке буферов
Список всех буферов
Перейти к первому буферу
Перейти к последнему буферу
Загрузить все буферы
Например, приведенная ниже команда добавляет новый файл в буфер:
Теперь в буфере два файла. Выполните команду ниже, чтобы показать это —
:buffers
Это покажет следующий вывод —
Несколько вкладок
Как и другие редакторы, мы также можем открывать несколько вкладок в Vim. Ниже в таблице описаны команды, связанные с вкладками —
Sr.No | Команда и описание |
---|---|
1 | : tabnew
Открыть новую вкладку |
2 | : tabnew <файл>
Открыть новый файл на вкладке |
3 | : tabclose
Закрыть текущая вкладка |
4 | : tabnext
Перейти к следующей вкладке |
5 | : tabprevious
Перейти к предыдущей вкладке |
6 | : tabfirst
Перейти к первой вкладке |
7 | : tablast
Перейти к последней вкладке |
Открыть новую вкладку
Открыть новый файл на вкладке
Закрыть текущая вкладка
Перейти к следующей вкладке
Перейти к предыдущей вкладке
Перейти к первой вкладке
Перейти к последней вкладке
Например, ниже изображения показывают несколько вкладок
Несколько окон
В Vim мы можем создать новое окно, используя следующие команды —
Sr.No | Команда и описание |
---|---|
1 | : новый <файл>
Открыть новое окно |
2 | : новый <файл>
Открыть файл в новом окне |
Открыть новое окно
Открыть файл в новом окне
На изображении ниже мы видим, что текущее окно Vim разделено на 2 части после выполнения следующих команд:
$vim message.txt :new
Vim — Маркеры
Vim поддерживает функцию закладок. Используя эту функцию, мы можем значительно ускорить навигацию по файлу. В этой главе мы обсудим следующие пункты —
- Создать закладку
- Перейти к закладке
- Список всех закладок
- Удалить закладки
- Местные закладки
- Глобальные закладки
Создать закладку
Для создания закладки выполните следующую команду —
m{bookmark-name}
В приведенном выше примере имя-закладки состоит из одного алфавитного символа. Например, приведенная ниже команда создает закладку имени a.
ma
Перейти к закладке
После того, как закладка создана, мы можем перейти туда. Следующая команда может быть использована для перехода к закладке —
Sr.No | Команда и описание |
---|---|
1 | `{пометить имя}
Перейти к точному местоположению закладки. Пожалуйста, обратите внимание, что этот персонаж обратно цитата |
2 | {пометить имя}»
Перейти к началу строки закладок. Обратите внимание, что этот символ является одинарной кавычкой |
Перейти к точному местоположению закладки. Пожалуйста, обратите внимание, что этот персонаж обратно цитата
Перейти к началу строки закладок. Обратите внимание, что этот символ является одинарной кавычкой
Список всех закладок
Чтобы отобразить все закладки, выполните следующую команду —
:marks
На изображении ниже показан список закладок для текущего файла.
Удалить закладку
Чтобы удалить закладки, выполните следующую команду —
:delmarks {bookmark-name}
Например, ниже команда удалить закладку с именем а.
:delmarks a
Локальные закладки и глобальные закладки
Если у вас открыто несколько файлов и если вы хотите перейти к определенной позиции в любом из открытых файлов, вы можете использовать функцию глобальной пометки Vim.
Если имя закладки — это заглавная буква, то это глобальная закладка. Приведенные выше команды применимы как для локальных, так и для глобальных закладок.
Vim — Макросы
Макрос — это функция записи и воспроизведения. Когда это сочетается с командами Vim, это становится действительно мощной комбинацией. В этом разделе мы обсудим следующие пункты —
- Начать запись
- Выполните действия Vim
- Остановить запись
- Воспроизвести запись
Начать запись
Чтобы начать запись, нажмите q, а затем любую строчную букву в качестве имени макроса. Например, в приведенном ниже примере я использовал «а» в качестве имени макроса
Выполните действия Vim
На этом шаге вы можете выполнять любые действия Vim, такие как: вырезать, копировать, удалить, заменить и т. Д. Вы можете увидеть эти действия, выполнив следующую команду —
:registers
Например, приведенная ниже команда показывает, что были выполнены действия yank и delete —
Остановить запись
Когда вы закончите с действиями, нажмите q еще раз, чтобы остановить запись. Теперь режим записи исчезнет, как показано ниже —
Играть
Для воспроизведения выполните команду ниже —
@{macro-name}
Например, чтобы выполнить макрос «а», выполните следующую команду —
@a
Для воспроизведения одного и того же макроса несколько раз используйте числа с ним. Например, чтобы выполнить один и тот же макрос 10 раз, выполните следующую команду —
10@a
Vim — Регистры
Vim предоставляет много регистров. Мы можем использовать эти регистры как несколько буферов обмена. Эта функция действительно полезна при работе с несколькими файлами. В этой главе мы обсудим следующие пункты —
- Скопировать текст в реестр
- Вставить текст из реестра
- Список доступных регистров
- Типы регистра
Скопировать текст в реестр
Для копирования мы можем использовать обычную команду yank, т. Е. Yy, и чтобы сохранить ее в регистре, мы можем использовать следующий синтаксис —
“<register-name><command>
Например, чтобы скопировать текст в регистр «а», используйте следующую команду —
“ayy
Вставить текст из реестра
Чтобы вставить текст из реестра используйте —
“<register-name>p
Например, нижеприведенная команда копирует текст из регистра «а» —
“ap
Список доступных регистров
Для просмотра всех доступных регистров используйте следующую команду
:registers
Типы регистра
Vim поддерживает следующие типы регистров —
Безымянный регистр
Безымянный регистр обозначается «». Vim хранит удаленный или скопированный текст в этом регистре
Именованные регистры
Мы можем использовать 26 именованных регистров; мы можем использовать аз или аз. По умолчанию vim не использует эти регистры.
Если мы используем имя регистра в нижнем регистре, то содержимое будет перезаписано, а если мы используем имя в верхнем регистре, то содержимое будет добавлено в этот регистр.
Нумерованные регистры
Мы можем использовать от 0 до 9 именованных регистров. Vim заполняет эти регистры текстом из yank и удаляет команду.
- Нумерованный регистр 0 содержит текст самой последней команды yank.
- Нумерованный регистр 1 содержит текст, удаленный самой последней командой удаления или изменения.
Регистры по умолчанию
Ниже приведены регистры по умолчанию —
Sr.No | Регистрация и описание |
---|---|
1 | %
Имя текущего файла |
2 | #
Имя альтернативного файла для текущего окна |
3 | :
Последняя выполненная команда |
4 | ,
Содержит последний вставленный текст |
5 | «
Последний использованный регистр |
Имя текущего файла
Имя альтернативного файла для текущего окна
Последняя выполненная команда
Содержит последний вставленный текст
Последний использованный регистр
Vim — складной
Функциональность сгиба будет полезна, когда содержимое файла содержит большой текст. Используя эту функцию, мы можем показать только выбранное зелье файла. Эта функция особенно полезна при работе с языками программирования. В этой главе мы обсудим следующие пункты —
- Активировать и деактивировать функцию сгиба
- Различные складные действия
Сложите активацию и деактивацию
Чтобы активировать фолд, используйте следующую команду —
:set foldenable :set foldmethod = indent
Чтобы отключить фолд, используйте следующую команду
:set nofoldenable
Сложите действия
Закрыть складку
Чтобы свернуть код, перейдите к любому методу и выполните следующую команду —
zc
Например ниже изображение показывает результат этого действия —
Открытая складка
Чтобы открыть фолд, используйте следующую команду —
zo
Ниже на рисунке показан результат этого действия —
Закройте все складки
Чтобы закрыть все сгибы, выполните следующую команду
zM
На рисунке ниже показан результат этого действия.
Развернуть все
Чтобы развернуть все, выполните следующее —
zR
Ниже на рисунке показан результат этого действия —
Vim — Diff
Подобно команде diff в UNIX, мы можем использовать Vim для лучшего отображения diff. Это покажет diff в красочной манере. В этой главе мы обсудим следующие пункты —
- Показать различия между файлами
- Активировать и деактивировать режим сравнения
- Навигация в режиме сравнения
- Применение изменений из окна сравнения
Показать разницу
Чтобы показать различия между файлами, выполните следующую команду:
$ vimdiff <file> <file> OR $ vim –d <file> <file>
Например, ниже команда показывает различия —
На изображении выше текст, выделенный пурпурным цветом, является обычным. Оставшийся текст выделен красным цветом, что указывает на некоторые различия после общего текста.
Активировать и деактивировать режим сравнения
Если вы уже находитесь в vim и хотите выполнить diff, используйте одну из следующих команд:
diffsplit
Используйте команду ниже для выполнения горизонтального разделения —
:diffsplit filename
Изображения выше показывают, что мы сравниваем два файла, а именно message-1.txt и message-2.txt.
Вертикальный diffsplit
Для выполнения вертикального разделения используйте следующую команду —
:vert diffsplit <filename>
Открывается следующее окно —
Изображения выше показывают, что мы сравниваем два файла, а именно message-1.txt и message-2.txt.
Навигация в режиме сравнения
Навигация в режиме сравнения немного отличается. Например, когда вы прокручиваете текст из одного окна, текст из соседнего окна также прокручивается. Это называется прокруткой. Чтобы включить это использование —
:set scrollbind
Чтобы отключить это использование —
:set noscrollbind
Если вы редактируете файл в этом режиме, используйте следующую команду для обновления diff —
:diffupdate
Переключаться между окнами diff
Для переключения между окнами diff выполните следующую команду —
Ctrl + w Ctrl + w
Обратите внимание, что мы должны нажать Ctrl + w 2 раза.
Перейти к предыдущему изменению
В окне сравнения выполните следующую команду, чтобы перейти к предыдущему изменению —
[c
Перейти к следующему изменению
В окне сравнения выполните следующую команду, чтобы перейти к следующему изменению —
]c
Применить изменения из окна сравнения
Применение изменений в текущих окнах различий
Чтобы применить изменения из соседнего окна сравнения к текущим окнам выполнения, выполните:
:diffget
Например, если вы находитесь в левом окне и хотите перейти от правого окна к текущему окну, то вы выполните вышеуказанную команду.
Применить изменение с текущей панели на другую
Чтобы применить изменение от текущего окна сравнения к соседнему окну выполнения, выполните:
:diffput
Например, если вы находитесь в левом окне и хотите применить изменения из текущего окна в правое окно, то вы выполните вышеуказанную команду.
Vim — Плагины
Используя плагины, мы можем расширить функциональность Vim. Vim поддерживает множество плагинов, и большинство из них доступны бесплатно. Эта глава посвящена плагинам Vim, и мы обсудим следующие вопросы:
- Управление плагинами
- Несколько полезных плагинов
Управление плагинами
В этом разделе обсуждается управление плагинами. Vim предоставляет различные менеджеры плагинов, но мы не будем использовать какой-либо менеджер плагинов, вместо этого мы будем делать все эти шаги вручную для лучшего понимания. Как только вы поймете эти шаги, вы можете пойти с менеджером плагинов.
Установить плагин
Чтобы установить любой плагин, выполните следующие действия:
- Создайте каталог .vim / bundle в домашнем каталоге пользователя
- Скопируйте плагин внутри этого каталога
- Установить путь выполнения в vim
Давайте установим плагин badwolf в Vim. Это цветовая схема для vim.
$ mkdir -p ~/.vim/bundle $ cd ~/.vim/bundle/ $ git clone https://github.com/sjl/badwolf.git $ echo "set runtimepath^ = ~/.vim/bundle/badwolf" > ~/.vimrc
Теперь плагин установлен, поэтому мы можем использовать цветовую схему badwold следующим образом:
:colorscheme badwolf
Обновление плагина
Если мы внимательно наблюдаем, плагин — это просто набор файлов, и если мы хотим обновить этот плагин, просто обновите соответствующий каталог плагина из ~ / .vim / bundle.
Удалить плагин
Удалить плагин в Vim действительно просто. Чтобы удалить плагин, выполните следующие действия:
- Удалить каталог плагинов из ~ / .vim / bundle
- Измените путь выполнения соответствующим образом
Несколько полезных плагинов
Ниже приведен список некоторых полезных плагинов Vim
Sr.No | Имя и описание |
---|---|
1 | DumpX
Разбирать код C / C ++ |
2 | awk.vim
Отступ для скрипта AWK |
3 | патогенный микроорганизм
Менеджер пакетов Vim |
4 | ГИТ-switcher.vim
Автоматическое сохранение и загрузка vim-сессии на основе переключения ветки git. |
5 | Pyflakes
Обеспечить линитинг для файлов Python |
Разбирать код C / C ++
Отступ для скрипта AWK
Менеджер пакетов Vim
Автоматическое сохранение и загрузка vim-сессии на основе переключения ветки git.
Обеспечить линитинг для файлов Python
Vim — Использование Vim как идея
Мы можем настроить Vim для использования в качестве IDE. В этом разделе мы обсудим следующие пункты
- Подсветка синтаксиса
- Умный отступ
- подпрыгивать
- Выполнять команды оболочки
- Конфигурирование ctags и csope
- Автозаполнение и автоматическое предложение
Подсветка синтаксиса
Подсветка синтаксиса — одна из важных особенностей IDE. Чтобы включить подсветку синтаксиса, используйте —
:syntax on
Например, ниже изображение показывает подсветку синтаксиса для кода C —
Чтобы отключить подсветку синтаксиса, используйте —
:syntax off
Когда подсветка синтаксиса отключена, он покажет следующий вывод —
Умный отступ
Для выполнения автоматического и интеллектуального отступа используйте следующие команды —
: set autoindent : set smartindent
В дополнение к этому вы можете использовать приведенную ниже команду для автоматической вставки кода C —
: set cindent
подпрыгивать
Если вы используете язык программирования, который использует фигурные скобки для объединения нескольких операторов,% key станет вашим другом. Этот ключ быстро переключается между началом и концом фигурных скобок.
Например, вы находитесь в строке 11 и выполняете команду%, тогда он переместит курсор на строку 4. Ниже на рисунке показано это —
Выполнять команды оболочки
Чтобы выполнить одну команду от пользователя редактора Vim —
:!<command>
Например, для выполнения команды pwd используйте следующий синтаксис —
:!pwd
Однако, если вы хотите использовать несколько команд оболочки, выполните следующую команду:
:shell
Выше команда даст вам доступ к терминалу, где вы можете выполнить несколько команд. Когда вы закончите с этим, просто введите команду выхода, которая вернется к сеансу Vim.
Настроить ctags и cscope
Комбинация ctags и csope предоставляет множество полезных функций, таких как переход к определению функции, переход к объявлению функции, поиск вызовов функции, поиск файла и многое другое. Выполните следующие шаги, чтобы настроить эти инструменты —
- Генерация тегов с помощью следующей команды —
$ ctags <file>
Эта команда создаст новый файл, а именно теги
- Укажите файл тега для vim, используя следующую команду —
:set tags = tag
- Теперь переместите курсор под именем функции и нажмите Ctrl +], чтобы перейти к определению функции.
- Используйте Ctrl + t, чтобы вернуться на предыдущую позицию.
Для установки и настройки cscope выполните следующие действия:
- Установить cscope
$ sudo apt-get install cscope
- Создать ctags и запустить главное окно
$ cscope –R
- Пользователь Ctrl + d, чтобы закрыть окно cscope
Автозаполнение и автоматическое предложение
Мы можем использовать следующие команды для автозаполнения —
Sr.No | Команда и описание |
---|---|
1 | Ctrl + x Ctrl + N
Завершение слова |
2 | Ctrl + x Ctrl + L
Завершение линии |
3 | Ctrl + x Ctrl + F
Завершение имени файла |
Завершение слова
Завершение линии
Завершение имени файла
Обратите внимание, что мы должны использовать эти команды в режиме вставки.
Vim — Удаленное редактирование файлов
Много раз нам нужно работать с удаленными серверами. И часто мы редактируем файлы с этих удаленных серверов. Одним из очевидных решений для редактирования этих файлов является вход на удаленный сервер и редактирование файлов. Но иногда удобно редактировать эти файлы с локального компьютера, потому что мы могли установить и настроить различные плагины в нашей локальной системе. В этой главе мы обсудим следующие пункты —
- Доступ к удаленным файлам
- Понимать netread и netwrite
- Другой поддерживаемый протокол
Доступ к удаленным файлам
Vim поддерживает удаленное редактирование файлов, используя следующий синтаксис —
$vim scp://[email protected]/filepath
В приведенном выше примере vim распознает, что он должен использовать протокол scp, и он получит доступ к файлу, используя этот протокол. Например —
$ vim scp://[email protected]//tmp/message.txt
Приведенная выше команда откроет файл /tmp/message.txt с удаленного сервера. Он будет использовать протокол SCP и учетные данные пользователя jarvis для аутентификации.
Использование nread и nwrite
Vim поддерживает функции nread и nwrite, которые означают net read и net write соответственно. В предыдущем разделе показан метод доступа к удаленному файлу при запуске Vim. Но что, если вы уже в Vim? Тогда вы можете использовать следующие команды —
:Nread scp://jarvis@localhost//tmp/message.txt
В дополнение к чтению мы также можем изменить файл на удаленном сервере напрямую. В этом случае используйте команду Nwrite следующим образом:
:Nwrite scp://jarvis@localhost//tmp/message.txt
После открытия файла вы можете использовать обычные команды Vim.
Другие поддерживаемые протоколы
В дополнение к SCP Vim поддерживает следующие протоколы:
- FTP
- SFTP
- HTTP (только для чтения)
- Rsync
Vim — Советы и хитрости
Теперь у нас есть честное представление о Vim. Давайте обсудим несколько советов и хитростей Vim для повышения производительности. В этом разделе мы обсудим следующие пункты —
- Преобразование пробелов во вкладки и наоборот
- Выделите неправильно написанные слова
- Завершение слова
- Копировать строку символ за символом
- Код отступа
- Изменить формат файла
Преобразование пробелов во вкладки и наоборот
Преобразовать вкладки в пробелы
Если вы редактируете файл и хотите преобразовать введенный символ табуляции в пробелы, выполните следующую команду —
:set expandtab
Обратите внимание, что эта команда не изменит существующие вкладки на пробелы. Для этого выполните следующую команду —
:set tabstop = 4 shiftwidth = 4 expandtab :retab
В приведенной выше команде мы указываем Vim преобразовать вкладки в 4 пробела
Преобразование пробелов во вкладки
Для преобразования пробелов во вкладки выполните команду ниже —
:set noexpandtab :retab!
Выделите неправильно написанные слова
Мы можем поручить Виму выделить слова, написанные неправильно. Для этого выполните следующую команду —
:set spell
Ниже изображение выделяет слово с ошибкой в Vim —
Завершение слова
Vim также обеспечивает завершение слова. Для этого выполните следующую команду в режиме вставки —
Ctrl + p
Копировать символ построчно
Используйте следующую команду, чтобы скопировать и вставить строку символ за символом —
Sr.No | Команда и описание |
---|---|
1 | Ctrl + y
Скопируйте и вставьте текст, расположенный над курсором |
2 | Ctrl + E
Скопируйте и вставьте текст, расположенный под курсором |
Скопируйте и вставьте текст, расположенный над курсором
Скопируйте и вставьте текст, расположенный под курсором
Обратите внимание, что мы должны использовать эти команды в режиме вставки.
Код отступа
Если у вас есть код с отступом для отступа, выполните следующую команду:
=%
Например, если у вас есть такой код без отступа —
Затем перейдите к строке 4 и выполните команду =%. Это будет отступать код, как это —
Изменить формат файла
Чтобы изменить формат файла на UNIX, выполните следующую команду —
:set ff = unix
Чтобы изменить формат файла на DOS, выполните следующую команду —
:set ff = dos
Vim — Персонализация
Мы можем персонализировать Vim в соответствии с нашими требованиями. В этом разделе мы обсудим следующие пункты —
- Конфигурационные файлы
- Смена шрифтов
- Изменение цветовой схемы
- Персональная подсветка
- Строка состояния
Конфигурационные файлы
Для Vim конфигурационные файлы могут быть на уровне пользователя или на глобальном уровне. Пользовательские настройки будут храниться в файлах уровня пользователя, а глобальные настройки — в файлах глобального уровня.
Vimrc файл
Глобальный vimrc
Чтобы узнать глобальный файл vimrc, выполните в редакторе следующую команду
:echo $VIM
ИЛИ ЖЕ
:echo \%VIM\%
В Linux этот файл будет находиться в каталоге / usr / share / vim, а в Windows — в папке C: \ Program Files \ Vim
Местный vimrc
Локальный vimrc будет находиться в домашнем каталоге пользователя. Например, в Linux он будет находиться в каталоге / home / <USER>, а в Windows — в папке C: \ Documents and Setting \ <USER> /
Обратите внимание, что в Windows имя файла будет _vimrc, тогда как в Linux это будет .vimrc.
Gvimrc
Глобальный гвимрц
В Linux этот файл будет находиться в каталоге / usr / share / gvim, а в Windows — в папке C: \ Program Files \ Vim
Местный гвимрц
Локальный gvimrc будет находиться в домашнем каталоге пользователя. Например, в Linux он будет находиться в каталоге / home / <USER>, а в Windows — в папке C: \ Documents and Setting \ <USER> /
Обратите внимание, что в Windows имя файла будет _gvimrc, тогда как в Linux оно будет 55 .gvimrc.
exrc
Файлы exrc используются для обратной совместимости. Эти файлы игнорируются, если присутствует файл vimrc или gvimrc.
Global exrc
В Linux этот файл будет находиться в каталоге / usr / share / vim, а в Windows — в папке C: \ Program Files \ Vim
Местный экзр
Локальный exrc будет находиться в домашнем каталоге пользователя. Например, в Linux он будет находиться в каталоге / home / <USER>, а в Windows — в папке C: \ Documents and Setting \ <USER> / _ exrc
Смена шрифтов
Для изменения шрифта выполните следующую команду в gVim —
:set guifont = courier
Выше команда изменит шрифт на курьера.
Изменить цветовую схему
Для изменения цветовой схемы выполните следующую команду —
:colorscheme <tab>
Когда вы нажимаете символ табуляции, он показывает доступные цветовые схемы для Vim.
Персональная подсветка
Подсвечивать символы после определенных столбцов
Выполните команду ниже, чтобы выделить столбцы больше 73 —
:match ErrorMsg /\%>73v.\+/
Ниже изображение показывает это —
Ниже приведено описание этой команды —
Sr.No | Команда и описание |
---|---|
1 | \%>
Матч за колонкой |
2 | 73
Это номер столбца |
3 | В
Должно работать только для виртуальных столбцов |
4 | . \ +
Совпадение с одним или несколькими персонажами |
Матч за колонкой
Это номер столбца
Должно работать только для виртуальных столбцов
Совпадение с одним или несколькими персонажами
Добавить номер строки
Чтобы добавить номер строки, выполните следующую команду —
:set number
Чтобы отключить это, выполните следующую команду —
:set nonumber
Установить ширину номера
Чтобы установить ширину номера, выполните следующую команду —
:set numberwidth = <num>
Проверка орфографии
Чтобы включить проверку орфографии, выполните следующую команду —
:set spell
И чтобы установить язык орфографии, выполните следующую команду —
:set spelllang = <language>
Например, для установки немецкого языка используйте следующий comman —
:set spelllang = de
Сокращение
Используя аббревиатуру, мы можем создать ярлыки для длинной строки. Например, команда ниже создает аббревиатуру «быстро».
:abbr quick the quick brown fox
Если вы наберете «quick» и нажмете «tab», он будет заменен строкой «quick brown fox»
Мы можем использовать это, чтобы исправить некоторые опечатки. Например, команда ниже делает это —
:abr teh the
Строка состояния
Строка состояния отображается внизу редактора. Для включения строки состояния выполните следующую команду —
:set laststatus = 2
Чтобы удалить это для текущего сеанса, выполните следующую команду —
:set laststatus = 0
Vim — Заключение
Vim — действительно мощный редактор, и теперь вы можете запачкать его руками. Овладение Vim действительно улучшит вашу продуктивность. Используя Vim, вы можете решать множество сложных задач с помощью нескольких команд. Вы можете обратиться к следующей документации, чтобы узнать больше о Vim.
Vim официальная документация
Вы можете получить доступ к официальной документации Vim со следующего сайта —
Vim Scripting guide
Вы можете улучшить vim, написав для него скрипты. У него есть собственный язык сценариев. Чтобы узнать больше об этом, перейдите по следующей ссылке —
https://vim.sourceforge.io/scripts/index.php
Плагины Vim
Плагины Vim расширяют его функциональность и повышают производительность. Вы можете установить, настроить и даже написать плагины для Vim. Вы можете сослаться на документацию по этому вопросу с их официального сайта.