Определите отличный профиль Vim, используя .vimrc
Vim — это расширенный текстовый редактор для операционных систем Linux и Unix. Недавно признанный редактором Linux № 1 в мире, Vim является бесплатным и открытым исходным кодом. Эта статья покажет вам, как создать отличный профиль .vimrc.
Что такое Вим?
Во-первых, если вы новичок в Vim: добро пожаловать! Вы только что начали большое путешествие по изучению одного из лучших и самых удобных редакторов в мире.
Брэм Муленаар создал Vim, популярный редактор для терминала Linux, в 1991 году. текстовый редактор старой школы для Unix, разработанный в 1976 году. Популярность Vim значительно возросла, и недавно крупный Linux-форум назвал этот редактор лучшим в мире редактором Linux. Vim обычно предустановлен в качестве редактора по умолчанию во многих дистрибутивах Linux.
Vim позволяет пользователям редактировать файлы в двух режимах: режиме редактирования и командном режиме, если хотите, что, вероятно, усложняет навигацию в Vim для новых пользователей. Пользователи, вероятно, привыкли находиться в режиме редактирования в большинстве других популярных текстовых редакторов (программа записи OpenOffice и т. д.), но не в командном режиме. А командный режим — это режим по умолчанию, в котором запускается Vim.
Например, если вы откроете файл в Vim (используя команду в терминале, такую как vi my_story.txt
), вы войдете в Vim в командном режиме. Теперь вы можете ввести букву i
(команда vi), чтобы войти в режим редактирования (или, в частности, в данном случае insert) (-- INSERT --
обычно появляется в последней строке терминала, чтобы выделить режим, в котором вы находитесь) и начните вводить тест. Когда вы закончите, вы нажмете ESC
(клавиша выхода), чтобы вернуться в командный режим.
Затем вы можете снова войти в режим редактирования, например, связав a
(другая команда vi), чтобы снова войти в режим редактирования (a
в этом случае означает append и курсор переместится на один символ вправо при входе в режим редактирования с использованием a
вместо i
). Закончив редактирование (которое предоставляет все возможности редактирования, такие как нажатие курсора вверх/вниз
, курсор влево/вправо
и т. д.), вы можете снова нажать ESC
для возврата в командный режим.
Когда вы закончите полное редактирование файла, убедитесь, что вы находитесь в командном режиме (нажмите клавишу ESC
еще раз, чтобы убедиться, хотите ли вы) и введите последовательность клавиш :wq!
. Это запишет (w
) файл и завершит работу (q
). Если вы никогда раньше не использовали Vim, то молодцы! Это был ваш первый сеанс Vim ;)
Редактор Vim — один из немногих редакторов с такой острой кривой начального обучения. Однако после первоначального обучения знания о командах редактора и их использовании продолжают расти вместе с человеком с течением времени в более или менее линейном формате. Я пишу все свои сценарии, статьи и обработку данных в Vim, используя его в сочетании с AutoKey, чтобы легко вставлять свой шаблон и HTML-теги там, где это необходимо.
Если вы хотите узнать больше об AutoKey, вы можете прочитать нашу статью AutoKey: как автоматически заменять символы предопределенным текстом в Linux.
Определение отличного профиля .vimrc
Если вы ранее использовали Vim в различных дистрибутивах Linux, вы могли заметить, что в некоторых дистрибутивах не удается настроить правильный профиль Vim, что приводит к несколько странному поведению при использовании Vim.
Одна из вещей, которую вы можете увидеть (особенно в Mint 19 и некоторых более старых версиях Ubuntu), заключается в том, что когда вы нажимаете курсор вправо, вам нужно нажать другую клавишу, чтобы курсор действительно прыгнул, и это особенно вокруг выделенного Синтаксис /colored (например, в сценариях оболочки). Еще одна странность — странное поведение при щелчках мышью или при использовании вкладок.
Если вы видите какие-либо из этих или подобных странностей, самое время настроить отличный профиль .vimrc по умолчанию. Файл/профиль .vimrc содержит все настройки, которые Vim будет считывать и использовать при каждом запуске. За годы использования Vim, и особенно в то время, когда я зарегистрировал ошибку для одного из этих странных элементов поведения, я создал короткий профиль .vimrc, который сводит на нет эти проблемы.
Файл .vimrc
будет и должен храниться в вашем домашнем каталоге. Давайте создадим файл, используя сам vim
. Обратите внимание, что обычно вы можете использовать vi
для запуска vim
. Сначала мы открываем файл .vimrc
в нашем домашнем каталоге (который в Linux представлен символом тильда, т. е. символом ~
), выполнив :
vi ~/.vimrc
В командной строке. Это должно вызвать редактор Vim. Теперь нажмите клавишу i
, чтобы войти в режим редактирования/вставки. Когда вы видите -- INSERT --
в последней строке вашего терминала (отображается в большинстве случаев), вы знаете, что находитесь в режиме вставки. Затем скопируйте и вставьте блок текста ниже и щелкните правой кнопкой мыши в окне терминала, где работает Vim. Затем нажмите Вставить.
set nocompatible colo torte syntax on set tabstop =2 set softtabstop =2 set shiftwidth =2 set expandtab
Теперь вы должны увидеть экран, подобный следующему:
Если вы обычно используете четыре пробела вместо двух (для написания кода), просто замените все =2
на =4
.
Теперь нажмите ESC
, чтобы выйти из режима редактирования, а затем введите последовательность клавиш, которую вы видели ранее: :wq!
. Это запишет файл ~/.vimrc
и закроет редактор Vim. Если вы хотите проверить содержимое файла, вы можете выполнить cat ~/.vimrc
в командной строке.
При следующем входе в Vim Vim автоматически загрузит все эти настройки из вашего файла ~/.vimrc
.
Помимо установки красивой цветовой схемы с помощью команды color torte
, мы также включаем подсветку синтаксиса с помощью syntax on
. Мы установили некоторые лучшие параметры обработки ширины табуляции (как правило, указывая, что мы хотим два или четыре пробела, как описано выше, в качестве табуляции).
Обратите внимание, что цветовая схема torte
недоступна в Linux Mint 20.1, хотя она доступна в некоторых более ранних выпусках Mint. Если это применимо к вашей системе, вы получите сообщение с тем же эффектом. Просто нажмите Enter и отредактируйте ~/.vimrc
, чтобы удалить эту строку.
Параметр set expandtab
специально гарантирует, что всякий раз, когда мы нажимаем tab, он будет автоматически переводиться в пробелы. Вы можете удалить эту строку, если она вам не нравится (совет: используйте для этого Vim, и вы можете нажать dd
на строке в режиме редактирования, чтобы удалить всю строку, даже не входя в режим редактирования).
Тем не менее, наиболее важным вариантом является тот, который находится в первой строке. set nocompatible
гарантирует, что некоторые вещи, подобные описанным выше, будут работать намного лучше и без неясного поведения.
В Интернете обсуждается предполагаемая необходимость не устанавливать этот параметр, потому что этот параметр считается автоматически включенным, как только используется файл .vimrc, однако его установка гарантирует, что этот параметр активен, и нет никаких негативных последствий. побочный эффект от его установки [снова]. Другими словами, существует потенциальная выгода в том, чтобы определить его жестко/статически, тогда как в этом нет недостатка.
Подведение итогов
Эта статья поместила Vim и Vi в исторический контекст и описала их популярность. После этого мы представили небольшое введение в режимы редактирования и команд в Vim и рассмотрели создание файла настроек ~/.vimrc
для Vim, который обеспечит значительно улучшенный пользовательский интерфейс Vim за счет изменения ширины табуляции, настройки пространства, подсветку синтаксиса, настройку цветовой схемы и, что наиболее важно, предотвращение ошибочного/непонятного поведения Vim в различных дистрибутивах Linux.
Наслаждайтесь!