Мы — долго запрягаем, быстро ездим, и сильно тормозим.

RFC
Программирование
FreeBSD
man
  vsftpd
  qemu
  dump
  restore
  awk
  sed
  tar
  security
EXIM


www.lissyara.su —> документация —> man —> vi

man vi

Автор: Andy.


Имя
ex, vi, view - текстовые редакторы

Сценарий
ex [-eFGRrSsv] [-c cmd] [-t tag] [-w size] [file ...]
vi [-eFGlRrSv] [-c cmd] [-t tag] [-w size] [file ...]
view [-eFGRrSv] [-c cmd] [-t tag] [-w size] [file ...]

Лицензия
Программа vi свободно распространяемая. Вы можете копировать, модифицировать и распространять ее с другими при условиях,
указанных в файле LICENSE. Если любая компания (не частное лицо!) найдет vi очень полезным, что вы захотите купить ее, или компания пожелает распространять его, то вознаграждения авторам были бы не лишними.

Описание
Vi - экранный текстовый редактор. Ex - строковый текстовый редактор.
Ex и vi разные интерфейсы к одной и той же программе, и возможно
переключение между ними в процессе редактирования. View эквивалентен
использованию опции vi, -R (только чтение).
Страницы руководства текстового редактора ex/vi такие же, что поставляются
с nex/nvi. Nex/Nvi предназначены для замены баг-в-баг оригинальных vi и ex
программ от Fourth  Berkeley  Software  Distribution (4BSD). До конца
этого руководства слова nex/nvi используются только для необходимости
исторических различий от ex/vi.
Это руководство предназначено для пользователей, которые уже знакомы с ex/vi.
Остальные вне сомнения, должны прочесть хорошую обучающую литературу по
редактору, прежде чем приступите к изучению руководства. Если Вы в
незнакомом окружении, а Вам надо незамедлительно приступать к работе,
прочтите раздел озаглавленый ``Быстрое Начало'' идущий за описанием опций.
Возможно вам этого будет достаточно, для начала работы.

Доступны следующие опции:

-c  Запуск cmd незамедлительно, после начала редактирования. Частично полезно
для начального позиционирования в файле, однако cmd не ограничивается позиционными коммандами. Это интерфейс POSIX 1003.2 с историческим синтаксисом ``+cmd''.
nex/nvi поддерживает оба синтаксиса, новый и старый.

-e  Начало редактирования в режиме ex, как если бы вызывался редактор ex.

-F  Не копировать весь файл при первом редактировании (По умолчанию делается копия в случае, если кто-нибудь другой модифицирует файл в течении вашей сессии редактирования)

-l  Начало редактирования в режиме lisp с установленными совпадениями.

-G  Начало редактирования в режиме gtags, так как если бы была установлена опция
gtags.

-R  Начало редактирования режиме "только чтение", так как если бы была комманда
view или опция readonly была установлена.

-r  Восстановление определенного файла, или, если файлы не определены, списка
файлов подлежащих восстановлению. Если восстанавливаемые файлы с определенным именем
отсутствуют, файл редактируется так, как если бы опция -r не была установлена.

-S  Запуск с набором опций редактирование secure, блокируя любой доступ внешних программ.

-s  Режим редактирования batch; применяется только к ex. Batch режим полезен для
запуска скриптов ex. Приглашения, информативные сообщения, и другие сообщения
предназначенные для пользователя, выключаются, а начальные файлы или переменные
окружения не читаются. Это интерфейс POSIX 1003.2 с историческим аргументом
``-''. Nex/nvi поддерживают и старый и новый синтакс.

-t  Начало редактирования определенного тэга. (Смотрите ctags(1)).

-w  Установка размера окна инициализации, определенному количеству линий.

-v
 Начало редактирования в режиме vi, если вызываемая комманда была vi или view.

Коммандный ввод для ex/vi читается из стандартного ввода. В интерфейсе vi,
возникает ошибка, если стандартный ввод не является терминалом. В интерфейсе ex,
если стандартный ввод не терминал, ex будет все равно прочтет команды, однако,
если сессия будет batch сессией, так же, как будто опция -s была установлена.

