Справочник по VIM

Опции P-R

Опции: A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,R,S,T,U,V,W

‘paragraphs’ ‘para’

строка (по умолчанию: «IPLPPPQPP LIpplpipbp»)
глобальная опция

Опция задаёт макросы nroff для отбивки параграфов. Каждый макрос представляет собой пару символов (см. |перемещения-по_объектам|).

‘paste’

переключатель (по умолчанию: выключено)
глобальная опция
Vi не имеет такой возможности.

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

При включении опции ‘paste’ (в том числе в тех случаях, когда данная опция уже находилась во включённом состоянии), происходят следующие вещи:

  • отключаются привязки для режимов Вставки и Командной строки
  • отключаются сокращения
  • значение опции ‘textwidth’ устанавливается равным 0
  • значение опции ‘wrapmargin’ устанавливается равным 0
  • опция ‘autoindent’ выключается
  • опция ‘smartindent’ выключается
  • значение опции ‘softtabstop’ устанавливается равным 0
  • опция ‘revins’ выключается
  • опция ‘ruler’ выключается
  • опция ‘showmatch’ выключается
  • опция ‘formatoptions’ используется таким образом, как если бы её значением была пустая строка

Нижеперечисленные опции сохраняют своё значение, но не оказывают влияния:

  • ‘lisp’
  • ‘indentexpr’
  • ‘cindent’

ЗАМЕЧАНИЕ: Если при включённой опции ‘paste’ начать редактировать новый файл, то автокоманды и настройки режимной строки могут изменить значения вышеперечисленных опций, что может впоследствии привести к проблемам. В таких случаях не повредит снова включить опцию ‘paste’. При отключении опции ‘paste’ упомянутые выше опции восстанавливают свои значения на момент перед включением опции ‘paste’. Отключение уже выключенной опции ‘paste’ не оказывает никакого влияния. Поскольку при включённой опции ‘paste’ привязки не работают, для настройки переключения состояния опции ‘paste’ по какой-либо кнопке следует пользоваться опцией ‘pastetoggle’.

‘pastetoggle’ ‘pt’

строка (по умолчанию: «»)
глобальная опция
Vi не имеет такой возможности.

Значение опции, если оно не является пустой строкой, задаёт последовательность кнопок, которая переключает значение опции ‘paste’. Установка значения данной опции аналогична применению команды

:map {кнопки} :set invpaste<CR>

Здесь {кнопки} являются значением опции ‘pastetoggle’. Различие между использованием опции и применением указанной выше команды заключается в том, что опция будет работать даже в том случае, когда включена опция ‘paste’. Последовательность кнопок, заданная в данной опции, будет работать как в Обычном режиме, так и в режиме Вставки, но не в режиме Командной строки. Поскольку привязки проверяются в первую очередь, они могут переопределять значение опции ‘pastetoggle’. Однако, при включённой опции ‘paste’ привязки игнорируются в режиме Вставки, поэтому возможно выполнение следующих команд:

:map <F10> :set paste<CR>
:map <F11> :set nopaste<CR>
:imap <F10> <C-O>:set paste<CR>
:imap <F11> <nop>
:set pastetoggle=<F11>

Приведённые команды позволяют включать режим Вклейки по нажатию <F10> и прекращать его по нажатию <F11>. Обратите внимание, что ввод <F10> в режиме вклейки приводит к вставке «<F10>» в текст, поскольку в режиме Вклейки все символы вставляются в текст как есть, за исключением последовательности, заданной в значении опции ‘pastetoggle’.

‘patchexpr’ ‘pex’

строка (по умолчанию: «»)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+diff|.

Опция задаёт выражение, которое вычисляется для применения заплатки к файлу и создания на её основе новой версии файла. См. раздел справки |различия-patchexpr|.

‘patchmode’ ‘pm’

строка (по умолчанию: «»)
глобальная опция
Vi не имеет такой возможности.

Если значение опции не является пустой строкой, то Vim сохраняет наиболее старую версию файла. Это может быть полезно, если Vim используется для исправления файлов в наборе исходных текстов программы для сохранения оригинальных вариантов файлов в неприкосновенности. Копия оригинала сохраняется только когда запись файла осуществляется впервые. Имя оригинальной копии файла представляет собой имя файла с добавлением окончания, заданного значением опции ‘patchmode’.  Значение данной опции должно начинаться с точки, например можно использовать строку вроде «.orig». Чтобы описанный процесс создания копии оригинала мог быть реализован, значение опции ‘backupdir’ не должно быть пустой строкой (необходимо обеспечить возможность создания резервной копии файла, поскольку именно резервная копия переименовывается в файл, содержащий оригинальную версию, после успешной записи новой версии файла). Если резервная копия файла не существует, то будет создан пустой файл.

