Найти в Дзене
Блокнот математика

Рубрика "Секреты Вим". Справка

Всем привет, с Вами рубрика "Секреты Вим", и сегодня поговорим о справке, помощи, документации в поставке. Оглавление рубрики Вим поставляется с обширной документацией (более 5Мб текста), для доступа к которой есть специальные средства. Прежде всего, это команда :help. Она открывает отдельное окно, в котором можно читать доку. Команда может принять слово и искать его, например, :help :g или :help ctrl-w или :help t или даже :help . (точка). Можно использовать шаблоны типа файловых: ? как любой символ, * как любые символы, [a-z] как класс символов. Хотя у Вима хватает ума понять, что :help ? просит справку по команде ?, а не что-нибудь по любой одиночный символ. Можно физически ввести <C-W>, нажав одновременно control и w, вместо описательного 'ctrl+w'. Можно посмотреть варианты, введя часть команды и нажав <C-D>. Окно закрывается как обычное окно, :q. Но есть и специальная команда :helpclose, которая не закрывает ничего другого, если окно справки уже закрыто. Особенно полезно это в ск

Всем привет, с Вами рубрика "Секреты Вим", и сегодня поговорим о справке, помощи, документации в поставке.

Оглавление рубрики

Вим поставляется с обширной документацией (более 5Мб текста), для доступа к которой есть специальные средства. Прежде всего, это команда :help.

Главный файл документации. Открывается командой :help без параметров. Голубым выделены гиперссылки, можно прыгать (см. далее). Фиолетовым выделены файлы, на них тоже можно прыгать. Например, на help-context.
Главный файл документации. Открывается командой :help без параметров. Голубым выделены гиперссылки, можно прыгать (см. далее). Фиолетовым выделены файлы, на них тоже можно прыгать. Например, на help-context.

Она открывает отдельное окно, в котором можно читать доку. Команда может принять слово и искать его, например, :help :g или :help ctrl-w или :help t или даже :help . (точка). Можно использовать шаблоны типа файловых: ? как любой символ, * как любые символы, [a-z] как класс символов. Хотя у Вима хватает ума понять, что :help ? просит справку по команде ?, а не что-нибудь по любой одиночный символ.

Можно физически ввести <C-W>, нажав одновременно control и w, вместо описательного 'ctrl+w'. Можно посмотреть варианты, введя часть команды и нажав <C-D>.

Пример работы <C-D>, поиска по фрагменту. Вот какие разделы справки содержат фрагмент sex. Ничего возбуждающего.
Пример работы <C-D>, поиска по фрагменту. Вот какие разделы справки содержат фрагмент sex. Ничего возбуждающего.

Окно закрывается как обычное окно, :q. Но есть и специальная команда :helpclose, которая не закрывает ничего другого, если окно справки уже закрыто. Особенно полезно это в скриптах. Ну, и в привязках тоже: повесили helpclose на F12, и ничего лишнего не закроете.

Если дать команду :help снова, используется это же окно, если оно открыто. Менять текст в окне справки и сохранять, конечно, нельзя (хотя можно сохранить текст в другой файл). Поиск работает как обычно.

Высоту окна можно поменять, изначально она определена переменной helpheight, по умолчанию 20 строк.

Файлы справки раскрашиваются: цветом выделяются гиперссылки и ключевые слова, заголовки команды и примеры кода. Гиперссылки работают по механизму тегов, переходы по ним возможны посредством комады <C-]>, возврат <C-T>. Встали на выделенную ссылочку, нажали control + ], почитали, вернулись через control+t, Это очень удобно! Прыжки как в пределах файла, так и между файлами.

Есть глобальный поиск по всем файлам справки. Конечно, это можно провернуть и вручную с помощью :grep или :vimgrep, если знать, что справка лежит в $VIMRUNTIME/doc. Но удобнее :helpgrep, который знает, где искать. Найденное складывается в QuickFix и по нему можно перемещаться командами :cnext, cprev. Можно указать язык, добавив к регулярному выражению @ru, например. Кстати, этот суффикс работает и с командой :help, его можно добавить к искомому.

Есть :lhelpgrep, который складывает найденное в локальный список, свой для каждого окна. Полезно, если у вас есть список QuickFix в работе и его не хочется замещать (хотя всегда можно вернуться к предыдущегму списку посредством :colder).

:help! с параметром ищет справку на том же языке, как уже открытая. Впрочем, у меня справка только английская, но мне хватает.

А вот :help! без параметров — это юмор. Попробуйте!

Нетрудно создавать и свои файлы документации. Об этом напишу в другой раз. Это нужно, если вы создаете свои плагины, файлы синтаксиса и т.п., а еще можно воспользоваться нехитрой, но мощной системой Вима для документирования своих наработок в совешенно другой области. Обычный текст, который читается где угодно, но Вим может его раскрашивать и, самое главное, переходить по гиперссылкам.

Документация покрывает всё: от базовой техники до изощренных моментов, хотя для начального освоения, конечно, малопригодна. Для обучения есть скрипт vimtutor, который интерактивно обучит основам работы с Вим. Прямо в консоли запускайте и учитесь. Я сам с него начинал давным-давно. И, знаете, втянулся. Чего и вам желаю!

Путеводитель по каналу