Ex/vi завершается с состоянием 0, если небыло ошибок, и с состоянием большим 0,
если произошли ошибки.

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

Vi является экранным редактором. Это означает, что он занимает почти полный экран,
отображая часть файла на каждой строке экрана, за исключением последней строки.
Последняя строка используется что бы вы давали комманды редактору vi, а vi мог давать информацию вам.

Другой факт, который вам необходимо усвоить, заключается в том, что vi разнорежимный редактор, то есть вы вводите текст или запускаете команды, - вам нужно переключиться в соответствующий режим, что бы делать одно или другое. Когда вы начнете редактировать файл, вы будете в командном режиме. Есть команды которые переключат режим, в режим ввода. Существует только одна клавиша, которая выводит редактор из
командного ввода, эта клавиша <escape>. (Имена клавиш записываются с использованием
знаков < и >, например <escape>, что означает клавишу ``escape'', обычно называемую
``esc'' на клавиатуре вашего терминала). Если вы не знаете в каком режиме вы находитесь, продолжайте нажимать <escape> до тех пор, пока vi не даст звуковой сигнал. (В основном, vi будет сигналить вам, если вы попробуете сделать что-то, что
не поддерживается. Редактор также будет показывать сообщения об ошибках).

Для начала редактирования файла, введите команду ``vi  имя_файла<Enter>''. Команда которую надо ввести тогда, когда вы начнете редактировать файл ``:set verbose showmode<Enter>''. Это заставит редактор давать вам подробные сообщения об ошибках и показывать текущий режим внизу экрана.

Команды для перемещения по файлу следующие:

h  Перемещает курсор влево, на один символ
j  Перемещает курсор вниз на одну линию
k  Перемещает курсор вверх на одну линию
l  Перемещает курсор вправо на один символ

<cursor-arrows> Стрелки курсора так же должны работать /text<carriage-return> Поиск строки "text" в файле, и перемещение курсора на первый символ искомого слова.

Команды для ввода нового текста следующие:
a  Добавить новый текст, после курсора
i  Вставить новый текст, до курсора
o  Открыть новую строку ниже строки на которой установлен курсор, и начать вводить текст  
O  Открыть новую строку выше строки на которой установлен курсор, и начать вводить текст  

<escape>  Когда вы вошли в режим ввода, использование команд a,i,O или o, используйте <escape> для выхода из режима ввода текста и возврата в командный режим.

Команды для копирования текста:

yy  Копирование строки на которой установлен курсор
p   Прикрепление строки на которой установлен курсор

Команды для удаления текста:

dd  Удаление строки на которой установлен курсор
x   Удалить символ на котором находится курсор

Команды для записи в файл:

:w<Enter> Запись в файл с именем, которое вы использовали как аргумент командной строки vi

:w file_name<Enter> Запись файла в файл с именем ``file_name''.

Команды для выхода из редактирования и выхода из редактора:

:q<Enter> Выход из режима редактирования и vi (если вы изменили файл, но не сохранили изменения, vi откажется выходить)

:q!<Enter> Выход без сохранения изменений которые вы сделали.

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

Команды vi

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

[count] <control-A> Поиск вперед count раз текущего слова.

[count] <control-B> Пролистать назад count экранов.

[count] <control-D> Пролистать вперед count строк.

[count] <control-E> Пролистать вперед count строк, оставляя текущую строку и столбец если возможно.

[count] <control-F> Пролистать вперед count экранов

<control-G> Показать информацию о файле.

<control-H>
[count] h   Переместить курсор назад count в текущей строке.

[count] <control-J>
[count] <control-N>

[count] j  Переместить курсор вниз на count строк не изменяя текущей.

<control-L>
<control-R> Перерисовать экран.

[count]] <control-M>
[color=brown][b][count]
+  Переместить курсор вниз на count строк к первому не пустому символу этой строки

[count] <control-P>
[count] k  Переместить курсор вверх на count строк, без изменения текущего столбца

<control-T> Возвращение к новому контексту

<control-U> Пролистать назад count строк

<control-W> Переключить к нижнему экрану окна, или первому экрану, если нет
нижних экранов в окне.