Копия оригинального файла не создаётся, если имя соответствует шаблону, заданному значением опции ‘backupskip’. При использовании ‘patchmode’ для сжатых файлов указанное в значении данной опции расширение добавляется в конце файла (например, «file.gz.orig»), поэтому данный файл не всегда может быть правильно опознан системой как сжатый файл.

‘path’ ‘pa’

строка (по умолчанию в Unix: «.,/usr/include,,», на OS/2: «.,/emx/include,,», на других системах: «.,,»)
глобальная или местная по отношению к буферу опция |глобальные-местные|
Vi не имеет такой возможности.

Значением данной опции является список каталогов, в которых осуществляется поиск при выполнении |gf|, [f, ]f, ^Wf, |:find| и других команд, если соответствующий файл имеет относительный путь (т.е. путь не начинается с символа ‘/’). Каталоги, перечисленные в значении опции ‘path’ могут быть иметь как относительные, так и абсолютные пути.

  • Имена каталогов отделяются запятыми:
    :set path=.,/usr/local/include,/usr/include
    
  • Для обеспечения обратной совместимости с версией 3.0 для разделения имён каталогов также могут быть использованы пробелы. Чтобы включить пробел в имя каталога, его следует экранировать при помощи символа обратной косой черты, которую в сою очередь также следует экранировать:

    :set path=.,/dir/with\\\ space
    
  • Для включения в имя каталога запятой, её следует предварять символом обратной косой черты:

    :set path=.,/dir/with\\,comma
    
  • Для выполнения поиска относительно каталога, в котором находится текущий файл, используйте точку:

    :set path=.
    
  • Для выполнения поиска в текущем каталоге используйте пустую строку, заключённую между двумя запятыми:

    :set path=,,
    
  • Имя каталога может заканчиваться на ‘:’ или ‘/’.
  • При изменении значения опции выполняется подстановка переменных окружения, см. |подстановка_переменных_окружения|.
  • Модуль |netrw.vim| позволяет в качестве путей использовать URL. Например, при добавлении к значению опции «http://www.vim.org«, можно будет выполнять команду «:find index.html».
  • Организация нисходящего и восходящего поиска в дереве каталогов выполняется следующим образом:
    1. «*» соответствует любой последовательности символов, например:

      :set path=/usr/include/*
      

      соответствует всем подкаталогам в /usr/include, исключая сам каталог /usr/include.

      :set path=/usr/*c
      

      этой настройке соответствуют в частности каталоги /usr/doc и/usr/src.

    2. «**» соответствует поддереву, которое может содержать до 100 каталогов. Например:

      :set path=/home/user_x/src/**

      соответствует всему поддереву каталогов, расположенных в «/home/usr_x/src».

    3. Если путь заканчивается символом ‘;’, то этот путь является отправным для восходящего поиска.

    Дополнительная информация и правила синтаксиса для задания путей поиска файлов приводится в разделе справочника |файл-поиск|.
    Доступно только в том случае, если Vim скомпилирован с особенностью |+path_extra|.

  • Следует быть аккуратным с символами ‘\’. Чтобы получить в значении опции символ обратной косой, необходимо набирать два таких символа:
    :set path=.,c:\\include
    

    либо использовать вместо него символ ‘/’:

    :set path=.,c:/include
    

    Не забывайте указывать в качестве одного из значений «.», иначе вы не сможете искать файлы в том же каталоге, что и текущий файл! Максимальная длина пути ограничивается операционной системой и, как правило, составляет 256 или 1024 символа. Чтобы проверить, все ли включённые файлы найдены в каталогах, заданных в значении опции ‘path’, используйте команду |:checkpath|. При добавлении или удалении каталогов лучше всего использовать команды |:set+=| и |:set-=|, поскольку это позволяет избежать проблем, если новых версиях будет использовано иное значение по умолчанию. Для удаления текущего каталога используйте команду

    :set path-=
    

    Для добавления текущего каталога используйте команду

    :set path+=
    

    Для использования переменных окружения вам может потребоваться изменить значение разделителя компонентов пути. Например, для добавления значения переменной $INCL, в котором каталоги перечислены через символ точки с запятой, можно применить команду

    :let &path = &path . "," . substitute($INCL, ';', ',', 'g')
    

    Вы можете заменять символ ‘;’ на ‘:’ или любой другой разделитель, который используется в вашем случае. Обратите внимание, что если $INCL содержит запятые или пробелы, то такой приём не сработает.

‘preserveindent’ ‘pi’

переключатель (по умолчанию: выключено)
местная по отношению к буферу опция
Vi не имеет такой возможности.

Опция позволяет по возможности максимально сохранять структуру существующих отступов при изменении отступа текущей строки. Обычно отступ заменяется серией символов табуляции, после которых следует необходимое количество пробелов (если опция ‘expandtab’ выключена, в противном случае используются только пробелы). При включении данной опции при создании отступа будет сохраняться максимально возможное количество существующих символов, а дополнительные символы табуляции или пробелы добавляются при необходимости.

ЗАМЕЧАНИЕ: При использовании команды «>>» несколько раз в результате отступ может состоять из сочетания пробелов и символов табуляции, что не всегда может быть желательно.

ЗАМЕЧАНИЕ: Опция ‘preserveindent’ отключается при включении опции ‘compatible’. См. также справку по опции ‘copyindent’.

Для замены пробелов на символы табуляции используйте команду |:retab|.

‘previewheight’ ‘pvh’

число (по умолчанию: 12)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностями |+windows| и |+quickfix|.

Опция задаёт высоту окна предварительного просмотра по умолчанию. Её значение используется при выполнении |:ptag| и ряда других команд. Кроме того, значение опции используется при выполнении команды |CTRL-W_}| без явно указанного числа.

‘previewwindow’ ‘pvw’

переключатель (по умолчанию: выключено)
местная по отношению к окну опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностями |+windows| и |+quickfix|.

Опция определяет, что данное окно является окном предварительного просмотра. Данная опция может быть включена только у одного окна. Обычно значение этой опции изменяется не напрямую, а при помощи команд |:ptag|, |:pedit| и т.д.

‘printdevice’ ‘pdev’

строка (по умолчанию: пустая строка)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+printer|.

Опция задаёт название принтера, на который производится печать при использовании команды |:hardcopy| с восклицательным знаком (!), позволяющим пропустить окно выбора принтера. В Win32 имя принтера должно быть задано в точности так же, как оно представлено в стандартном окне выбора принтера.

Если значением данной опции является пустая строка, то Vim будет использовать для выполнения команды «:hardcopy!» принтер, выбранный в системе в качестве основного.

‘printencoding’ ‘penc’

строка (по умолчанию: пустая строка, за исключением: Windows, OS/2: cp1252, Macintosh: mac-roman, VMS: dec-mcs, HPUX: hp-roman8, EBCDIC: ebcdic-uk)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностями |+printer| и |+postscript|.

Опция задаёт кодировку символов, используемую при печати документа из Vim. Её значение указывает на файл с таблицей кодировки, который должен быть помещён в каталог «print» в одном из каталогов, указанных в значении опции ‘runtimepath’.

Эта опция может принимать любое значение, описанное в разделе справочника |кодировки-имена|. Все известные имена автоматически приводятся к стандартным именам кодировок Vim, как об этом подробно излагается в справке по опции ‘encoding’. Имена кодировок, которые не могут быть распознаны Vim, приводятся к нижнему регистру символов с заменой всех символов подчёркивания на дефисы (‘-‘).

Если значением опции ‘printencoding’ является пустая строка или Vim не может найти файл с таблицей кодировки, то для поиска этого файла будет использовано значение опции ‘encoding’ (если Vim скомпилирован с особенностью |+multi_byte| и значение этой опции соответствует 8-битной кодировке).

Если значение опции ‘encoding’ соответствует мультибайтной кодировке, то Vim попытается выполнить перевод символов в кодировке принтера при печати (если значением ‘printencoding’ является пустая строка, то будет выполняться преобразование в кодировку latin1).

Перевод в кодировку, отличную от latin1, требует, чтобы Vim был скомпилирован с особенностью |+iconv|. При невозможности выполнения преобразования символов в кодировку принтера, печать будет прервана. Все символы, которые не могут быть преобразованы в данную кодировку, заменяются символами перевёрнутого вопросительного знака.

Для поддержки принятых на Mac, VMS, HPUX и EBCDIC кодировок по умолчанию вместе с Vim поставляется четыре соответствующих файла с таблицами кодировок. На платформах Windows и OS/2 по умолчанию используется кодовая страница 1252.

‘printexpr’ ‘pexpr’

строка (по умолчанию: см. ниже)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностями |+printer| и |+postscript|.

Опция содержит выражение, которое вычисляется при печати файла PostScript, который создаётся по команде «:hardcopy». Для хранения имени файла, созданного для отправки на печать, используется переменная |v:fname_in|.

Аргументы команды «:hardcopy» хранятся в переменной |v:cmdarg|. Выражение должно содержать команду удаления файла после печати. При возникновении ошибки печати выражение должно возвращать отличное от нуля число, а если печать закончилась успешно, то должно возвращаться нулевое значение или пустая строка.

В системах MS-Windows и VMS по умолчанию используется команда «lpr»:

system('lpr' . (&printdevice == '' ? '' : ' -P' . &printdevice)
. ' ' . v:fname_in) . delete(v:fname_in) + v:shell_error

В MS-Windows по умолчанию файл копируется на устройство печати, заданное при помощи опции ‘printdevice’:

system('copy' . ' ' . v:fname_in . ' "' . &printdevice . '"')
. delete(v:fname_in)

На VMS по умолчанию происходит отправка файла на заданное устройство печати:

system('print' . (&printdevice == '' ? '' : ' /queue=' .
&printdevice) . ' ' . v:fname_in) . delete(v:fname_in)

Чтобы избежать экранирования пробелов, при изменении данной опции лучше всего использовать специально написанную функцию. Например:

:set printexpr=PrintFile(v:fname_in)
:function PrintFile(fname)
: call system("ghostview " . a:fname)
: call delete(a:fname)
: return v:shell_error
:endfunc

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

Если вычисление выражения приводит к ошибке или выражение возвращает отличное от нуля значение, то Vim выводит сообщение об ошибке и удаляет соответствующий файл для печати. В значении этой опции на системах, отличных от MS-Windows, используется изменение переменной «v:shell_error», что приводит к возврату ненулевого значения при неуспешном вызове функции system().

Значение этой опции не может быть изменено из |режимной_строки| или в |песочнице| по соображениям безопасности.

‘printfont’ ‘pfn’

строка (по умолчанию: «courier»)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+printer|.

Опция служит для задания имени шрифта, который используется при печати документа по команде |:hardcopy|. Формат значения опции аналогичен формату значения опции ‘guifont’, но при этом может быть задан только один шрифт и невозможно использовать окно выбора шрифта с помощью «guifont=*».

В версии Win32 с графическим интерфейсом опция позволяет задавать дополнительные параметры шрифта, как в случае с опцией ‘guifont’. На других системах можно дополнительно задавать только размер шрифта, при помощи «:h11», где «11» это кегль шрифта в пунктах. Если размер шрифта не задан, то по умолчанию он принимается равным 10 пунктам.

‘printheader’ ‘pheader’

строка (по умолчанию: «%<%f%h%m%=Page %N»)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+printer|.

Опция задаёт формат заголовка страницы при выводе на печать при помощи команды |:hardcopy|. Значение опции задаётся аналогично формату опции ‘statusline’. Если Vim скомпилирован без особенности |+statusline|, то значение данной опции не учитывается, а страницы выводятся на печать с простым заголовком по умолчанию, в котором отображается номер страницы.

‘printoptions’ ‘popt’

строка (по умолчанию: «»)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+printer|.

Опция представляет собой список разделённых запятыми компонентов, которые управляют процессом печати при помощи команды |:hardcopy|.

left:{размер}
right:{размер}
top:{размер}
bottom:{размер}

левое поле (по умолчанию: 10pc)
правое поле (по умолчанию: 5pc)
верхнее поле (по умолчанию: 5pc)
нижнее поле (по умолчанию: 5pc)
В качестве {размера} используется число, за которым следует название единицы измерения: «in» (дюймы), «pt» (пункты, 1 пункт составляет 1/72 дюйма), «mm» (миллиметры), «pc» (проценты от размера страницы).

Несколько странный пример:

left:2in,top:30pt,right:16mm,bottom:3pc

Если указана неизвестная единица измерения, то сообщение об ошибке не выводится и будет использоваться значение по умолчанию.

header:{число}Количество строк, которые должны быть отведены под заголовок. Поскольку заголовок занимает только одну строку, то при задании {числа} 2 одна строка под заголовком будет пустой. Формат заголовка задаётся значением опции ‘printheader’.
header:0Заголовок не выводится на печать.
header:2 (по умолч.)Под заголовок отводится две строки.
syntax:nНе использовать подсветку синтаксиса. Печать в это случае выполняется быстрее. Это полезно при выводе на печать больших файлов.
syntax:yИспользовать подсветку синтаксиса.
syntax:a (по умолч.)Использовать подсветку синтаксиса, если принтер способен воспроизводить оттенки серого или цвет.
number:yВключать номера строк при выводе документа на печать.
number:n (по умолч.)Номера строк выключены.
wrap:y (по умолч.)Переносить длинные строки.
wrap:nОбрезать длинные строки.
duplex:offОдносторонняя печать.
duplex:long (по умолч.)Двухсторонняя печать, если это возможно. Страницы сшиваются по длинной стороне листа.
duplex:shortДвухсторонняя печать, если это возможно. Страницы сшиваются по короткой стороне листа.
collate:y (по умолч.)Подбор страниц: 1 2 3, 1 2 3, 1 2 3
collate:nБез подбора страниц: 1 1 1, 2 2 2, 3 3 3
jobsplit:n (по умолч.)Печать всех копий в одном задании для печати.
jobsplit:yПечать каждой копии в отдельном задании для печати. Это полезно при дополнительной обработке файлов для последующей фальцовки.
portrait:y (по умолч.)Портретная ориентация.
portrait:nАльбомная ориентация.
*a4* paper:A4 (по умолч.)Размер бумаги: A4
paper:{размер}

Размер бумаги согласно таблице:

{размер}в сантиметрахв дюймах
10×1425.4 x 35.5710 x 14
A329.7 x 4211.69 x 16.54
A421 x 29.78.27 x 11.69
A514.8 x 215.83 x 8.27
B425 x 35.310.12 x 14.33
B517.6 x 257.17 x 10.12
executive18.42 x 26.677.25 x 10.5
folio21 x 338.27 x 13
ledger43.13 x 27.9617 x 11
legal21.59 x 35.578.5 x 14
letter21.59 x 27.968.5 x 11
quarto21.59 x 27.58.5 x 10.83
statement13.97 x 21.595.5 x 8.5
tabloid27.96 x 43.1311 x 17
formfeed:n (по умолч.)Символы протяжки бумаги (0x0c) считаются обычными печатными символами.
formfeed:yПечатать строку, содержащую символ протяжки бумаги, в начале новой страницы.

Все настройки, помеченные «(по умолч.)» используются, если они не заданы явно. Их значения используются не всегда, особенно если для настройки параметров печати применяется диалоговое окно.

Пример:

:set printoptions=paper:letter,duplex:off

‘readonly’ ‘ro’

переключатель (по умолчанию: выключено)
местная по отношению к буферу опция

Если данная опция находится во включённом состоянии, то запись буфера может быть выполнена только при указании в команде записи флага ‘!’, что позволяет предохранить файл от случайной перезаписи. Опция имеет включённое по умолчанию значение, если Vim запущен в режиме «только для чтения» («vim -R») или при запуске редактора при помощи команды «view».

Vi не имеет такой возможности: При выполнении команды «:view» для нового буфера опция ‘readonly’ включается автоматически. После выполнения команды «w!» опция ‘readonly’ для текущего буфера автоматически выключается.

‘remap’

переключатель (по умолчанию: включено)
глобальная опция

Опция позволяет привязкам выполняться рекурсивно. Для одновременного отключения этой опции на время выполнения одной команды, можно использовать команду «:noremap[!]».

‘report’

число (по умолчанию: 2)
глобальная опция

Опция задаёт порог, при котором выводится отчёт о количестве изменённых строк. Если число изменённых строк превышает значение опции ‘report’, то такой отчёт выводится после выполнения большинства команд, начинающихся с «:». Если вы желаете всегда видеть этот отчёт, то измените значение опции ‘report’ на 0.

Для команды «:substitute» вместо количества строк используется количество произведённых замен в тексте.

‘restorescreen’ ‘rs’

переключатель (по умолчанию: включено)
глобальная опция
Vi не имеет такой возможности.
Доступно только в версии для консоли Windows 95/NT.

Во включённом состоянии опция позволяет восстанавливать содержимое экрана при выходе из редактора или при выполнении внешних команд.

На других системах, отличных от Windows, вы можете воспользоваться возможностью включения или выключения опций ‘t_ti’ и ‘t_te’ в файле .vimrc. Для того, чтобы отключить восстановление экрана, введите команду:

set t_ti= t_te=

Для включения восстановления содержимого экрана (в xterm) введите команду:

set t_ti=^[7^[[r^[[?47h t_te=^[[?47l^[8

(Здесь ^[ это <Esc>, для ввода введите CTRL-V <Esc>)

‘revins’ ‘ri’

переключатель (по умолчанию: выключено)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+rightleft|.

Опция переключает направление ввода символов в режиме Вставки.  См. также раздел справки «Ввод символов в обратном направлении» |вставка-справа_налево|. Данная опция может переключаться в режиме Вставки по команде CTRL-_, если включена опция ‘allowrevins’.

ЗАМЕЧАНИЕ: Данная опция выключается при включении опции ‘compatible’ или ‘paste’.

‘rightleft’ ‘rl’

переключатель (по умолчанию: выключено)
местная по отношению к окну опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+rightleft|.

Во включённом состоянии опция приводит к изменению направления символов в строке на обратное, т.е. символы в файле отображаются на экране построчно справа налево. При помощи этой опции становится доступным редактирование файлов на языках с обратным направлением письма, таких как иврит или арабский. Опция включается для каждого окна отдельно, поэтому возможно редактирование текстов, включающих фрагменты на нескольких языках с разным направлением письма, или просмотр одного и того же файла в разных режимах, что полезно в тех случаях, когда файл содержит смешанный текст как в том, так и в другом направлении (строки могут быть показаны в разных окнах с правильным направлением письма). См. также |rileft.txt|.

‘rightleftcmd’ ‘rlc’

строка (по умолчанию: «search»)
местная по отношению к окну опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+rightleft|.

Каждое слово в значении данной опции позволяет использовать ввод символов справа налево для группы команд в соответствующей командной строке:

search          команды "/" и "?"

Эта опция полезна для таких языков, как иврит, арабский и фарси. Чтобы опция ‘rightleftcmd’ работала необходимо также включить опцию ‘rightleft’.

‘ruler’ ‘ru’

переключатель (по умолчанию: выключено)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+cmdline_info|.

Опция используется для включения «линейки», отображающей номер строки и колонки, в которой находится курсор. Если на экране достаточно места, то в правой части линейки отображается положение отображаемого на экране фрагмента текста относительно общего размера файла:

НаверхуЕсли видна первая строка файла
ВнизуЕсли видна последняя строка файла
Весь файлЕсли видны первая и последняя строки файла
45%Позиция относительно общего размера файла

Опция ‘rulerformat’, если её значение задано, может определять информацию, которая отображается на «линейке». Каждое окно имеет собственную линейку. Если в окне отображается строка состояния, то линейка будет показана на этой строке, в противном случае линейка отображается в последней строке экрана. Значение опции ‘statusline’, если оно задано, имеет приоритет над значениями опций ‘ruler’ и ‘rulerformat’. Если количество символов, отображаемых на экране, отличается от количества байтов в тексте (например, из-за символов табуляции или наличия мультибайтных символов в тексте), то на линейке отображаются как номер байта в строке текста, так и номер колонки экрана, разделённые символом дефиса.

Пустая строка отображается на линейке как «0-1». В пустом буфере номер текущей строки также отображается в виде нуля: «0,0-1».

Данная опция автоматически выключается при включении опции ‘paste’. Если вы не хотите постоянно отображать линейку на экране, но вам необходимо выяснить где находится курсор в текущий момент, воспользуйтесь командой «g CTRL-G» |g_CTRL-G|.

ЗАМЕЧАНИЕ: Эта опция отключается при включении опции ‘compatible’.

‘rulerformat’ ‘ruf’

строка (по умолчанию: пустая строка)
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+statusline|.

Эта опция, если её значение не является пустой строкой, определяет набор информации, которая показывается на линейке, отображаемой при помощи опции ‘ruler’.

Формат значения этой опции совпадает с используемым в опции ‘statusline’.

Ширина линейки по умолчанию составляет 17 символов. Для создания линейки шириной в 15 символов, поместите «%15(» в начале значения опции и «%)» в конце. Например:

:set rulerformat=%15(%c%V\ %p%%%)

‘runtimepath’ ‘rtp’

строка (по умолчанию:
в Unix:   «$HOME/.vim, $VIM/vimfiles, $VIMRUNTIME, $VIM/vimfiles/after, $HOME/.vim/after»
на Amiga: «home:vimfiles, $VIM/vimfiles, $VIMRUNTIME, $VIM/vimfiles/after, home:vimfiles/after»
на PC, OS/2: «$HOME/vimfiles, $VIM/vimfiles, $VIMRUNTIME, $VIM/vimfiles/after, $HOME/vimfiles/after»
на Macintosh: «$VIM:vimfiles, $VIMRUNTIME, $VIM:vimfiles:after»
в RISC-OS: «Choices:vimfiles, $VIMRUNTIME, Choices:vimfiles/after»
на VMS: «sys$login:vimfiles, $VIM/vimfiles, $VIMRUNTIME, $VIM/vimfiles/after, sys$login:vimfiles/after»
глобальная опция
Vi не имеет такой возможности.

Опция определяет список каталогов, в которых Vim ищет файлы для своей рабочей среды:

filetype.vimтипы файлов по имени файла |новый_тип_файла|
scripts.vimтипы файлов по содержимому файла |сценарии_нового_типа_файла|
colors/файлы цветовых схем |:colorscheme|
compiler/файлы поддержки компиляторов |:compiler|
doc/файлы справочника |создание_справки|
ftplugin/модули типов файла |написание_модулей_типа_файла|
indent/сценарии создания отступов |отступы-выражения|
keymap/файлы с раскладками клавиатуры |мультибайт-раскладка_клавиатуры|
lang/переводы меню |:menutrans|
menu.vimменю для графического интерфейса |menu.vim|
plugin/сценарии модулей |написать_свой_модуль|
print/вспомогательные файлы для распечатки документов |postscript-кодировка|
syntax/файлы с правилами синтаксиса |свой_файл_синтаксиса|
tutor/файлы учебника по Vim (vimtutor) |учебник|

а также другие файлы, для поиска которых используется команда |:runtime|.

Значения по умолчанию в большинстве систем выбраны таким образом, чтобы поиск выполнялся в пяти различных местах в системе:

  1. В домашнем каталоге пользователя, где удобно хранить личные настройки.
  2. В общесистемном каталоге Vim, где могут храниться настройки, заданные системным администратором.
  3. В каталогах, заданных значением переменной окружения $VIMRUNTIME, где хранятся файлы, распространяемые в составе Vim.
  4. В каталоге «after» в общесистемном каталоге Vim. Этот каталог может использоваться системным администратором для изменения или добавления файлов, распространяемых в составе Vim (необходимость в этом возникает редко).
  5. В каталоге «after» в домашнем каталоге пользователя. Этот каталог используется отдельным пользователем для изменения или добавления файлов, распространяемых в составе Vim (необходимость в этом возникает редко).

Обратите внимание, что в отличие от опции ‘path’, в значении данной опции не допускается использование масок вроде «**». Обычные маски допустимы, но они могут существенно снизить скорость поиска файлов рабочей среды. Для повышения производительности стремитесь использовать как можно меньше отдельных элементов в значении данной опции и избегайте масок.

См. также |:runtime|.

Пример:

:set runtimepath=~/vimruntime,/mygroup/vim,$VIMRUNTIME

Команда, приведённая выше, назначает в качестве каталогов для файлов рабочей среды прежде всего каталог «~/vimruntime» (где хранятся личные настройки пользователя), затем каталог «/mygroup/vim» (в котором хранятся настройки, которые совместно используются группой людей), а затем «$VIMRUNTIME» (где хранятся файлы рабочей среды, распространяемые в составе Vim).

Как правило, $VIMRUNTIME всегда должно включаться в значение данной опции, чтобы Vim мог использовать файлы, распространяемые в составе редактора. Чтобы обеспечить поиск дополнительных файлов, помимо распространяемых в составе редактора, можно указать дополнительный каталог после компонента $VIMRUNTIME.

Эта опция не может быть изменена из |режимной_строки| или в |песочнице| по соображениям безопасности.

Опции: A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,R,S,T,U,V,W

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *