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

'tabstop' 'ts'

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

Опция задаёт количество пробелов, используемых для отображения содержащихся в файле символов <Tab>. См. также справку по команде |:retab| и опцию 'softtabstop'.

Замечание: изменение значения опции 'tabstop' на величину, отличную от принятой по умолчанию (8), может привести к неправильному отображению файла при печати или на других машинах.

Существует четыре основных способа использования символов табуляции в Vim:

  1. Путём изменения значения опций 'softtabstop' и 'shiftwidth' на 4 (или 3, или любую другую величину), при сохранении значения опции 'tabstop' равным 8 и использовании опции 'noexpandtab'. В этом случае Vim будет использовать набор символов табуляции и пробелов, но при этом <Tab> и <BS> будут вести себя так, как если бы метки табуляции были расставлены через каждые 4 (3, ...) символа.
  2. Путём изменения значения 'tabstop' и 'shiftwidth' на любую необходимую величину с использованием опции 'expandtab'. При этом символы табуляции всегда будут заменяться пробелами. При изменении значения опции 'tabstop' форматирование будет сохранено.
  3. Путём изменения значения 'tabstop' и 'shiftwidth' на любую необходимую величину с использованием |режимной_строки| для использования заданных значений этих опции при повторном редактировании файла. Этот вариант работает только в том случае, если для редактирования файла используется Vim.
  4. Путём использования равных по величине значений опций 'tabstop' и 'shiftwidth' и опции 'noexpandtab'. В этом случае для начальных отступов строк будет использоваться любое текущее значение 'tabstop'. В этом случае следует пользоваться пробелами для вставки символов табуляции далее в строке, чтобы выравнивание оставалось в силе при изменении значения опции 'tabstop'.

'tagbsearch' 'tbs'

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

Vim может выполнять как линейный, так и бинарный поиск, при выполнении команд поиска в файле меток (например, по команде |:ta|).  Бинарный поиск выполняется НАМНОГО быстрее, однако линейный поиск позволяет обнаруживать больше меток в тех случаях, когда файл меток не отсортирован должным образом. По умолчанию Vim принимает, что ваши файлы меток отсортированы, либо сообщает, что сортировка отсутствует. Опцию 'tagbsearch' следует отключать только в тех случаях, когда указанные условия не выполняются.

При включённой опции 'tagbsearch' наиболее вероятно, что Vim будет использовать бинарный поиск. В некоторых случаях Vim прибегает к линейному поиску или проводит повторный линейный поиск в определённых файлах, если это потребуется. При выключенной опции 'tagbsearch' всегда выполняется только линейный поиск.

Линейный поиск всегда производится в тех файлах, где Vim обнаруживает в начале файла строку, предупреждающую, что файл не отсортирован:

!_TAG_FILE_SORTED    0    /some command/

[до и после '0' должен быть единственный символ <Tab>]

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

Если в файле меток содержится указание, что файл отсортирован с учётом регистра символов, то необходимость в выполнении второго линейного поиска при включённой опции 'ignorecase' отпадает. В этом случае следует использовать значение '2' в строке "!_TAG_FILE_SORTED". Файл меток может быть отсортирован с учётом регистра символов при помощи команды "sort -f" в большинстве систем Unix, например: "sort -f -o tags tags". В "Exuberant ctags" версии 5.3 и выше можно также использовать аргумент -f или --fold-case-sort. Обратите внимание, что для этого также необходимо, чтобы символы были приведены к верхнему регистру.

При выключенной опции 'tagbsearch' поиск в файле меток выполняется дольше в том случае, когда имеется полное соответствие, но быстрее в тех случаях, когда полное соответствие отсутствует. Метки в неотсортированных файлах меток могут быть найдены только при выключенной опции 'tagbsearch'.

Если файл меток не отсортирован, либо отсортирован неправильно (не по порядку значений ASCII), то опция 'tagbsearch' должна быть отключена, либо приведённая выше строка не должна быть указана в файле меток.

Данная опция не оказывает влияния на команды, которые выполняют поиск всех отвечающих заданному условию меток (например, автодополнение в командной строке, команда ":help").

Vi всегда использует бинарный поиск в некоторых версиях.

'taglength' 'tl'

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

Если значение этой опции не равно 0, то оно указывает на количество символов, значимых для определения различия между метками.

'tagrelative' 'tr'

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

При использовании файла меток в другом каталоге, пути к файлам в данном файле меток конструируются относительно каталога, в котором находится файл меток, если данная опция включена.

ЗАМЕЧАНИЕ: значение опции устанавливается равным принятому по умолчанию в режиме совместимости с Vi при включении опции 'compatible' и равным принятому по умолчанию в режиме Vim при отключении опции 'compatible'.

'tags' 'tag'

строка (по умолчанию: "./tags,tags",  если Vim скомпилирован с включённой особенностью |+emacs_tags|:  "./tags,./TAGS,tags,TAGS")
глобальная или местная по отношению к буферу опция |глобальные-местные|

Значение опции представляет собой разделённый пробелами или запятыми список имён файлов для команды ":tag". Для включения пробела или запятой в состав имени файла следует предварять их символом обратной косой черты (о включении пробелов и символов обратной косой черты в значение опции читайте в разделе |опции-обратная_косая|). Если имя файла начинается с "./", то "." заменяется на путь к текущему файлу, если флаг 'd' не включён в значение опции 'cpoptions'. При задании значения данной опции выполняется |подстановка_переменных_окружения|. См. также раздел справочника |tags-опция|.

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

Если Vim скомпилирован с особенностью |+emacs_tags|, то редактор также будет автоматически поддерживать метки в стиле Emacs. Значением данной опции по умолчанию в таком случае будет "./tags,./TAGS,tags,TAGS", кроме MS-Windows и других ОС, где регистр символов в именах файлов не имеет значения. См. |emacs-метки|.

При добавлении или исключении имён файлов лучше использовать команды |:set+=| и |:set-=|, что позволяет избежать проблем в том случае, если в новой версии будет использовано иное значение по умолчанию.

Vi использует по умолчанию значение "tags /usr/lib/tags".

'tagstack' 'tgst'

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

При включённой опции 'tagstack' |стек_меток| работает в обычном режиме. Если данная опция находится в выключенном состоянии, то при выполнении команд ":tag" и ":tselect" с дополнительным аргументом, соответствующая метка не будет помещаться в стек. При следующем вызове команды, использующей стек (":tag" без аргумента, ":pop" и т.п.), будет использоваться стек без изменений, но указатель стека будет перенесён к активному элементу. Выключение данной опции может оказаться полезным при использовании команды ":tag" в привязках, которые не должны изменять стек меток.

'term'

строка (по умолчанию значение переменной $TERM, либо, если переменная не задана: в версии с графическим интерфейсом:  "builtin_gui", на Amiga:  "amiga", на BeOS: "beos-ansi", на Mac: "mac-ansi", на MiNT: "vt52", на MS-DOS: "pcterm", на OS/2: "os2ansi", в Unix: "ansi", на VMS: "ansi", в Win 32: "win32")
глобальная опция

Значением опции является имя терминала. Используется для выбора управляющих символов терминала. При изменении значения данной опции выполняется |подстановка_переменных_окружения|.

Например:

:set term=$TERM

См. также |termcap|.

'termbidi' 'tbidi'

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

Включённое состояние опции указывает, что за работу с направлением текста (в соответствии с Unicode) отвечает сам терминал. При этом терминал также выполняет работу по выбору внешнего вида символов в зависимости от положения в слове, если это требуется по правилам языка ввода (например, в арабском).

Включение данной опции подразумевает, что при включении опции 'arabic' опция 'rightleft' включаться не будет, а значение опции 'arabicshape' не будет приниматься во внимание. Сразу после перевода данной опции во включённое состояние значение опции 'arabicshape' перестаёт влиять на работу Vim, однако значение опции 'rightleft' не изменяется автоматически.

Данная опция отключается при запуске графического интерфейса.

Дополнительная информация приводится в разделе |arabic.txt|.

'termencoding' 'tenc'

строка (по умолчанию: ""; в графическом интерфейсе GTK+ 2: "utf-8"; в графическом интерфейсе Macintosh: "macroman")
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+multi_byte|.

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

В консольной версии Win32 значением по умолчанию является кодовая страница консоли, если она отличается от кодовой страницы ANSI.

Замечание: При работе в графическом интерфейсе GTK+ 2 опция работает несколько иначе. После успешной инициализации графического интерфейса значение опции 'termencoding' насильно устанавливается равным "utf-8", а все последующие попытки изменить это значение будут отклоняться с выдачей сообщения об ошибке.

В графическом интерфейсе Win32 значение опции 'termencoding' при наборе символов не используется, поскольку система Win32 всегда использует символы Unicode.

Если значением опции является пустая строка, как это принято по умолчанию, то используется значение опции 'encoding'. Не все сочетания значений 'termencoding' и 'encoding' допустимы. Подробнее об этом см. раздел справочника |кодировки-таблица|. Значение данной опции должно поддерживаться внутренними функциями преобразования кодировок или функцией iconv(). Если это не так, то преобразование выполняться не будет и вы можете столкнуться с проблемами при отображении не-ASCII символов.

Пример: если вы работаете с локалью euc-jp (японский язык) и желаете редактировать файл в кодировке UTF-8:

:let &termencoding = &encoding
:set encoding=utf-8

Эти команды могут потребоваться в том случае, если ваша система не поддерживает локаль UTF-8.

'terse'

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

При включении данной опции к значению опции 'shortmess' добавляется флаг 's', что приводит к прекращению выдачи сообщения о достижении конца или начала файла при поиске соответствия заданному шаблону поиска. При отключении данной опции флаг 's' из значения опции 'shortmess' убирается.
Vi сокращает большое количество сообщений.

'textauto' 'ta'

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

Эта опция является устаревшей и существует для обеспечения обратной совместимости. Вместо неё следует использовать опцию 'fileformats'.

При включении опции 'textauto' значение опции 'fileformats' устанавливается равным значению по умолчанию для данной операционной системы. При отключении опции 'textauto' значение опции 'fileformats' устанавливается равным пустой строке.

ЗАМЕЧАНИЕ: значение опции устанавливается равным принятому по умолчанию в режиме совместимости с Vi при включении опции 'compatible' и равным принятому по умолчанию в режиме Vim при отключении опции 'compatible'.

'textmode' 'tx'

переключатель (по умолчанию на MS-DOS, Win32 и OS/2: включено, на остальных системах: выключено)
местная по отношению к буферу опция
Vi не имеет такой возможности.

Эта опция является устаревшей и существует для обеспечения обратной совместимости. Вместо неё следует использовать опцию 'fileformat'.

При включении опции 'textmode' значение опции 'fileformat' устанавливается равным "dos". При отключении опции 'textmode' значение опции 'fileformat' устанавливается равным "unix".

'textwidth' 'tw'

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

Опция указывает на максимальную длину строки текста при вставке. Для обеспечения заданной значением данной опции ширины текста длинные строки могут быть разбиты на несколько строк после пробельных символов. Нулевое значение данной опции отключает разбивку длинных строк. При включении опции 'paste' значение данной опции устанавливается равным 0. При нулевом значении опции 'textwidth' может быть использована опция 'wrapmargin'. См. также справку по опции 'formatoptions' и раздел |вставка-textwidth|.

ЗАМЕЧАНИЕ: Значение данной опции устанавливается равным 0 при включении опции 'compatible'.

'thesaurus' 'tsr'

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

Опция представляет собой список имён файлов словарей синонимов, разделённых запятыми. Словари синонимов используются при выполнении команды автодополнения синонимов |i_CTRL-X_CTRL-T|. Каждая строка в файле должна содержать слова с похожим значением, разделённые одним из несловарных символов (лучше всего использовать пробел). Максимальная длина строки в таком файле не должна превышать 510 байтов. Дополнительную информацию о файлах синонимов можно получить на странице часто задаваемых вопросов о списках слов по адресу https://www.hyphenologist.co.uk .

Для включения в состав имени файла запятой её следует предварять символом обратной косой черты. Пробелы после запятой игнорируются, но в остальных случаях рассматриваются как часть имени файла. Подробнее об использовании символов обратной косой черты в значениях опций читайте в разделе |опции-обратная_косая|.

При добавлении или исключении имён файлов лучше использовать команды |:set+=| и |:set-=|, что позволяет избежать проблем в том случае, если в новой версии будет использовано иное значение по умолчанию. Символы обратных кавычек не могут быть использованы в значении данной опции по соображениям безопасности.

'tildeop' 'top'

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

При включённой опции 'tildeop' команда "~" ведёт себя как оператор.

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

'timeout' 'to'
'ttimeout'

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

Опции 'timeout' и 'ttimeout' совместно используются для настройки поведения Vim при вводе частичной последовательности символов, используемых в привязках, и клавиатурных кодов:

'timeout' 'ttimeout' действие
выкл выкл не использовать временную задержку
вкл вкл или выкл использовать временную задержку для привязок :map и клавиатурных кодов
выкл вкл использовать временную задержку для клавиатурных кодов

Если обе опции находятся в выключенном состоянии, то Vim будет ожидать завершения ввода привязки или клавиатурного кода, либо момента, к которому становится ясно, что введённые символы не относятся к клавиатурным кодам или привязкам. Например, если вы определили привязку для последовательности символов "vl", то при вводе символа 'v' редактор будет ожидать ввода следующего символа, чтобы выяснить не является ли он символом 'l'.

Если одна из указанных опций находится во включенном состоянии, то Vim будет ожидать ввода следующего символа в течение примерно 1 секунды. По истечении этого времени уже введённые символы воспринимаются как обычные одиночные символы. Период ожидания настраивается при помощи опции 'timeoutlen'.

На медленных терминалах и сильно загруженных системах использование временной задержки может привести к нарушению работы кнопок управления курсором. Если обе опции находятся в выключенном состоянии, то после ввода <Esc> Vim будет ожидать ввода клавиатурных кодов, начинающихся с символа <Esc>, сколь угодно долго. В этом случае вам придётся вводить символ <Esc> дважды. Если у вас нет проблем с вводом клавиатурных кодов, но вам не хотелось бы, чтобы последовательности, используемые в привязках, утрачивали свою силу при частичном вводе в течение секунды, то необходимо включить опцию 'ttimeout' и отключить опцию 'timeout'.

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

'timeoutlen' 'tm'

число (по умолчанию: 1000)
глобальная опция
Доступно не во всех версиях Vi.

'ttimeoutlen' 'ttm'

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

Эти опции задают период времени в миллисекундах, в течение которого происходит ожидание продолжения ввода символьных последовательностей, используемых в привязках и клавиатурных кодах. Также применяется при выполнении команд CTRL-\ CTRL-N и CTRL-\ CTRL-G, если введена только часть команды.

Обычно используется только значение опции 'timeoutlen', а значение опции 'ttimeoutlen' равно -1. Чтобы использовать значение задержки при вводе клавиатурных кодов, отличное от задержки, применяемой при вводе привязки, измените значение 'ttimeoutlen' на неотрицательное значение.

ttimeoutlen задержка для привязок задержка для клав. кодов
< 0 'timeoutlen' 'timeoutlen'
>= 0 'timeoutlen' 'ttimeoutlen'

Временная задержка используется в соответствии с текущими установками опций 'timeout' и 'ttimeout'. Примером полезной настройки может быть:

:set timeout timeoutlen=3000 ttimeoutlen=100

(ожидание ввода следующего символа при вводе привязок составляет три секунды, а при вводе клавиатурных кодов - одну десятую секунды).

'title'

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

При включённой опции 'title' заголовок окна будет изменён в соответствии со значением опции 'titlestring' (если её значение не является пустой строкой), либо на значение, соответствующее формату

имя_файла [+=-] (путь) - VIM

где:

имя_файла имя редактируемого файла
- указывает, что файл не может быть изменён, опция 'ma' выключена
+ указывает, что файл был изменён
= указывает, что файл открыт только для чтения
=+ указывает, что файл открыт только для чтения и был изменён
(путь) путь к редактируемому файлу
- VIM имя сервера |v:servername| или "VIM"

Опция работает только в том случае, если терминал поддерживает изменение заголовка окна (на данный момент это консоль Amiga, консоль Win32, все версии с графическим интерфейсом и терминалы с непустой опцией 't_ts', к которым в том числе по умолчанию относятся Unix xterm и iris-ansi, где значение данной опции берётся из встроенного termcap).

Если Vim скомпилирован с определённой переменной HAVE_X11, то он будет пытаться также восстанавливать первоначальный заголовок окна. Если эта переменная была определена при компиляции, то в выводе команды ":version" будет присутствовать строка "+X11", в противном случае будет присутствовать строка "-X11". То же самое касается и названия значка, см. |'icon'|. В то же время, если Vim был запущен без аргумента |-X|, то восстановление заголовка окна работать не будет (кроме графического интерфейса).

Если заголовок окна не может быть восстановлен после завершения работы Vim, то он заменяется на значение опции 'titleold'. В этом случае вы можете попытаться восстановить заголовок при помощи внешних средств. При использовании xterm с удалённой машины можно использовать такую команду:

rsh имя_машины xterm -display $DISPLAY &

в этом случае наследуется  переменная окружения WINDOWID и заголовок окна будет восстанавливаться к своему первоначальному значению при выходе из Vim.

'titlelen'

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

Опция задаёт максимальную длину заголовка окна, выраженную в процентах от значения опции 'columns'. Если длина заголовка окна превышает значение данной опции, то отображается только последняя часть пути к редактируемому файлу, а в начале пути выводится символ '<'. Использование доли значения опции 'columns' позволяет адаптироваться к текущей ширине окна, однако следует помнить, что действительное количество символов, которые могут поместиться в отведённое для заголовка пространство, зависит также от шрифта и других параметров окна. При значении 'titlelen' равном 0 используется полный путь к файлу. Опция 'titlelen' может принимать значения от 0 до 30000. Опция 'titlelen' также применяется при работе с опцией 'titlestring'.

'titleold'

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

Эта опция используется для заголовка окна при выходе из Vim, если первоначальный заголовок не может быть восстановлен. Опция работает только при включённой опции 'title' или если значение опции 'titlestring' не является пустой строкой.

'titlestring'

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

Если значение этой опции не является пустой строкой, то оно будет использовано в качестве заголовка окна Vim при включённой опции 'title'. Для изменения заголовка окна Vim также необходимо, чтобы терминал позволял изменять заголовки окон (на данный момент это консоль Amiga, консоль Win32, все версии с графическим интерфейсом и терминалы с непустой опцией 't_ts').

Если Vim скомпилирован с определённой переменной HAVE_X11, то он будет пытаться также восстанавливать первоначальный заголовок окна при завершении работы, см. |X11|.

В значении опции можно также использовать элементы, начинающиеся с символа '%' в стиле printf. Такие элементы применяются согласно правилам, определённым для опции 'statusline'.

Пример:

:auto BufEnter * let &titlestring = hostname() . "/" . expand("%:p")
:set title titlestring=%<%F%=%l/%L-%P titlelen=70