<control-Y> Пролистать назад count строк, оставляя текущую строку или столбец, если
возможно.

<control-Z> Останавливает текущую сессию редактирования.

<escape> Запускает команды ex, или отменяет частичные команды.

<control-]> Сохраняет ссылку на тэг в стек. В режиме gtagsmode, если первый столбец
строки указывает на местонахождение функции ссылок, иначе функция определяется.

<control-^> Переключится к наиболее часто редактируемому файлу.

[count] <space>
[count] l   Переместить курсор вперед на count символов не меняя текущей строки.
[count] ! motion shell-argument(s) Заменить текст результатами получеными от
команды оболочки

[count]] # #|+|- Увеличить или уменьшить номер курсора

[count] $ - Переместить курсор в конец строки
%    переместить курсор на совпадающий символ
&    повторить предыдущую замену команды на текущей строке

'<character>
`<character> Возврат к контексту отмеченному символом _character_.
[count] ( Возврат на count предложений.

[count] ) Переместиться вперед на count предложений.

[count] , Обратный поиск символа count раз.
[count] - Переместиться на первый не пустой сивол предыдущей строки, count раз.

/RE<[color=brown][b]Enter>
/RE/ [color=brown][b][offset]<[color=brown][b]Enter>
?RE<[color=brown][b]Enter>
?RE? [color=brown][b][offset]<Enter>
N
n Искать вперед или назад регулярное выражение

O Переместиться к первому символу текущей строки

: Выполнить команду ex

[count]; Повторить последний найденый символ count раз.

[count] < [color=brown][b]motion
[count] > [color=brown][b]motion Сместить строки направо или налево.

@ buffer Запустить буфер.

[count] A Войти в режим ввода, добавить текст после конца строки

[count] B Преместится назад на count bigwords.

[buffer] [count] C Поменять текст с текущей позиции до конца строки.

[buffer] D Удалить текст из текущей позиции до конца строки.

[count] E Переместить вперед  на count end-of-bigwords.

[count] F <character> Поиск count раз назад через текущую строку _character_.

[count] G Переместится к строке count, или последней строке файла, если
count не определен.

[count] H Переместиться к count - I экранных строк ниже от верхней строки экрана.

[count] I Войти в режим ввода, вставляя текст в начало строки.

[count] J Объединить строки

[count] L Переместиться к count - I экранных строк выше от нижней строки экрана.

M Переместить строку в середину экрана

[count] O Войти в режим ввода, добавляя текст к новой строке над текущей строкой.

[count] P Вставить текст из буфера.

Q Выйти из vi (или визуального) режима и переключиться в режим ex.

[count] R Войти в режим ввода, замещая символы в текущей строке

[buffer] S Заменить count строк

[count] T <character> Обратный поиск count раз, через текущую строку для поиска символа после определенного _character_.

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

[count] W Поиск вперед count bigwords.

[buffer] [count] X Удалить count символов до курсора

[buffer] [count] Y Скопировать (yank) count строк в определенный буфер

ZZ записать файл и выйти из vi

[count] [[ Back up count section boundaries.
[count] ]] Move forward count section boundaries.

^  Переместиться к первому непустому символу текущей строки

[count] _ Переместиться вниз на count - I строк, к первому непустому символу

[count] a Войти в режим ввода, добавляя текст после курсора.

[count] b Переместится назад на count слов.

[buffer] [count] c motion Сменить область текста

[buffer] [count] d motion удалить область текста

[count] e  Переместиться вперед на count end-of-wrds

[count] f <character> Поиск count раз, через текущую строку _character_.

[count] i Режим ввода. Текст вставляется перед курсором

m <[color=brown][b]character> Сохранение текущего контекста (строки и столбца) как _character_.

[count] o Включение режима ввода, добавление текста к новой строке под текущей строкой

[buffer] p Вставка текста из буфера.

[count] r <[color=brown][b]character> Заместить count символов.

[buffer] [count] s Заменить count символов в текущей строке начиная с текущего символа.

[count] t <character> Поиск count раз через текущую строку, символа перед _character_.

u Отменить последнее сделаное изменение в файле.

[count] w Переместить вперед на count слов

[buffer] [count] x Удалить count символов

[buffer] [count] y motion Скопировать (yank) область текста определенного
переменной count и переместить его в буфер.
[count1] z [count2] -|.|+|^|<carriage-return> Перерисовать, опционально установить
новую позицию и новый размер экрана.

[count] { Переместится назад на count параграфов

[count] | Переместится к определенному столбцу текущей строки

[count] } Переместится вперед на count параграфов

[count] ~ Обратить регистр следующего count символов.

[count] ~ motion  Обратить регистр символов в области текста опреденом в
count и motion

<interrupt> Прервать текущую операцию

Команды ввода текста в vi

Следующий раздел описывает доступные команды в режиме редактирования текста,
в редакторе vi

<nul[> Повторить предыдущий ввод

<control-D> Удалить предыдущий shiftwidth границу колонки.

^<[color=brown][b]control-D> Удалить все автоматически вставленные символы и
сбросить автоматическую вставку.

0<[color=brown][b]control-D> Удалить все автоматически вставленные символы

<control-T> Вставить достаточное количество символов _tab_ и _space_
для перемещения к следующей границе колонки.

<erase>

<control-H> Стереть последний символ

<literal next> Цитировать следующий символ

<escape> Распознать весь введенный текст в файл и вернуться в командный режим.

<line erase> Стереть текущую линию

<control-W>

<word erase> Стереть последнее слово. Определение слова зависит от
опций altwerase и ttywerase.

<control-X>[0-9A-Fa-f]+ Вставить символ со специальным шестнадцатиричным значением в текст.

<interrupt> Прервать ввод текста и вернуться в командный режим.


Команды EX

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

<end-of-file> Переместить экран

! argument(s)

[range]! argument(s) Запустить команду оболочки или фильтр строк через команду
оболочки

" Коментарий

[range] nu[mber] [count] [flags]

[range] # [count] [flags] Показывает выбранные линии, каждая предворяется своим
номером.

@ buffer

* buffer Запускает буфер

[line] a[ppend][!] Вводимый текст добавляется после указанной строки.

[range] c[hange][!] [count] Вводимый текст замещает указанный диапазон

cs[cope] add | find | help | kill | reset Запускает команду Cscope

[range] d[elete] [buffer] [count] [flags] Удаляет строку из файла

di[splay] b[uffers] | c[onnections] | s[creens] | t[ags] Показывает буферы, соединения Cscope, экраны или теги.

[Ee][dit][!] [+cmd] [file]

[Ee]x[!] [+cmd] [file] Редактирует разные файлы.

exu[sage] [command] Показывает использование команды ex

f[ile] [file] Показывает и меняет имя файла, в зависимости от опции

[Ff]g [name] Только для режима vi. Перемещает на передний план указанный экран.

[range] g[lobal] /pattern/ [commands]

[range] v /pattern/ [commands] Добавляет команду к строке совпадающей (или не совпадающей с шаблоном).

he[lp] Показывает справку

[line] i[nsert][!] Вводимый текст вставляется до указанной строки

[range] j[oin][!] [count] [flags] Объединяет строки текста.

[range] l[ist] [count] [flags] Показывает однозначные строки.

map[!] [lhs rhs] определяет или показвает карту (только для vi ).
[line] ma[rk] <character>
[line] k <character> отмечает строку отметкой указанной в _character_.
[range] m[ove] line передвигает указанную строку за определенную строку.
mk[exrc][!] file пишет сокращения, опции редактирования и карты в указанный файл.
[Nn][ext][!] [file ...]  Редакирует следующий файл из списка аргументов.
[line] o[pen] /pattern/ [flags] ввести открытый режим
pre[serve] сохранить файл в формате, который может быть потом восстановлен при помощи ex с опцией -r
[Pp]rev[ious][!]   Редактировать предыдущий файл из списка аргументов.
[range] p[rint] [count] [flags] Показать указанные строки
[line] pu[t] [buffer] дописать содержимое буфера к текущей строке.
q[uit][!] закончить редактирование
[line] r[ead][!] [file] прочитать файл.
rec[over] file  Восстановать file если он был предварительно сохранен.
res[ize] [+|-]size  только в режиме Vi.  Расширить или уменьшить текущий экран.
rew[ind][!] Отмотать назад список аргументов.
rta[g][!] tagstring редактровать файл относящийся к указанному тэгу (только в gtagsmode)
se[t] [option[=[value]] ...] [nooption ...] [option? ...] [all] показывает или устанавливает опции редактирования.
sh[ell] запустить оболочку.
so[urce] file прочитать и запустить команды ex из указанного файла.
[range] s[ubstitute] [/pattern/replace/] [options] [count] [flags]

[range] & [options] [count] [flags]
[range] ~ [options] [count] [flags]  создание замены.

su[spend][!]
st[op][!]
<suspend>  приостановить редактирование.

[Tt]a[g][!] tagstring  Редактировать файл содержащийся указанный тэг.

tagp[op][!] [file | number] вытащить указанный тэг из стека тэгов.

tagp[rev][!] редактировать файл содержащий предыдущий контекст для текущего тэга.

unm[ap][!] lhs размапить строку

ve[rsion] показать версию редактора ex/vi

[line] vi[sual] [type] [count] [flags] только в режиме ex. Войти в vi.

[Vi]i[sual][!] [+cmd] [file] только в режиме vi. Редактировать новый файл.

viu[sage] [command] показать использование команды vi

[range] w[rite][!] [>>] [file]
[range] w[rite] [!] [file]
[range] wn[!] [>>] [file]
[range] wq[!] [>>] [file] записать файл

[range] x[it][!] [file] записать файл если он был модифицирован

[range] ya[nk] [buffer] [count] скопировать указанные строки в буфер.

[line] z [type] [count] [flags] настройка окна.



Набор опций:

Существует большое количество опций, которые можно установить (или отменить) для изменения
поведения редактора. Данный раздел описывает эти опции, их аббревиатуры и их значения по умолчанию.
В каждой записи ниже, первая часть строки с тэгом – полное имя опции, сопровождаемая эквивалентной
аббревиатурой. Часть в квадратных скобках – значение опции по умолчанию. Большинство опций булевы, то есть они либо включены (on), либо выключены (off) и не имеют привязанного значения.

Опции применяются и для ex и для vi режимов, если не указанно обратное.



altwerase [off] только vi. Установить другой алгоритм стирания слов.

autoindent, ai [off] автомтически учитывать новые строки.

autoprint, ap [off] только ex. Автоматически отобразить текущую строку

autowrite, aw [off] автоматически записывать модифицированные файлы при их изменении

backup [""] бэкапить файл перед тем, как он будет перезаписан.

beautify, bf [off] отменить смоволы управления

cdpath [environment variable CDPATH, or current directory] пути директорий используются как префиксы пути, для команды cd.

cedit [no default] установить символ редактирования истории команд

columns, co [80] установить число столбцов на экране.

comment [off] только vi. Пропустить символ комментария в файлах shell'а, С и C++ .

directory, dir [environment variable TMPDIR, or /tmp] директория где будут создаваться временные файлы.

edcompatible, ed [off] запоминать значения ``c'' и ``g'' достаточных для замены, вместо инициализирования их как неопределенных для каждой новой команды.
errorbells, eb [off] только ex. Указывать об ошибке сигналом.

exrc, ex [off] читать стартовые файлы в локальной директории.

extended [off] регулярные выражения являются расширенными выражениями (в стиле egrep)

filec [no default] установить символ завершения пути файла в командной строке.

flash [on] мерцать экраном, вместо вывода звука при ошибки клавиатуры.

gtagsmode, gt [off] использовать GTAGS и GRTAGS, вместо тэгов.

hardtabs, ht [8] установить интервал между аппаратными настройками

iclower [off] делает регулярные выражения чувствительными к регистру, до тех пор, пока не последует выражение в строке поиска в верхнем регистре.

ignorecase, ic [off] игнорировать разницу регистров в регулярных выражениях.

Keytime [6] каждые 10 секунд ex/vi ждет клавиши для завершения кеймэппинга.

leftright [off] только vi. Возможность скроллинга вправо-влево.

lines, li [24] только vi. Установить число строк на экране.

lisp [off] только vi. Модифицирует различные поисковые команды и опции для работы с Lisp'ом. Эта опция еще не реализована.

list [off] показывает строки ...

lock [on] попытаться блокировать любой редактируемый, читаемый или записываемый файл.

magic [on] показывает определенные символы особенно в регулярных выражениях.

Matchtime [7]  только vi. Каждую 10 секунду ex/vi,останавливаются на совпадающем символе. Когда опция showmatch установлена.

mesg [on] Разрешать сообщения от других пользователей.

modelines, modeline [off] читать первые и последние несколько строк каждого файля для команд ex. Эта опция еще не реализована.

Noprint [""] символы не обрабатываются, как символы для печати.

number, nu [off] каждую строку предваряет ее номер

octal [off] отображать неизвестные символы как восьмеричные числа, вместо шестнадцатиричных

open [on] только ex. Если опция не установлена, команды open и visuals не поддерживаются.

optimize, opt [on] только vi. Оптимизация пропускной способности текста для простых терминалов. Эта опция еще не реализована.


paragraphs, para [IPLPPPQPP Lipplpipbp] только vi. Указать дополнительные команды парагрфа для команды and

path [] указать дополнительные директории для поиска файлов для редактирования.

Print [""] символы которые будут всегда обрабатываться как печатные символы.

prompt [on] только ex. Отображать командную строку.

readonly, ro [off] отметить файл и сессию, только для чтения.

recdir [/var/tmp/vi.recover] директория где хранятся файлы для восстановления.

redraw, re [off] только vi. Эмуляция сложного терминала на простом. Эта опция еще не реализована.

remap [on] Remap keys until resolved.

Report [5] установить число строк, о которых редактор будет сообщать о наличии в них изменений.

ruler [off] только vi. Показать в командной строке ряд.

scroll, scr [window / 2] установить число строк скроллинга.

searchincr [off] сделать / и ? команды инкрементальными.

sections, sect [NHSHH Hunhsh] только vi. Определить дополнительные границы секций для команд [[ и ]]

secure [off] отключить доступ ко внешним программам.

shell, sh [environment variable SHELL, or /bin/sh] выбрать шелл используемый редактором.

Shellmeta [~{[*?$`'"\] установить метасимволы для проверки необходимости расширения имени файла

shiftwidth, sw [8] Set the autoindent and shift command indentation width.

showmatch, sm [off] только vi. Учитывать совпадающие символы `{''  и ``('' для ``}'' и``)''

showmode, smd [off] только vi. Отбразить текущий режим редактора и флаг ``modified''

sidescroll [16] только vi. Установить количество смещений при скроллинге влево-вправо.

slowopen, slow [off] задержка отображаемая во время  ввода текста.  Эта опция еще не реализована.

sourceany [off] читать файлы конифгурации не принадлежащие данному пользователю.   Эта опция еще не реализована

tabstop, ts [8] эта опция устанавливает ширину отступа для редактирования.

taglength, tl [0] установить количество существенных символов в тэгах имен.

tags, tag [tags /var/db/libc.tags /sys/kern/tags] установить список тэг файлов.

term, ttytype, tty [environment variable TERM] установить тип терминала.

terse [off] Эта опция исторически делает сообщения редактора менее информативными. Не действует в данной реализации.

tildeop [off] модификация команды ~ для связаных действий.

timeout, to [on] тайм аут клавиш которые могут быть замаплены.

ttywerase [off] только vi. Выбор другого алгоритма удаления.

verbose [off] только vi. Показывает сообщение об ошибке, для каждой ошибки.

w300 [no default]  только vi. Установить размер окна, если скорость передачи данных меньше 1200 бод.

w1200 [no default] только vi. Установить размер окна, если скорость передачи данных равна 1200 бод.

w9600 [no default] только vi. Установить размер окна, если скорость передачи данных больше 1200 бод.

warn [on] только ex. Опция вызывает предупредительное сообщение, если файл был модифицирован
с момента последней записи, до команды !

window, w, wi [environment variable LINES] установить размер окна на экране.

windowname [off] сменить имя окна на текущее имя файла, даже если он не сможет быть восстановлен при выходе из редактора.

wraplen, wl [0] только vi. Автоматически разбивает линии, на указанное число столбцов от левого края.
Если обе переменные wraplen и wrapmargin установлены, то используется значение wrapmargin.

wrapscan, ws [on] Set searches to wrap around the end or beginning of the file.

writeany, wa [off] выключить проверку перезаписи файла.

Переменные окружения

COLUMNS  Количество столбцов на экране. Это значение отменяет любое системное значение или значение терминала. Переменная окружения COLUMNS не устанавливается когда загружается ex/vi, или опция columns
сброшена пользователем, ex/vi вставляет значение по умолчанию.

EXINIT Cписок  команд загрузки ex. Считывается если переменная EXINIT не установлена.

HOME Домашняя директория пользователя используется как начальная директория при загрузке файлов ``$HOME/.nexrc''  и ``$HOME/.exrc'' Это значение так же используется для команды vi cd.

LINES Число рядов на экране. Это значение отменяет любое системное значение или значение терминала. Переменная окружения LINES не устанавливается когда загружается ex/vi, или опция lines
сброшена пользователем, ex/vi вставляет значение по умолчанию

NEXTINIT Список загружаемых команд ex

SHELL Выбор пользовательского shell'а (так же смотрите опцию shell)

TERM Тип пользовательского терминала. По умолчанию он ``unknown''. Если переменная окружения TERM не устанавливается когда загружается ex/vi, или опция term сброшена пользователем, ex/vi вставляет значение по умолчанию.

TEMPDIR Место используемое для сохранения временных файлов. (так же смотрите опцию directory)


Асинхронные события

SIGALRM vi/ex использует этот сигнал для передических бэкапов модифицированных файлов и для вывода сообщения ``busy'' когда операция может занять продолжительное время.

SIGHUP

SIGTERM Если текущий буфер изменился с момента последней операции записи, редактор предпринимает попытку сохранить измененный файл, что бы он мог быть восстановлен позднее. Для более полной информации смотрите раздел ``Recovery'' руководства ex/vi.


SIGINT Когда происходит прерывание, текущая операция останавливается и редактор возвращается на командный уровень. Если прерывание происходит во время набора текста, уже введенный текст сохраняется в файл таким образом, будто был произведен нормальный выход.

SIGWINCH Размер экрана изменяется. Для более полной информации смотрите раздел ``Sizing the Screen''
руководства ex/vi.

SIGCONT
SIGQUIT
SIGTSTP  vi/ex игнорирует эти сигналы.

Файлы

/bin/sh  Пользовательская оболочка по умолчанию
/etc/vi.exrc Системный файл загрузочный файл vi
/tmp Временная файловая директория
/var/tmp/vi.recover директория для восстановления файлов по умолчанию
$HOME/.nexrc первый выбор файла загрузки в пользовательской директории
$HOME/.exrc второй  выбор файла загрузки в пользовательской директории
.nexrc  первый выбор файла загрузки в локальной директории
.exrc второй выбор файла загрузки в локальной директории
Смотрите так же
ctags(1), more(1), curses(3), dbopen(3)

История
nex/nvi замена редакторам ex/vi появилась впервые в 4.4BSD
Стандарты
nex/nvi близки к IEEE Std1003.2 (``POSIX''). Этот документ отличается от исторического ex/vi в нескольких местах; есть изменения которые будут сделаны с обеих сторон.



размещено: 2008-03-16,
последнее обновление: 2008-08-02,
автор: Andy



Хостинг HOST-FOOD

2014-07-27, lissyara
gmirror

Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9

Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту

Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis

Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
подписка

    вверх      
Статистика сайта
Сейчас на сайте находится: 16 чел.
За последние 30 мин было: 36 человек
За сегодня было
1686 показов,
240 уникальных IP
 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0404 секунд
Из них PHP: 36%; SQL: 64%; Число SQL-запросов: 48 шт.
У Вас отключено GZIP-сжатие в браузере. Размер страницы 91297