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

Опции W

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

‘warn’

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

Опция управляет выдачей предупреждения при выполнении команды оболочки в другом буфере.

‘weirdinvert’ ‘wiv’

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

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

‘whichwrap’ ‘ww’

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

Опция позволяет перемещать курсор на предыдущую/следующую строку, если курсор находится на первом/последнем символе в строке, при вводе перечисленных в её значении через запятую команд перемещения курсора.

В значении опции могут быть использованы следующие команды:

символкнопкарежим
b<BS>Обычный и Визуальный
s<Space>Обычный и Визуальный
h«h»Обычный и Визуальный
l«l»Обычный и Визуальный
<<Left>Обычный и Визуальный
><Right>Обычный и Визуальный
~«~»Обычный
[<Left>режим Вставки и Замены
]<Right>режим Вставки и Замены

Например:

:set ww=<,>,[,]

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

Если команды перемещения курсора используются в сочетании с операторами удаления или изменения, то символ <EOL> также считается символом. В этом случае команда «3h» будет отличаться от «3dh», если при перемещении курсор пересекает конец строки. То же самое относится и к командам «x» и «X», поскольку они работают так же, как и «dl» и «dh». Если вы пользуетесь такой возможностью, то можно также назначить специальную привязку «:map <BS> X» для удаления символа перед курсором при нажатии кнопки <BS>.

При включении ‘l’ имеется также побочный эффект: «yl» на пустой строке будет включать символ <EOL>, поэтому последующая команда «p» будет приводить к вставке новой строки.

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

‘wildchar’ ‘wc’

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

Опция используется для назначения символа, при вводе которого в командной строке происходит подстановка значений по маске в соответствии со значением опции ‘wildmode’. Этот символ не распознаётся при использовании в составе макроса — для этих целей существует опция ‘wildcharm’.

Несмотря на то, что значением опции ‘wc’ является число, вы можете использовать спецкнопку в качестве её значения:

:set wc=<Esc>

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

‘wildcharm’ ‘wcm’

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

Опция ‘wildcharm’ работает так же, как и ‘wildchar’, но, в отличие от последней, распознаётся также в составе макросов. Список «свободных» кнопок, которые можно использовать в качестве значения данной опции, можно посмотреть в разделе |ex-редактирование-указатель|. Как правило значение этой опции используется только в привязках, которые вызывают режим автодополнения, например:

:set wcm=<C-Z>
:cmap ss so $vim/sessions/*.vim<C-Z>

После выполнения указанных команд можно будет применять CTRL-P и CTRL-N при вводе команды :ss.

‘wildignore’ ‘wig’

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

Значением опции является список масок для имён файлов. Файлы, с именами, соответствующими одной из перечисленных масок, будут игнорироваться при выполнении автодополнения имён файлов и каталогов. Шаблоны масок, используемые в значении данной опции, точно такие же, как и применяемые в команде |:autocmd|, см. |автокоманды-шаблоны|.

См. также справку по опции ‘suffixes’.

Пример:

:set wildignore=*.o,*.obj

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

‘wildmenu’ ‘wmnu’

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

Опция ‘wildmenu’ позволяет включать улучшенный режим автодополнения командной строки. При вводе символа, определённого значением опции ‘wildchar’ (обычно <Tab>), для выполнения операции автодополнения, возможные варианты дополнения будут показаны непосредственно над командной строкой, причём первое соответствие будет выделяться при помощи подсветки. Если в окне имеется строка состояния, то меню автодополнения временно перекрывает строку состояния. Кнопки перемещения по списку совпадений (<Tab>, CTRL-P/CTRL-N) перемещают выделение к следующему совпадению. При использовании опции ‘wildmode’ режим «wildmenu» применяется в тех случаях, когда указан режим «full».

Режимы «longest» и «list» не используют режим «wildmenu». Если список соответствий не помещается на одной строке, то в левой колонке отображается символ «<«, а в правой колонке отображается символ «>», отражая наличие дополнительных соответствий. Список соответствий в строке меню автодополнения при необходимости прокручивается автоматически.

Режим «wildmenu» завершается по нажатию кнопки, которая не приводит к выбору соответствия для автодополнения. При активном режиме «wildmenu» следующие кнопки имеют особое значение:

<Left> <Right>выбор предыдущего/следующего соответствия (как CTRL-P/CTRL-N)
<Down>при выполнении автодополнения имени файла или меню: перемещение на один уровень файловой системы или меню вниз
<CR>при выполнении автодополнения меню, если курсор находится непосредственно после точки: перемещение на один уровень меню вниз
<Up>при выполнении автодополнения имени файла или меню: перемещение на один уровень файловой системы или меню вверх

Эта опция позволяет сделать меню доступным из консоли. См. раздел справочника |меню_в_консоли|.

Если вы предпочитаете использовать кнопки <Left> и <Right> для перемещения курсора вместо выбора варианта автодополнения, то используйте следующие привязки:

:cnoremap <Left> <Space><BS><Left>
:cnoremap <Right> <Space><BS><Right>

Для подсветки текущего варианта автодополнения используется группа подсветки «WildMenu», см. |подсветка-WildMenu|.

‘wildmode’ ‘wim’

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

Опция задаёт режим автодополнения, которое включается при вводе символа, указанного в значении опции ‘wildchar’. Значением этой опции является список ключевых слов, разделённых запятыми. Допускается использовать до четырёх ключевых слов включительно. Каждое ключевое слово указывает на необходимый режим работы при следующем нажатии кнопки ‘wildchar’. Таким образом, первое слово определяет режим автодополнения, который используется при первом нажатии ‘wildchar’, второе слово определяет режим для второго нажатия, и т.д.

В каждом случае возможно использование следующих ключевых слов:

«»Автодополнение при помощи первого соответствия.
«full»Автодополнение при помощи следующего полного соответствия. После применения последнего соответствия используется первоначальная строка, а затем снова первое соответствие.
«longest»Автодополнение до самой длинной общей с другими соответствиями строки. Если это не приводит к более длинной строке, то используется следующее ключевое слово из значения данной опции.
«longest:full»То же, что и «longest», но приводит к включению ‘wildmenu’ в том случае, если соответствующая опция включена.
«list»При наличии нескольких соответствий выводится список всех соответствий.
«list:full»При наличии нескольких соответствий выводится список всех соответствий и подставляется первое соответствие из списка.
«list:longest»При наличии нескольких соответствий выводится список всех соответствий и выполняется дополнение до самой длинной из возможных строки.

При наличии единственного соответствия оно автоматически подставляется в строку во всех случаях.

Примеры:

:set wildmode=full

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

:set wildmode=longest,full

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

:set wildmode=list:full

Выводится список всех соответствий и выполняется дополнение при помощи каждого последующего полного совпадения.

:set wildmode=list,full

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

:set wildmode=longest,list

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

‘winaltkeys’ ‘wak’

строка (по умолчанию: «menu»)
глобальная опция
Vi не имеет такой возможности.
Используется только в Win32, Motif, GTK и графическом интерфейсе Photon.

Некоторые версии графического интерфейса позволяют использовать меню при помощи комбинации кнопки ALT и символа, который отображается в названии меню подчёркнутым. Такое поведение может входить в противоречие с использованием кнопки ALT в привязках и для ввода специальных символов. Данная опция определяет способ использования кнопки ALT:

noНе использовать кнопку ALT для доступа к меню. Необходимые комбинации ALT и соответствующих символов могут быть заданы при помощи привязок, однако автоматической обработки таких комбинаций производиться не будет. В этом случае можно использовать команду |:simalt|.
yesОбработка кнопки ALT выполняется системой оконного интерфейса. Комбинации символов с нажатием кнопки ALT не могут быть использованы в привязках.
menuКомбинации ALT с символами, задействованными для организации доступа к меню, обрабатываются системой оконного интерфейса. Остальные комбинации могут быть использованы в привязках.

Если меню отключены при помощи удаления флага ‘m’ из значения опции ‘guioptions’, то кнопка ALT не будет применяться для доступа к меню. В версии Vim для Win32 нажатие кнопки <F10> обрабатывается аналогичным образом, поскольку Windows также использует её для выбора меню.

‘winheight’ ‘wh’

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

Опция задаёт минимальное количество строк для текущего окна. Это значение не является жёстко заданным и Vim будет использовать меньшее количество строк, если возникает такая необходимость. Если текущее окно имеет размеры меньше значения данной опции, то его размер увеличивается за счёт остальных окон. Если значение этой опции равняется 999, то текущее окно всегда будет занимать весь экран (в этом случае по команде «:all» будут создаваться только два окна).

Как правило при работе используются меньшие значения.  Минимальное значение данной опции равно 1.
Высота окна не изменяется после выполнения одной из команд изменения высоты текущего окна.

Значение опции ‘winheight’ применяется к текущему окну. Для настройки минимальной высоты остальных окон используйте опцию ‘winminheight’.

‘winfixheight’ ‘wfh’

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

Опция позволяет сохранять высоту окна без изменений при открытии и закрытии других окон или при включении опции ‘equalalways’. Данная опция включается по умолчанию для |окна_предварительного_просмотра| и |окна_быстрых_исправлений|.

Высота окна, тем не менее, может быть изменена, если на экране не хватает места для отображения всех окон.

‘winminheight’ ‘wmh’

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

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

При выделении такого окна его высота возвращается как минимум к одной строке (поскольку на экране должна присутствовать хотя бы одна строка, куда можно поместить курсор). Для указания минимальной высоты текущего окна используйте опцию ‘winheight’. Значение данной опции используется только при уменьшении высоты окна. Не следует использовать большие значения данной опции, поскольку это будет приводить к выдаче сообщений об ошибке при открытии нескольких окон. Приемлемым является значение от 0 до 3.

‘winminwidth’ ‘wmw’

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

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

Значение данной опции используется только при уменьшении ширины окна. Не следует использовать большие значения данной опции, поскольку это будет приводить к выдаче сообщений об ошибке при открытии нескольких окон. Приемлемым является значение от 0 до 12.

‘winwidth’ ‘wiw’

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

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

Значение опции ‘winwidth’ применяется к текущему окну. Для настройки минимальной ширины остальных окон используйте опцию ‘winminwidth’.

‘wrap’

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

Данная опция влияет только на отображение текста на экране. В отличие от опции ‘textwidth’, она не изменяет текст, содержащийся в буфере. При включённой опции ‘wrap’ строки, длина которых превышает ширину окна, будут отображаться разбитыми на несколько строк. При выключенной опции ‘wrap’ длинные строки отображаются на экране частично. При перемещении курсора за пределы видимой части строки, происходит прокрутка окна по горизонтали.

При необходимости строка может быть перенесена прямо в середине слова.

Чтобы настроить перенос строк по словарным границам, используйте опцию ‘linebreak’.
Для более удобной горизонтальной прокрутки можно использовать следующие команды:

:set sidescroll=5
:set listchars+=precedes:<,extends:>

См. ‘sidescroll’, ‘listchars’ и |отключение_переноса|.

‘wrapmargin’ ‘wm’

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

Опция задаёт количество символов от правого края окна, которые отводятся под поле, в котором может происходить перенос длинных строк. При вводе текста, выходящего за пределы заданного поля, происходит вставка символа <EOL>, а ввод текста продолжается на новой строке.

Кроме того, ширина отображаемого текста также дополнительно уменьшается при использовании некоторых опций, таких как ‘number’ и ‘foldcolumn’, которые «отъедают» под свои цели определённое пространство экрана. Такое поведение является Vi-совместимым.

Если значение опции ‘textwidth’ не равно 0, то данная опция не используется. См. также справку по опции ‘formatoptions’ и раздел справочника |вставка-textwidth|.

Vi реализует аналогичную возможность при помощи иных, менее удобных, средств.

‘wrapscan’ ‘ws’

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

Опция позволяет продолжать выполнение поиска с другого конца файла.

‘write’

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

Опция позволяет выполнять запись файлов. При выключенной опции ‘write’ запись файла не разрешается. Эта опция может быть использована для включения режима «только для просмотра», при котором внесение изменений в текст всё же возможно. Опция может быть выключена при помощи аргументов командной строки |-m| или |-M| при запуске Vim. При выключенной опции ‘write’ возможно использование команд-фильтров, несмотря на то, что это требует записи временного файла.

‘writeany’ ‘wa’

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

Опция позволяет выполнять запись любого файла без необходимости применения модификатора команды «!».

‘writebackup’ ‘wb’

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

При включенной опции ‘writebackup’ Vim выполняет резервное копирование файла перед записью внесённых изменений. После успешного выполнения записи резервная копия удаляется, если опция ‘backup’ выключена. Данную опцию можно отключить, если вы испытываете нехватку дискового пространства. Более подробное объяснение содержится в разделе справочника |резервное_копирование-таблица|.

Если имя файла соответствует шаблону, заданному в значении опции ‘backupskip’, то резервное копирование не выполняется.

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

‘writedelay’ ‘wd’

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

Опция задаёт количество микросекунд, в течение которых ожидается отправку каждого символа на экран. При ненулевом значении данной опции символы отправляются на экран поодиночке. Эта опция не работает на MS-DOS pcterm. Опция применяется для отладочных целей.

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

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

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