Значение опции 'titlelen' используется для выравнивания элементов посередине или по правому краю доступного в заголовке окна пространства.

Некоторые пользователи предпочитают, чтобы в заголовке сначала выводилось имя файла:

:set titlestring=%t%(\ %M%)%(\ (%{expand(\"%:~:.:h\")})%)%(\ %a%)

Обратите внимание на использование выражения внутри "%{ }" для получения пути к каталогу, в котором находится файл. Конструкция группы ("%( %)") используется для добавления разделительного пробела только в том случае, когда это необходимо.

ЗАМЕЧАНИЕ: Использование специальных символов (например, <CR> или <NL>) в значении опции 'titlestring' может привести к появлению мусора на экране.

Доступно только в том случае, если Vim скомпилирован с особенностью |+statusline|.

'toolbar' 'tb'

строка (по умолчанию: "icons,tooltips")
глобальная опция
Доступно только в том случае, если Vim скомпилирован с одной из следующих особенностей: |+GUI_GTK|, |+GUI_Athena|, |+GUI_Motif| или |+GUI_Photon|.

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

icons Инструментальная панель отображается со значками.
text На кнопках инструментальной панели отображается текст.
horiz Значки и текст на кнопках инструментальной панели располагаются горизонтально.
Доступно только в GTK+ 2 GUI.
tooltips Кнопки инструментальной панели используют всплывающие подсказки.

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

Если вы хотите, чтобы на кнопках инструментальной панели отображались как значки, так и текст, используйте команду

:set tb=icons,text

Motif и Athena не могут отображать иконки и текст одновременно. В этих системах совместное использование ключевых слов "icons" и "text" равноценно использованию одного слова "icons".

Значение данной опции игнорируется, если ни одно из ключевых слов, входящих в его состав, не является допустимым, либо если значением опции является пустая строка. Для того, чтобы полностью убрать инструментальную панель, следует изменить значение опции 'guioptions'.

Например:

:set guioptions-=T

См. также |графический_интерфейс-инструментальная_панель|.

'toolbariconsize' 'tbis'

строка (по умолчанию: "small")
глобальная опция
Vi не имеет такой возможности.
Доступно только в GTK+ 2 GUI.

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

tiny Использовать крошечные значки.
small Использовать небольшие значки (по умолчанию).
medium Использовать значки среднего размера.
large Использовать большие значки.

Точные размеры значков в пикселах зависят от действующей темы графического интерфейса. Как правило, применяются следующие размеры: large=32x32, medium=24x24, small=20x20 и tiny=16x16.

Если значением опции 'toolbariconsize' является пустая строка, то используется глобальное значение по умолчанию, определённое настройками пользователя или действующей темой графического интерфейса.

'ttybuiltin' 'tbi'

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

При включённой опции 'ttybuiltin' поиск таблицы возможностей терминала происходит прежде всего во встроенном termcap. Если данная опция выключена, то поиск во встроенном termcap происходит после поиска во внешнем termcap. После изменения значения данной опции необходимо также изменить значение опции 'term', чтобы изменения вступили в силу.

Например:

:set notbi term=$TERM

См. также |termcap|.

По умолчанию данная опция находится во включенном состоянии, поскольку встроенные таблицы терминалов как правило лучше (на многих системах используются глючные таблицы для xterm).

'ttyfast' 'tf'

переключатель (по умолчанию: выключено, включено, если значением опции 'term' является xterm, hpterm, sun-cmd, screen, rxvt, dtterm или iris-ansi; также включено при запуске Vim в консоли DOS)
глобальная опция
Vi не имеет такой возможности.

Опция указывает на быстрое соединение с терминалом. При этом вместо использования команд для вставки/удаления строки на терминал будет отправляться гораздо большее количество символов при обновлении экрана. Это позволяет улучшить плавность обновления экрана при использовании нескольких окон, если терминал не поддерживает области прокрутки. Кроме того, опция позволяет включать запись дополнительных символов в конец каждой перенесённой длинной экранной строки. Это позволяет использовать операции копирования и вклейки при помощи мыши на xterm и других терминалах.

'ttymouse' 'ttym'

строка (значение по умолчанию зависит от значения опции 'term')
глобальная опция
Vi не имеет такой возможности.
Доступно только в Unix и на VMS, не работает в графическом интерфейсе; опция не доступна, если Vim скомпилирован без включённой особенности |+mouse|.

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

xterm

Работа с мышью xterm.  Мышь генерирует коды вида "<Esc>[Mscr", где "scr" это три последовательных байта:

"s"  состояние кнопки
"c" колонка + 33
"r" строка + 33
xterm2 Работает аналогично значению "xterm", но используется в том случае, если xterm может сообщать о положении мыши в момент её перемещения. Для обеспечения такое возможности необходимо, чтобы xterm имел как минимум 88 уровень заплаток (XFree 3.3.3). См. ниже информацию о том, как Vim может автоматически определять необходимое значение.
netterm Работа с мышью NetTerm.  Мышь генерирует коды вида "<Esc>}r,c<CR>", где "r" и "c" это два десятичных числа, отражающих соответственно строку и колонку в позиции мыши.
dec Работа с мышью на терминале DEC.  Мышь генерирует довольно сложную последовательность кодов, начинающуюся с "<Esc>[".
jsbterm Работа с мышью на терминале JSB.
pterm Работа с мышью на терминале pterm в QNX.

Для работы с мышью необходимо включить соответствующую особенность при компиляции |+mouse_xterm| |+mouse_dec| |+mouse_netterm|.

Vim способен автоматически распознавать терминал "xterm"(2). Коды, генерируемые мышью NetTerm, также всегда распознаются в том случае, если при компиляции Vim была включена соответствующая особенность. Коды мыши терминала DEC распознаются в том случае, если при компиляции Vim была включена соответствующая особенность и значением опции 'ttymouse' не является "xterm" (коды мыши dec и xterm конфликтуют между собой).

Значение данной опции автоматически устанавливается равным "xterm", если значение опции 'term' начинается со строки "xterm", а значением опции 'ttymouse' не является "xterm" или "xterm2". Данная опция в основном применяется для назначения типа мыши "xterm" в тех случаях, когда имя терминала не начинается с "xterm", однако он способен работать с кодами мыши xterm.

Значение "xterm2" будет использоваться в xterm версии 95 и выше. Автоматическое распознавание работает только в том случае, если Vim скомпилирован со включённой особенностью |+termresponse| и значение опции терминала |t_RV| содержит управляющую последовательность, позволяющую запросить версию xterm. В противном случае значение "xterm2" необходимо настраивать вручную. Если вы против установки значения 'ttymouse' равным "xterm2" автоматически, то вы можете сбросить значение опции терминала t_RV:

:set t_RV=

'ttyscroll' 'tsl'

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

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

'ttytype' 'tty'

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

Синоним опции 'term', см. выше.

'undolevels' 'ul'

число (по умолчанию: 100, на Unix, VMS, Win32 и OS/2: 1000)
глобальная опция
Vi не имеет такой возможности.

Опция задаёт максимально возможное количество изменений, которые могут быть отменены. Поскольку информация о внесённых изменениях хранится в оперативной памяти, высокие значения данной опции приводят к большему использованию памяти (в то же время, каждое изменение может само по себе использовать неограниченное количество памяти). Для обеспечения поведения, совместимого с Vi, значение данной опции может быть задано равным нулю (при этом допускается только один уровень отмены внесённых изменений, а команда "u" может отменять уже выполненную команду отмены):

set ul=0

Кроме того, совместимости с Vi можно также добиться путём включения флага 'u' в значение опции 'cpoptions', причём в этом случае можно будет также использовать CTRL-R для повторения операции отмены.

Для полного отказа от использования отмены операций необходимо использовать отрицательное число в качестве значения данной опции:

set ul=-1

Такая настройка может быть полезной, если на вашей системе недостаточно памяти даже для внесения единственного изменения.

См. также раздел справочника |отмена-два_способа|.

'updatecount' 'uc'

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

Vim выполняет запись своп-файла на диск после ввода указанного в значении данной опции количества символов. При нулевом значении опции 'updatecount' своп-файл не создаётся (см. раздел о восстановлении данных, |восстановление_после_аварии|). При запуске Vim с ключом командной строки "-n" значение опции 'updatecount' устанавливается равным 0, см. раздел |инициализация|. При редактировании файла в режиме только для чтения, значение данной опции первоначально устанавливается равным 10000.

Своп-файл может быть отключён для отдельных буферов при помощи опции |'swapfile'|.

Если значение опции 'updatecount' изменяется с нулевого значения на ненулевое, то своп-файлы будут созданы для всех буферов со включённой опцией 'swapfile'. При изменении значения опции 'updatecount' на 0 существующие своп-файлы не удаляются.

См. также справку по опции |'swapsync'|.

Эта опция не оказывает влияния на буферы, в которых значение опции |'buftype'| равно "nofile" или "nowrite".

'updatetime' 'ut'

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

Vim выполняет запись своп-файла на диск, если ввод не осуществлялся в течение заданного в значении данной опции количества миллисекунд (см. раздел |восстановление_после_аварии|). Значение данной опции также используется для автокомандного события |CursorHold|.

'verbose' 'vbs'

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

Если значение данной опции больше 0, то Vim будет выводить сообщения о своих действиях. В текущей версии выводятся следующие сообщения:

>= 1 Сообщения о чтении или записи файла viminfo.
>= 2 Сообщения о считывании файла сценария по команде ":source".
>= 5 Сообщения о каждом файле меток, в котором происходит поиск.
>= 8 Сообщения о файлах, в отношении которых выполняются группы автокоманд.
>= 9 Сообщения о каждой выполненной автокоманде.
>= 12 Сообщения о каждой выполненной функции.
>= 13 Сообщения о пойманных, завершённых, проигнорированных или выброшенных исключительных ситуациях.
>= 14 Сообщения о командах, которые выполняются в блоке ":finally".
>= 15 Сообщения о каждой выполненной команде Ex (обрезаются после 200 символов).

Данная опция также может быть изменена при запуске Vim с помощью аргумента командной строки "-V", см. |-V|.

Значение данной опции также может быть изменено при помощи команды |:verbose|.

'viewdir' 'vdir'

строка (по умолчанию на Amiga, MS-DOS, OS/2 и Win32: "$VIM/vimfiles/view", в Unix: "~/.vim/view", на Macintosh: "$VIM:vimfiles:view" на VMS: "sys$login:vimfiles/view" в RiscOS: "Choices:vimfiles/view")
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+mksession|.

Опция задаёт путь к каталогу, в котором сохраняются файлы, создаваемые по команде |:mkview|.

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

'viewoptions' 'vop'

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

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

слово сохраняет и восстанавливает
cursor позицию курсора в файле и в окне
folds складки, созданные вручную, состояние складок (открытые/закрытые), местные опции складок
options опции и привязки, являющиеся местными по отношению к окну или буферу (но не глобальные значения местных опций)
slash используется для замены символов обратной косой черты в именах файлов на символы прямой косой черты
unix символы конца строки в формате Unix (одиночный символ <NL>), даже в Windows или DOS

Ключевые слова "slash" и "unix" полезны при редактировании файлов в Windows, если эти же файлы также используются и в Unix. Vim для Unix не может обрабатывать сценарии, записанные в формате DOS, но версии Vim для Windows способны обрабатывать сценарии, записанные в формате Unix.

'viminfo' 'vi'

строка (по умолчанию в режиме Vim на MS-DOS, Windows и OS/2:  '20,<50,s10,h,rA:,rB: в режиме Vim на Amiga: '20,<50,s10,h,rdf0:,rdf1:,rdf2: в режиме Vim на остальных системах: '20,<50,s10,h; в режиме совместимости с Vi: "")
глобальная опция
Vi не имеет такой возможности.
Доступно только в том случае, если Vim скомпилирован с особенностью |+viminfo|.

Если значение данной опции не является пустой строкой, то Vim будет читать файл viminfo при запуске и сохранять его при завершении работы (см. |файл_viminfo|). Значением опции является список параметров, разделённых запятой, каждый из которых состоит из символа, определяющего смысл параметра, за которым следует число или строка, определяющие значение данного параметра. Если какой-либо параметр в значении опции не указан явно, то используется значение этого параметра по умолчанию. Ниже приводится список допустимых параметров и их значения.

СИМВОЛ ЗНАЧЕНИЕ
! Если этот параметр включён в список, то в файле viminfo будут сохраняться для последующего восстановления значения глобальных переменных, которые начинаются с прописной буквы и не содержат строчных букв. Например, будут сохранены значения переменных "KEEPTHIS" и "K_L_M", но не значения переменных "KeepThis" и "_K_L_M".
" Параметр задаёт максимальное число строк, которые сохраняются в каждом регистре. Это устаревший параметр, вместо которого теперь можно использовать '<'; он обладает следующим недостатком: вы должны предварять символ " обратной косой чертой, иначе тот будет распознаваться как начало комментария!
% Если этот параметр включён в список, то в файле viminfo будет сохраняться список буферов. Если Vim был запущен с определённым именем файла в качестве аргумента командной строки, то список буферов восстанавливаться не будет. Если Vim был запущен без указания имени файла в командной строке, то список буферов будет восстановлен из файла viminfo. Безымянные буферы и буферы файлов справки в файле viminfo не сохраняются.
' Максимальное количество файлов, для которых запоминаются отметки. Этот параметр всегда должен быть задан, если значение опции 'viminfo' не является пустой строкой. Включение данного параметра также означает, что в файле viminfo будет сохраняться |список_прыжков| и |список_изменений|.
/ Максимальное количество сохраняемых записей в истории поиска по шаблону. Если значение параметра не равно 0, то сохраняются также шаблоны поиска в предыдущем тексте и шаблоны замены текста. Если параметр не включён в значение опции 'viminfo' явно, то используется значение опции 'history'.
: Максимальное количество сохраняемых записей в истории командной строки. Если параметр не включён в значение опции 'viminfo' явно, то используется значение опции 'history'.
< Максимальное количество строк, которые сохраняются для каждого регистра. Если значение равно нулю, то содержимое регистров не сохраняется. Если этот параметр не включён в значение опции, то сохраняются все строки содержимого регистров. Раннее с той же самой целью применялся параметр '"'. См. также символ 's' ниже: ограничение задаётся в килобайтах.
@ Максимальное количество сохраняемых записей в истории строки ввода. Если параметр не включён в значение опции 'viminfo' явно, то используется значение опции 'history'.
c Если данный параметр включён в значение опции 'viminfo', то текст файла viminfo преобразуется из кодировки, соответствующей значению опции 'encoding' в момент записи файла viminfo, в кодировку, соответствующую текущему значению опции 'encoding'. См. также |viminfo-кодировка|.
f Параметр указывает на необходимость сохранения файловых отметок. При значении параметра, равном 0, файловые отметки (от '0 до '9 и от 'A до 'Z) не сохраняются. Если параметр не указан явно или его значение не равно 0, то все файловые отметки сохраняются в файле viminfo. Отметка '0 используется для сохранения текущего положения курсора в момент завершения работы Vim или выполнения команды ":wviminfo".
h Параметр отменяет действие опции 'hlsearch' при загрузке файла viminfo. Если параметр не включён в значение опции 'viminfo' явным образом, то поведение редактора зависит от того, применялась ли команда ":nohlsearch" после выполнения последней команды поиска.
n Параметр задаёт имя файла viminfo. Имя файла должно быть указано сразу же после 'n'. Данный параметр должен быть указан последним в списке параметров! Если при запуске Vim был использован аргумент командной строки "-i", то указанное имя файла будет использовано вместо заданного в значении опции 'viminfo'. Подстановка переменных окружения выполняется в момент открытия файла, а не при изменении значения опции 'viminfo'.
r Параметр указывает на съёмное устройство хранения данных. Его аргументом является строка (вплоть до следующего символа ','). Данный параметр может быть задан неоднократно. Каждое вхождение этого параметра указывает на путь к устройству, для которого отметки не должны сохраняться. Параметр применяется для того, чтобы избежать сохранения отметок для файлов, находящихся на съёмных устройствах хранения данных. На MS-DOS можно использовать значение "ra:,rb:", на Amiga "rdf0:,rdf1:,rdf2:". Вы также можете использовать его для временных файлов, например в Unix: "r/tmp". Регистр символов в значении параметра не играет роли. Максимальная длина каждого параметра 'r' составляет 50 символов.
s Максимальный размер элемента в килобайтах. При нулевом значении параметра состояние регистров не сохраняется. В данный момент применяется только к содержимому регистров. По умолчанию используется значение "s10", исключающее регистры, содержащие более 10 КБ текста. См. также параметр '<' выше: ограничение по количеству строк.

Пример:

:set viminfo='50,<1000,s100,:0,n~/vim/viminfo
'50 Отметки будут сохраняться для 50 файлов, которые редактировались в последнее время.
<1000 В файле viminfo будет сохраняться до 1000 строк в каждом регистре.
s100 Регистры, в которых хранится более 100 КБ текста, пропускаются.
:0 История командной строки сохраняться не будет.
n~/vim/viminfo В качестве файла viminfo будет использоваться "~/vim/viminfo".
нет / Поскольку параметр '/' не задан, будет использоваться значение по умолчанию, а именно: сохранение всех записей в истории поиска, истории поиска в предыдущем тексте и истории замены текста.
нет % Список буферов не сохраняется и не восстанавливается.
нет h Подсветка 'hlsearch' будет восстановлена.

При изменении значения опции 'viminfo' с пустого значения можно воспользоваться командой |:rviminfo| для загрузки соответствующего файла, поскольку это не происходит автоматически.

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

'virtualedit' 've'

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

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

block Позволяет выполнять виртуальное редактирование в режиме Визуального блока.
insert Позволяет выполнять виртуальное редактирование в режиме Вставки.
all Позволяет выполнять виртуальное редактирование во всех режимах.

Виртуальное редактирование позволяет перемещать курсор в позицию экрана, в которой на самом деле отсутствует реальный символ. Это может быть середина пространства, которое занимает символ табуляции, или конец строки. Данная опция может быть полезна при выделении прямоугольного блока в Визуальном режиме или для редактирования таблиц.

'visualbell' 'vb'

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

Опция позволяет использовать "визуальный звонок" вместо звукового сигнала. Код терминала, который используется для визуального звонка, задаётся с помощью опции 't_vb'. Чтобы отключить как звуковой сигнал, так и моргание экрана, необходимо сбросить значение этой терминальной опции: ":set vb t_vb=".

Замечание: при запуске графического интерфейса, опция 't_vb' восстанавливает значение по умолчанию. Вам может потребоваться изменить это значение в файле сценария запуска |gvimrc|.

В режиме графического интерфейса значением опции 't_vb' по умолчанию является "<Esc>|f", что приводит к кратковременному (20 миллисекунд) инвертированию экрана. Если вы хотите использовать другой временной интервал, то можно изменить значение опции 't_vb' соответствующим образом, например: "<Esc>|40f" для интервала 40 мсек.

Эта опция не работает на Amiga, где моргание экрана происходит во всех случаях.

См. также справку по опции 'errorbells'.

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