Знаете ли вы, что Vim может отображать абсолютные, относительные и гибридные номера строк? Вот как это настроить.
Vim — замечательный редактор, который полюбился большинству системных администраторов Linux/UNIX и используется им каждый день.
Вы можете подумать: «Я бы немедленно переключился на Vim, если бы Vim мог показывать мне номера строк». Что ж, считайте, что сделано.
Чтобы отобразить номера строк в Vim, войдите в командный режим, нажав клавишу Esc, и используйте:
:set number!
Эта !часть необходима.
Легко, верно? Давайте посмотрим на это в деталях и на примерах.
На самом деле в Vim можно отобразить три вида номеров строк:
Любопытно? Давайте рассмотрим более подробно.
Абсолютные номера строк — это то, что вы найдете почти во всех IDE. Он начинается с 1 и заканчивается номером последней строки.
И есть два способа включить это.
Теперь вы должны увидеть номера строк в левой части окна.
По любой причине, если вам это не нравится, вы можете отключить его с помощью команды ‘:set nonumber’ или с помощью команды ‘set nonu’ для краткости.
Если вы хотите, чтобы изменения были постоянными, вы можете сохранить свои настройки в файле .vimrc, который находится в домашнем каталоге вашего пользователя.
В следующий раз, когда вы откроете Vim, вы всегда будете видеть абсолютные номера строк в Vim.
Если вы больше не хотите их иметь, просто удалите строку «set number» из файла «.vimrc» вашего пользователя.
Когда у вас включены относительные номера строк, это означает, что строка, на которой вы сейчас находитесь, имеет номер строки 0, а строки выше и ниже курсора имеют последовательные номера 1, 2, 3.
Это особенно полезно, потому что перемещение курсора вверх и вниз на x строк становится проще. Вам не нужно выполнять математические вычисления в уме, вычитая номер текущей строки из номера строки, и вы можете легко перейти к определенной строке в Vim.
Вы увидите относительные номера строк выше и ниже строки, на которой находится ваш курсор.
По любой причине, если вам это не нравится, вы можете отключить относительную нумерацию строк, используя команду ‘:set norelativenumber’ или, для краткости, команду ‘set nornu’. Это полностью отключит левый столбец, в котором отображаются номера строк.
Тот же изящный прием применим и к relativenumber: если относительные номера строк отключены, вы можете включить их с помощью ‘:set relativenumber!’ или с помощью ‘:set rnu!’ команда короче. Если относительные номера строк уже включены, установка этого параметра отключит относительные номера строк.
Вы попробовали относительные номера строк, и вам это понравилось. Вы задаетесь вопросом, как сделать это изменение постоянным, вместо того, чтобы вводить ‘:set relativenumber’ каждый раз, когда вы открываете Vim.
Чтобы сделать это постоянным, вам нужно установить эту опцию в файле ‘vimrc’ вашего пользователя.
Теперь, когда вы откроете Vim, у вас всегда будут включены относительные номера строк.
В любом случае, если вы хотите отменить это поведение, вы должны удалить строку с надписью «установить относительный номер» из файла «.vimrc» вашего пользователя.
Гибридные номера строк представляют собой смесь абсолютных и относительных номеров строк. Когда режим гибридной нумерации включен, строка, на которой в данный момент находится ваш курсор, будет иметь абсолютный номер, а все остальные строки будут иметь относительные номера.
На наш взгляд, это лучшее из обоих миров, когда вы хотите знать номер строки, над которой вы работаете, а также видеть относительные числа выше и ниже текущей строки.
Если вы хотите временно включить/отключить гибридные номера линий, выполните следующие действия:
После переключения вы увидите, что строка, на которой находится ваш курсор, имеет абсолютный номер строки, а остальные строки имеют относительный номер строки.
Чтобы отключить гибридный режим, вам нужно отключить обе нумерации, набрав :set nonumber norelativenumber.
После того, как вы попробуете гибридный режим и он вам понравится, вы захотите установить его в качестве параметра по умолчанию. Для этого вам нужно установить его в файле vimrc вашего пользователя. Ниже приведены шаги для этого.
Это сделает изменения постоянными.
При любых обстоятельствах, когда вам больше не нужна гибридная нумерация строк, просто удалите строку set number relativenumberиз ‘vimrc’ вашего пользователя.
Предположим, что ваше локальное имя пользователя — «andreyex». Если вы указали свои предпочтения в ‘/home/andreyex/.vimrc’, ваши предпочтения будут учитываться, только если вы откроете Vim как пользователь ‘andreyex’.
Если вы попробуете «sudo vim /etc/ssh/sshd_config», вы откроете Vim как суперпользователь, который не является пользователем «andreyex», поэтому в этом случае ваши настройки по умолчанию не будут отражены в текущем сеансе Vim.
Что касается номеров строк, Vim предоставляет два дополнительных режима, которые подходят для пользователей Vim. Нам нравятся гибридные номера строк, потому что они помогают мне быстрее двигаться в Vim, показывая при этом фактические номера строк.