Редакторы vi, ex и Vim 451sourceso fileСчит ыв ае т и вып олн яет команды ex из файл а file.Пример :so $HOME/.exrcsplit[count] sp [+num] [filename]Разд ел яет тек ущ ее окн о и заг руж ает в новое окн о файл filename или текущий буфер, есл и filename не задан. Выс ота нового окна задае тся равной count или, есл и count не указ ан, окно разделяетс я на равн ые части.При нал ичии арг ум ент а +num ред актир ов ан ие начинается со строкиnum. Кром е тог о, num мож ет быть шаблоном вид а /pattern. {Vim}sprevious[count] spr [+num]Разд еляе т тек ущ ее окно и начин ает ред акт ирование предыд ущ его файла в списке арг ум ент ов ком андн ой строки. Если указан count, редактируется count-й предыдущий файл в спис ке. При нал ичии аргумента+num ред акт ирован ие начин ае тся со строк и num. Кроме того, num может быть шаблоном вида /pattern. {Vim}stopstПриост анавл ивает тек ущ ий сеа нс ред акт ир ов ания. Действ ие аналог ично CTRL-Z. Для восс тан овления сеанс а введ ит е команд у обол очк и fg.substitute[address] s [/pattern/replacement/] [options] [count]Зам ен яет первое вхож дение pattern в каждой из указанн ых строк наreplacement. Есл и pattern и replacement не указ ан ы, повторяе т пос леднюю замен у. count опр ед еляе т колич еств о строк, в которых нужно произв одить замену, нач ин ая с address. (Нес ок ращенная форма ком анд ыне раб от ае т в Solaris vi.)Опции c При кажд ой зам ене зап раш ив ает подтвержден ие. g Заменяе т все вхожд ения pattern в кажд ой строке (глобальн ая за мена). p Вывод ит пос леднюю строку, в кот орой была сдел ан а зам ена.
452 Приложение A Примеры Зам ен ить текст в перв ых 10 строк ах :1,10s/yes/no/g Глоб альная зам ен а с подт верж ден ием :%s/[Hh]ello/Hi/gc Сдел ать в следующих трех строках :s/Fortran/\U&/ 3 прописн ые букв ы у «Fortran» Кажд ой строке, нач ин ающ ейся с одн ой :g/^[0-9][0-9]*/s//Line &:/ или нес кольких цифр, прип ис ать «Line» и двоет оч ие suspend su Приостан авливает текущ ий сеанс редакт ирования. Команд а аналог ич на CTRL-Z. Для восстановл ен ия сеанса введит е команд у оболочки fg. sview [count] sv [+num] [filename] Эквив ал ентн а ком анде split, но для нов ого буфер а устанавл ив ае тс я оп ция readonly. {Vim} t [address] t destination Коп ир уе т строк и, содерж ащ иес я в address, в (to) указ анн ый адр ес destination. t экв ив алентн а copy. Пример Коп ир ует файл и добавл яе т его в кон ец :%t$ tag [address] ta tag В файл е tags нах од ит файл и строк у, соо тв етс тв ующую тег у tag, после чег о начинае т редакт ир ов ание оттуд а. Пример Запуст ите ctags, затем переключ ит есь в файл, сод ержащ ий myfunction: :!ctags *.c :tag myfunction tags tags Вывод ит список тег ов из стек а тег ов. {Vim}
Редакторы vi, ex и Vim 453unabbreviateuna wordУбр ать слово word из спис ка аббрев иатур.undouОтм ен ить изм енения, продел анн ые последней команд ой ред акт ир ов ания. В vi ком анд а отм ен ы отменяе т сам у себя, так им образом прои зв одя восстан овл ен ие. Vim подд ержив ает нес колько уровн ей отм ены. Дляпов торн ог о прим енен ия отм ен енного дейс твия в Vim использ уйте redo.unhide[count] unhРазделяет экр ан так, чтоб ы в кажд ом окн е был пок азан активн ый буфер из спис ка буферов. Есл и указан count, то он огран ичив ае т количеств о окон. {Vim}unmapunm[!] stringУдалить строк у string из списка макросов клавиатур ы. Для удал ен иямакрос а реж им а ввод а исп ользуе тс я !.v[address] v/pattern/[command]Выполняет ком анду command для всех строк, не содержащих pattern.Если command не указ ан а, эти строки вывод ятс я. v эквив ал ентн а g!. Смglobal ран ее в этом списке.Пример Удалить все строк и, за иск люч ен ие м строк с «#include» :v/#include/dversionveВыводит тек ущ ую верс ию ред актора и дат у пос ледн ег о измен ен ия.viewvie[[+num] filename]Экв ив ал ентна команде edit, но для файла уст анавлив аетс я опц ия readonly. Если выполнить в реж им е ex, возвращ ае т в норм альный или виз уальный режим. {Vim}
454 Приложение A visual [address] vi [type] [count] Запуск ает виз уальный реж им (vi) на строк е, указанн ой в address. Вер нуться в реж им ex можн о, наж ав Q. type замен яется на -, ^ или . (см. ко манду z ниж е в этом разд ел е). visual vi [+num] file Нач ать ред актир ов ан ие файл а в виз уальном режим е (vi), опционально – на строк е num. Кром е того, num мож ет быть шаблоном вид а /pattern. {Vim} vsplit [count] vs [+num] [filename] Аналогична команд е split, но экр ан разделяется верт ик ально. Аргу мент count может использ оваться для указания шир ин ы нов ого окн а. {Vim} wall wa[!] Записывает все изм ен енн ые буфер ы в файл ы. Для запис и буфер ов, по меченных как readonly, исп ользуйте !. {Vim} wnext [count] wn[!] [[+num] filename] Сох раняе т текущий буфер и открывает следующий файл из списка ар гументов либо count-й след ующий файл при заданном count. Есл и при вед ен о имя файла filename, то этот файл ред акт ир уется следующ им. При нал ич ии арг умент а +num ред актиров ание нач инаетс я на строке num. num также может быть шабл оном вида /pattern. {Vim} wq wq[!] Сох ранен ие файл а и вых од одним дейс твие м. Зап ись файла прои сходит всегда. Флаг ! говорит ред актор у прои звес ти зап ись пов ерх тек ущ его содерж имог о файла. wqall wqa[!]
Редакторы vi, ex и Vim 455Зап исыв ает все несохран енн ые буферы и вых одит из редакт ора. Приуказ ан ии ! запись прои сх одит даж е у буферов, помеч енных как readonly.xall – друг ой псевдон им для этой команд ы. {Vim}write[address] w[!] [[>>] file]Зап ис ыв ает строки, указ анн ые в address (либ о все содержим ое буф ер а,если address не указан), в файл file. При отс утств ии file сод ерж им ое буфер а зап исывае тс я в текущ ий файл. Если использ уется >> file, к этом уфайлу доп ис ыв аю тся строки. Чтоб ы редакт ор записал пов ерх текущег осод ерж им ого файла, поставьт е !.Примеры Копир овать перв ые 10 строк в файл name_list А теп ерь прип ис ать в него строк у 50 :1,10w name_list :50w >> name_listwrite[address] w !commandПер едать строки, определ енные в address, в ком анд у command.Пример Печат ать первую стран иц у файла :1,66w !pr -h myfile | lpXXЗап росить ключ шифр ован ия. Это может оказ атьс я предпочтительн ей,чем :set key, поскольку в конс оли ввод ключа не отоб раж аетс я. Чтоб ыудал ить ключ шифрования, просто уст анов ит е опц ии key пустое значение. {Vim}xitxСохран ить файл, если он мен ялс я со времени последнего сох ран ения,а затем выйт и.yank[address] y [char] [count]Пом ест ить строк и, опред ел енные в address, в именованн ый регистрchar. Имен а регистров – строчные букв ы от a до z. При исп ольз ован иипрописных букв текст буд ет доб авл ен к соответс твующем у регистру.
456 Приложение A Если char не зад ан, строк и помещ аютс я в общий регистр. count опреде ляе т колич ество копируемых строк, нач иная с address. Пример Коп ир ов ать строк и 100–200 в регистр «a» :101,200 ya a z [address] z [type] [count] Вывод ит текс товое окно, в котором зад анн ая в address строка помещ а етс я на самый верх. count опред еляе т колич еств о выв одимых строк. Тип + Пом ещае т указанную строку на сам ый верх окн а (по умолчанию). - Пом ещае т указ анн ую строк у в низ окн а. . Помещае т указ анн ую строк у в центр окн а. ^ Выводит пред ыдущий вид. = Помещае т указанн ую строк у в центр окна и дел ает ее текущей. & [address] & [options] [count] Повтор яе т предыдущую ком анд у зам ен ы (s). count опр ед еляет числ о строк, в кот орых нужн о произв ести зам ен у, начин ая с address. options те же, что в ком анде замены. Примеры Однократная зам ена в тек ущ ей строке Повтор зам ен ы во всех строках с «Status» :s/Overdue/Paid/ :g/Status/& @ [address] @ [char] Выполн яе т содерж им ое рег ис тр а, на кот орый указ ывает char. Есл и за дан address, то снач ал а курс ор перемещ ае тс я по этом у адрес у. Если в char указан симв ол @, то повторяе тс я последн яя ком анда @. = [address] = Выводит номер строк и, кот ор ая зад аетс я в address. По умолчанию это номер пос ледней строк и.
Редакторы vi, ex и Vim 457![address] !commandВыполн яе т в обол очке ком анду UNIX command. Если указан address,то в кач ес тв е стандартного ввод а для ком анды command используютс ястроки, сод ерж ащ иес я по этом у адрес у, кот орые пот ом зам еняю тся навыв од команды и ошиб ок. (Это наз ываетс я фильтр ацией текс та черезком анду.)Примеры Вывести список файл ов в тек ущ ем каталог е Отсортир овать строки 11–20 в текущем файле :!ls :11,20!sort -f<>[address] < [count]или[address] > [count]Смещае т строк и, опр ед ел енные в address, нал ево (<) либо нап рав о (>).При смещении добавл яю тся/удал яются тольк о первые пробелы и таб уляции. count опр еделяе т кол ичес тво смещаем ых строк, нач иная с address. Опц ия shiftwidth управл яе т числ ом столбц ов, на кот орое идет смещение. Пов тор ение < или > увел ич ив ает величину сдвиг а. Нап рим ер,:>>> смес тит в три раза дальше, чем :>.~[address] ~ [count]Заменяе т последнее использ овавш еес я рег улярное выр аж ение (дажев текс те поиск а, но не из команд ы s) на текст замен ы из пос ледней команд ы s. Это описан ие дов ольн о абстр актно; за подр обнос тями обратитесь к главе 6.addressaddressВывод ит строки, указ анные в address.ENTERВыводит следующ ую строку файл а. (Тольк о в ex, в приглашении : vi неработае т.)
BУстановка опцийГлава B.В этом приложении описыв аются важные опции команды set для Solaris vi, nvi 1.79, elvis 2.2, Vim 7.1 и vile 9.6.Опции Solaris viТаблица B.1 содерж ит краткие описания важных опц ий ком анды set.В первом столбце пер еч ислен ы опц ии в алф авитн ом пор ядк е. Если опция допускает сокращение, то аббрев иат ура приводитс я в круглыхскобк ах. Во втором столбце пок аз ан о значен ие по умолч анию, используемое vi до выз ов а команды set (вручн ую или посредс тв ом файла .exrc).В пос леднем столбц е описыв ается действ ие опц ии при ее включ ен ии.Таблиц а B.1. Опции set для Solaris viОпция Значение Опис аниеautoindent (ai) noai В режиме вставки каждая строка получ ает та кой же отс туп, как в строк е выш е или ниж е.autoprint (ap) ap Исп ользуетс я с опцие й shiftwidth.autowrite (aw) noaw Отображае т изменения после кажд ой ком анд ы редакт ора. (При глоб альн ой замене отображаbeautify (bf) nobf етс я последн яя зам ен а.)directory (dir) /tmp Авт омат ичес ки записывает (сох ран яет) изм е ненный файл при открытии друг ог о с пом ощ ью :n или при выз ов е команд ы UNIX :!. Игн орировать все управляющие симв ол ы во врем я ввод а (кроме tab, нов ой строки или пер е вода страницы). Зад ает катал ог, где ex/vi хран ит файлы буферов. (Вы должны иметь прав а зап ис и в этот кат ал ог.)
Установка опций 459Опц ия Знач ение Описан иеedcompatible noedcompatible Запом инает флаг и, исп ользов авшиес я в по следн ей команде зам ен ы (глобальная, подт вер ждение), и исп ользует их в след ующей ком анде замен ы. Нес мотря на название, ни в одн ой из версий ed так не происх одит.errorbells (eb) errorbells Включает звуков ой сигнал при ошибке.exrc (ex) noexrc Разрешае т выполн ение файла .exrc, расп оло женног о за пределами домашн его кат ал ога польз ов ат еля.flash (fp) nofp Включае т мигание экран а вмес то системног о сигнал а.hardtabs (ht) 8 Опр ед еляе т границ ы для апп аратн ых таб ул я ций терм ин ала.ignorecase (ic) noic Не обр ащ ать внимание на рег истр во врем я по иска.lisp nolisp Вставл яет отступ ы в соотв етств ующ ем Lisp фор мат е. ( ), { }, [[ и ]] меняются так, чтобы иметь смысл для Lisp.list nolist Таб уляции печ ат аютс я как ^I, а конц ы строк отм еч аютс я с помощью $. (Чтобы указ ать, что заверш ающ ий симв ол явл яетс я пробелом или табуляц ие й, использ уйт е listp.)magic magic Символы маск и . (точк а), * (звезд очка) и [] (квадратные скобки) получаю т спец иальн ое знач ен ие в шабл онах.mesg mesg При редакт ир ов ан ии в vi разр ешае т отображе ние системн ых сообщений в терм ин але.novice nonovice Требует исп ользовать длинн ые имен а команд ex, нап рим ер copy или read.number (nu) nonu Отображ ае т ном ер а строк в левой части экр ана во время сеанс а редактир ов ания.open open Разреш ает вход в отк рыт ый или виз уа льн ый реж им из ex. Хотя в Solaris vi этог о нет, такая опц ия традиц ио нно включ ае тся в vi и может прис утс тв овать в версии vi на ваш ем UNIX.optimize (opt) noopt Отм еняет возврат кар етк и в конце строк и при печ ат и нес кольких строк. Это ускор яет раб от у на медленн ых терм инал ах при печ ати строк с проб ельн ыми симв ол ам и (пробелами или та бул яциям и), стоящ им и в нач ал е.paragraphs IPLPPPQP Опр ед еляе т разд елит ел и абзаца для пер ем ещ е(para) LIpplpipbp ния по { или }. Пары симв олов, стоящие в зна чении этой опц ии, являютс я именами макро сов troff, кот ор ые опред еляю т нач ало абзаца.
460 Приложение B Опция Знач ение Табл ица B.1 (продолжение) prompt prompt Описан ие readonly (ro) noro Отображ ае т приглашен ие ex (:) при ввод е ко redraw (re) манд ы vi Q. remap remap Все зап ис и файл а будут выд ав ать ошибку, если report 5 только не исп ольз овать ! после write (работает с w, ZZ или autowrite). scroll [½ window] Пер ерис ов ыв ает экран при кажд ой правке (дру sections (sect) SHNHH HU гими словам и, реж им вставки помещ ает симво лы к сущ ествующим, а удал енн ые строк и сраз у shell (sh) /bin/sh же исчез ают). Установка по умолч ан ию зав ис ит от скорос ти лин ии и типа терм ин ала. noredraw shiftwidth (sw) 8 полезн а при малых скор ос тях и медл енных тер showmatch (sm) nosm мин ал ах: удаленн ые строки отображ аютс я как @, а вставл енн ые симв ол ы появл яются пов ерх showmode noshowmode имеющихся, пока вы не нажмет е ESC. Разр ешает влож енные послед оват ельн ос ти ото браж ений. Отоб раж ает сообщен ие в строк е состоян ия при кажд ой правке, зат рагив ающей как мин им ум указ анн ое кол ич ес тво строк. Наприм ер, 6dd выдаст «6 lines deleted». Кол ич еств о строк, на котор ое прокруч ив ае тс я экр ан командами ^D и ^U. Опр едел яет раздел ит ели раздела для пер ем еще ния по [[ или ]]. Пар ы симв ол ов, стоящие в зна чении этой опц ии, явл яютс я именам и макр ос ов troff, опр ед ел яющ ими нач ало раздел а. Имя пут и к оболочке, исп ольз уемое для выход а в обол очк у (:!) и в команде обол очк и (:sh). Зна чение по умолчанию опр ед еляетс я из окр уже ния обол очки. На разн ых сист ем ах это знач е ние буд ет отлич атьс я. Определяет количеств о проб елов в обратн ых (backward) (^D) таб ул яциях при исп ольз овании опц ии autoindent, а также в ком андах << и >>. В vi при вводе ) или } курс ор «на сек унд очк у» пер емещае тся на соо тв етс твующ ую ( или {. (Ес ли соо тветствующ ей скобки нет, выд ае тс я сис темный сигнал.) Опц ия очень полезна в про грамм ир ов ан ии. В режиме вставк и в строк е приглаш ения ото браж ае т сообщ ен ие, указывающее на тип встав ки, например «OPEN MODE» или «APP END MODE».
Установка опций 461Опц ия Значение Опис ан иеslowopen (slow) Зад ерж ивае т отображение во врем я вставк и. Знач ен ие по умолчанию зав исит от скорости лин ии и тип а термин ал а.tabstop (ts) 8 Опр едел яе т количество проб елов, котор ые вставляю тся при нажат ии табул яции во время ред актир ов ания. (Принтер все равно использу ет системную табуляцию, равн ую 8.)taglength (tl) 0 Определ яет кол ич ество симв олов, кот орые яв ляютс я значим ыми для тег ов. Значен ие по умолчанию (ноль) озн ачает, что знач имы все символ ы.tags tags /usr/lib/ Опр едел яе т путь к файл у, содерж ащ ему тег и tags (см. команд у ctags для UNIX). По умолчанию vi ищет файл tags в текущем каталог е и в /usr/ lib/tags.tagstack tagstack Включ ает стек положений тег ов.term Уст анавл ив ае т тип терминал а.terse noterse Выводит бол ее кор отк ие соо бщения об ошиб ках.timeout (to) timeout При исп ольз ов ании отображ ен ия клавиш пре крат ить ожид ан ие следующ ег о символ а после 1-й секундыa.ttytype Зад ает тип терминал а. Экв ив алентн а term.warn warn Отображае т предуп реж ден ие «No write since last change».window (w) Показ ывае т опред еленное количес тво строк файла на экране. Значение по умолчан ию зав и сит от скор ости лин ии и тип а терм инала.wrapmargin (wm) 0 Правая границ а текс та. Есл и знач ение больше нуля, по его дост иж ении автомат ич ески встав ляе тс я возврат кар етки, чтобы разбить строк у.wrapscan (ws) ws При достижении конца файла пои ск прод олж а етс я с его начал а.writeany (wa) nowa Разрешает запись в прои звольн ый файл.a Есл и вы использ ует е отображен ие из нескольких клавиш (наприм ер, :map zzz 3dw), то лучш е включ ить notimeout, инач е придется наб рать zzz в теч ение одной сек унды. При налич ии отоб раж ения для курс орной клав иши в ре жим е вставки (нап ример, :map! ^[OB ^[ja) целес оо бразн о устан овить timeout. В противн ом случае vi не буд ет реаг иров ать на ESC, пок а вы не нажмете еще как ую-нибудь клавиш у.
462 Приложение BОпции nvi 1.79 Всего в nvi 1.79 есть 78 опц ий, опред еляющих его пов едение. В табл. B.2 прив еден ы тольк о самые важные из них. Больш ая часть опций из табл. B.1 здесь не повтор яетс я. Таблиц а B.2. Опц ии set для nvi 1.79 Опц ия Знач ение Опис ан ие backup Строка, описыв ающ ая используемый резервн ый cdpath файл. Текущ ее содерж имое файла буд ет сох ра cedit няться в резервн ый файл пер ед зап исью нов ых данных. Первый символ N зас тавл яет nvi вклю comment чать номер версии в конец файл а; номер а версий directory всег да возрастаю т. Раз умным прим ер ом являетс я (dir) \"N%.bak\". extended filec Пер еменная ок Путь пои ск а для команды :cd. ружен ия CDPATH или текущ ий катал ог Ког да первый символ этой строк и вводитс я в ко мандную строк у с двоеточием, nvi отк рывает но вое окно истории ком анд, кот орые можн о редак тир овать. Нажатие ENT ER на любой строке при вод ит к ее выполнению. Хорош им прим ером зна чен ия такой опции служ ит ESC (для его ввода наж мите ^V ^[). nocomment Если первая неп устая строка нач ин аетс я с /*, // или #, nvi пропускае т текст коммент ария пер ед отоб раж ен ие м файл а. Это избавл яет от показ а длинн ых скучных увед омл ен ий. Переменная Каталог, где nvi размещ ает свои временн ые фай окр уж ен ия лы. TMPDIR или /tmp noextended При поиске исп ольз ую тс я расш ир енные регуляр ные выражен ия в стиле egrep. Когда первый симв ол этой строк и ввод ится в ко мандн ую строку с двоеточием, nvi расс матривает отд еленн ое проб ел ом слов о пер ед курсором, как есл и бы к нему был прип ис ан знак *, и вып олня ет подс тан овк у в стил е обол очк и. ESC также под ход ит для этой опции в кач естве примера (чтобы ввес ти его, наж мите ^V ^[.) Если этот симв ол та кой же, как у опц ии cedit, редакт ирование ист о рии нач инае тс я, только если первый симв ол cedit одн оврем енн о является первым и в ком андн ой строке с двоет очием.
Установка опций 463Опц ия Значение Опис ан иеiclower noiclower Дел ает все пои ск и с рег улярным и выр аж ен иямиleftright noleftright неч увствит ельн ым и к регис тр у, если шаблон поlock lock иска не сод ерж ит проп исных букв.octal nooctal Длинные строк и прок руч иваю тся на экр ане сле ва направ о, а не перенос ятс я.path nvi пытается пол учить эксклюзивный доступrecdir /var/tmp/ к файл у. Есл и это невозм ожно, для нег о отк рыв а vi.recover ется сеа нс в режиме «тольк о для чтения».ruler noruler Неопознанные симв олы отображ аются в восьм е ричном, а не шес тн адцатеричном виде.searchincr nosearchincr Список каталогов, разделенн ых запят ыми, гдеsecure nosecure nvi буд ет иск ать файл для редактир ов ания.shellmeta ~{[*?$`'\"\ Кат ал ог, в кот ор ом хранятс я файл ы для восс та новлен ия.showmode noshowmode(smd) Отображ ае т строк у и столбец курс ор а.sidescroll 16 Выполняетс я инк рементн ый пои ск.taglength 0 Вык лючаетс я доступ к внешним прог рамм ам для(tl) фильтрации текс та, отк люч аются команд ы ! и ^Z реж им а vi, а также команд ы !, shell, stop и sutags (tag) tags /var/db spend реж им а ex. После уст ановки этой опц ии ееtildeop /libc.tags/sys уже нельзя отк лючить. /kern/tags Если в арг ум енте, представляющ ем имя файла notildeop в команд е ex, встреч ае тся один из этих символов, арг ум ент подставл яется прог раммой, заданнойwraplen 0 в опц ии shell.(wl) В строк е сос тояния отображае тс я текущий ре жим. Есл и файл измен ен, то пок аз ыв ае тс я *. Кол ичеств о столбц ов, на кот ор ые смещаетс я экр ан влев о или вправо при заданн ой опц ии leftright. Опр еделяе т колич ес тв о симв ол ов, кот ор ые явля ютс я значимым и для тег ов. Знач ение по умолча нию (ноль) гов ор ит, что значим ы все симв ол ы. Список возм ожных файлов тегов. Ком анда ~ «понимает» идущ ее следом за ней пе ремещ ен ие, а не тольк о предшес тв ующ ее колич е ство повтор ен ий. Опция аналог ичн а wrapmargin, за иск люч ением то го, что она указыв ае т колич ес тв о симв ол ов, счи тая от лев ого поля, по достижен ии кот ор ог о стро ка будет разбита. Знач ение wrapmargin отменяет wraplen.
464 Приложение BОпции elvis 2.2 В elvis 2.2 имее тс я 225 опц ий, опред еляющ их повед ение редактор а. В табл. B.3 представлены тольк о сам ые важные из них. Больш ая часть опц ий описана в табл. B.1 и здесь не пов тор яе тс я. Табл иц а B.3. Опц ии set для elvis Опц ия Знач ен ие Описание autoiconify noautoiconify Стар ое окно сворач ив ается при разв орач ива (aic) нии нов ого. Тольк о в X11. backup (bk) nobackup Создавать резервн ый файл (xxx.bak) пер ед зап и сью нового файла на диск. binary (bin) Данн ые буфера не являютс я текстов ыми. Эта опция устанавл ив аетс я автом ат ичес ки. boldfont (xfb) Имя полуж ирн ого шрифт а. Тольк о в X11. bufdisplay (bd) normal Реж им отоб раж ен ия по умолч ан ию для буфер а (hex, html, man, normal, syntax или tex). ccprg (cp) cc ($1?$1:$2) Команд а обол очки для :cc. directory (dir) Указывае т место хранения временн ых файлов. Знач ение по умолч анию зав исит от системы. display (mode) normal Имя тек ущ его режима отображ ения, задав ае мое ком андой :display. elvispath Список кат ал огов, в кот ор ых нужн о иск ать (epath) конф иг урац ионн ые файл ы. Знач ение по умол чан ию зав ис ит от системы. focusnew (fn) focusnew Фок ус клав иат уры перен оситс я на нов ое окно. Только в X11. font (fnt) Наз ван ие обычног о шрифт а (для инт ерф ейсов Windows и X11). gdefault (gd) nogdefault Ком анда зам ен ы мен яе т все вхождения. home (home) $HOME Дом ашн ий катал ог для подс тан овки знак а ~ в именах файлов. italicfont (xfi) Имя курс ивн ог о шрифт а. Тольк о в X11. locked (lock) nolocked Буфер перевод ится в реж им «тольк о для чте ния», после чего все меняющие его ком анды не смог ут вып олнятьс я. Обычн о уст ан авл ив ае тся авт оматич ес ки для HTML-файл ов с прав ам и «только для чтен ия». lpcolor (lpcl) nolpcl Использов ать цвет при печат и; для :lpr. lpcolumns 80 Шир ина стран ицы принтера; для :lpr. (lpcols) lpcrlf (lpc) nolpcrlf Принт ер требуе т CR/LF для нов ой строк и в файл е; для :lpr.
Установка опций 465Опц ия Значен ие Описан иеlpformfeed nolpformfeed После последней страницы пос ыл ается зап рос(lpff) на под ач у страниц ы; для :lpr.lpheader (lph) nolph Вверх у страницы печат аетс я заг ол ов ок; для :lpr.lplines (lprows) 60 Длина страницы принт ер а; для :lpr.lpout (lpo) Файл или фильтр для принт ер а, для :lpr. Обыч но значен ие равно !lpr. Значен ие по умолчанию зависит от систем ы.lptype (lpt) dumb Тип принтер а; для :lpr. Приним ает одно из сле дующ их значен ий: ps, ps2, epson, pana, ibm, hp, cr, bs, dumb, html или ansi.lpwrap (lpw) lpwrap Симул яц ия пер еноса строки; для :lpr.makeprg (mp) make $1 Команд а оболочк и для :make.prefersyntax never Конт ролир ует исп ользован ие синт акс ического(psyn) режим а. Полезно, ког да в HTML и страницах man нужн о показ ывать сод ерж им ое вместо от форм атиров анного текста. Если значение равно never, синт аксичес кий реж им никог да не ис пользуе тся; если writable, то он устанавливае т ся для зап исываем ых файлов; если local – ус танавл ивае тс я для файл ов тек ущего катал ога; при значении always синт аксич ес кий реж им ис польз уе тся всег да.ruler (ru) noruler Отображ ает строку и столбец курс ор а.security (sec) normal Одн о из знач ен ий normal (станд артн ое повед е ние vi), safer (пытаетс я предотвратить напис а ние вредоносных скрипт ов) или restricted (пы тается сдел ать elvis безо пасн ым ред акт ором с огр анич ен иям и). Вообще говоря, значение оп ции устан авливаетс я командой :safely, так что не мен яйт е его вручн ую.showmarkups noshowmarkups Для режимов man и html разм етка отображ аетс я(smu) на поз иции курс ора и ниг де больше.sidescroll (ss) 0 Величин а прок рутки по гориз онт али. Нулевое знач ение – подражание vi (строки пер ен ос ятс я).smartargs (sa) nosmartargs После ввода имен и функц ии и симв ол а function (обычн о это отк рывающая кругл ая скобк а) на экран выв од ятс я аргумент ы функц ии, пол у ченн ые из файла тег ов.spell (sp) nospell Неправильно нап ис анные слов а подсвечиваю т ся. Это такж е раб отает с прог рамм ам и на осн о ве данных из файл а tags.
466 Приложение B Опция Значение Таблиц а B.3 (продолжение) taglength (tl) 0 Опис ан ие tags (tagpath) tags Определ яе т кол ичес тв о символов, котор ые важ tagstack (tsk) tagstack ны для тег ов. Значение по умолчан ию (ноль) указ ывае т, что важн ы все символ ы. undolevels (ul) 0 Список возможных файлов tags. warpback (wb) nowarpback Зап ом инае т исх одн ые позиц ии, отк уда проис warpto (wt) don't ход ил пои ск тег а в стек е. Опред ел яет кол ичество отменяемых команд. Нулевое значение восп рои звед ет поведен ие vi. Имеет смысл устан ов ить знач ение побольш е. При выходе пер ем ещает указ ат ель мыш и об ратно в xterm, откуда был зап ущ ен elvis. Толь ко в X11. Задае т спос об пер емещ ен ия указател я мыш и при помощ и ^W. don't указ ыв ае т на запрет дви жения, scrollbar перен осит указ ат ель к полос е прок рутки, origin перем ещает его в лев ый верхний угол, а corners – в сам ый дальний и са мый ближний угл ы (по отнош ен ию к тек ущей позиц ии курс ора). При этом дисп лей X пан ора мируетс я, гарант ируя, что все окн о попадет на экран.Опции Vim 7.1 В Vim 7.1 есть 295(!) опц ий, влияющих на его поведение. В табл. B.4 обоб щен ы самые важные. Большая часть опций описан а в табл. B.1 и здесь не повторяе тс я. Опис ание опц ий в этой табл ице приш лось дел ать кратким. Бол ее по дробную инф ормацию можн о пол уч ить в онлайн-справк е Vim. Таблиц а B.4. Опции set для Vim 7.1 Опц ия Значен ие Опис ание autoread (ar) noautoread Опр ед еляет, был ли файл, отк рытый в Vim, background (bg) dark или light измен ен внешн ей прог рамм ой, и автомат и чески обновл яе т буфер ред актора новой верс ией файл а. Программ а пыт ается исп ольз ов ать наибо лее подходящ ие для данного термин ала цвет а шрифт а и фона. Знач ения по умолча нию зависят от текущ его терм ин ала и окон ной систем ы.
Установка опций 467Опция Знач ен ие Описан иеbackspace (bs) 0 Управляе т возм ожн ос тью пройти через но вую строку или точку начала вставки, на жим ая Backspace. Значения так овы: 0 – со вместимость с vi, 1 – пер еход через симв ол ы новой строк и и отступы, 2 – переход через начал о вставки, символ ы нов ой строк и и отступы.backup (bk) nobackup Делает резервн ую копию пер ед перез апи сью файла и ост авляет ее, если файл был успешно сох ранен. Чтоб ы иметь рез ервн ый файл тольк о во время сохранен ия, исполь зуйт е опцию writebackup.backupdir ., ~/tmp/, ~/ Список катал ог ов для рез ервн ых файлов,(bdir) раздел енных запятыми. По возможнос ти рез ервн ый файл создаетс я в перв ом катало ге этого спис ка. Если список пуст, вы не сможете создать резервн ый файл. Имя . (точка) дае т команду использовать кат алог с ред акт ир уем ым файлом.backupext (bex) ~ Строка, котор ая прип ис ывается к имени файл а для пол учен ия имен и файл а рез ерв ной копии.binary (bin) nobinary Меняет нескольк о друг их опц ий, чтобы об легчить ред акт ир ован ие двои чных файл ов. Прош лые знач ения этих опций запом ина ются и восстан авл ив аются, когда bin вновь отключае тс я. В каждом буф ере хран ится свой набор сохран енных знач ен ий опций. Эту опц ию следуе т установ ить при ред акти ров ании двои чных файл ов. Также можно использов ать ключ -b ком андной строк и.cindent (cin) nocindent Включает авт оматическую «умн ую» рас стан овку отступ ов для программ ы на C.cinkeys (cink) 0{,0},:,0#,!^F,o,O,e Список клав иш, при наж атии которых в режим е вставки в текущ ей строк е буд ет изм ен ен отступ. Работ ае т, если зад ан а оп ция cindent.cinoptions Управл яе т расс тановк ой отступов в про(cino) грамм ах C при помощи cindent. За подр об ностями обр ат итесь к онлайн-справк е.cinwords (cinw) if, else, while, do, Эти ключев ые слова начин аю т нов ый от for, switch ступ в след ующей строке, когда включен ы smartindent или cindent. Для cindent это про делываетс я тольк о в опр едел енных местах (внутр и {...}).
468 Приложение B Опция Знач ен ие Таблиц а B.4 (продолжение) comments (com) cp; nocp, если Описан ие найд ен файл compatible .vimrc Разд еленный зап ятым и спис ок строк, начи (cp) нающих комм ентар ий. За подр обностями об ратитесь к онл айн-справке. completeopt menu,preview (cot) aABceFs Vim начинает вест и себ я как vi во мног их си туациях, кот орые нев озм ожно здесь описать. cpoptions По умолчан ию опция включена, чтоб ы не вы (cpo) зыв ать удивления. Налич ие файл а .vimrc от ключ ает сов местим ость. Обычно это жел ае cursorcolumn nocursorcolumn мый поб очный эфф ект. (cuc) Спис ок опций для автоз аверш ен ия в реж им е cursorline nocursorline вставк и, разд еленн ых зап ят ыми. (cul) Список односимвольных флаг ов, кажд ый из define (def) ^#\s*define которых зад ает конкретн ую обл асть, в кото рой Vim буд ет или не будет вести себ я как vi. directory ., ~/tmp, /tmp Если спис ок пуст, используются уст ановк и (dir) Vim по умолчан ию. За подробн остям и обр ати тесь к онл айн-справке. equalprg (ep) Подс веч ивает столб ец экран а, на котором сто ит курсор, подс ветк ой CursorColumn. Опция по лезн а при упорядоч ивании текс та по верт ик а ли. Может зам едлить отоб ражение текс та. Подсвечив ае т строк у экр ан а, на котор ой стои т курс ор, подс веткой CursorRow. Обл егчает пои ск тек ущей строки во время ред акт ирования. Вместе с cursorcolumn дает эффект пер ек ре стия. Может замедл ить отображение текс та. Шабл он поиска, описывающий опр ед еления макр осов. Значение по умолч ан ию берется для программ на C. Для C++ используйт е ^\(#\s*define\ |[a-z]*\s*const\s*[a-z]*\). При ис пользов ании с команд ой :set обр атн ые кос ые черты нужн о удв аив ать. Спис ок разделенн ых запятым и имен катало гов для файл а подкачк и. Он буд ет создан в первом каталог е, где это возм ожн о. Есл и спи сок пуст, файл не будет созд ан, что сдел ае т восс тан овл ен ие нев озм ожн ым! Значение . (точка) озн ачает, что файл подкачки будет по мещ ен в катал ог с ред акт ир уемым файл ом. Ре коменд уе тс я поставить точк у (.) первой в спи ске, чтоб ы пов торн ое ред акт иров ание файл ов привело к пред упреж д ающ ем у соо бщ ению. Внешняя программ а, используем ая команд ой =. Есл и опц ия пуст а, применяютс я внутр ен ние функц ии форматирования.
Установка опций 469Опция Значен ие Описаниеerrorfile (ef) errors.err Имя файла ошиб ок для режим а quickfix. При использ ов ан ии ключ а ком андн ой строки -q знач ен ие errorfile устанавл ив ается по его ар гумент у.errorformat (Слишк ом Описан ие формат а строк в формате scanf в файл е ошиб ок.(efm) длинн ое)expandtab (et) noexpandtab При вставк е таб ул яции она замен яется подх о дящим числ ом пробел ов.fileformat unix Опис ыв ае т соглаш ен ие, касающееся заверше(ff) ния строки в тек ущем буфере. Возможные значен ия: dos (CR/LF), unix (LF) и mac (CR). Обычн о Vim уст ан авливае т эту опцию автом а тич ески.fileformats dos,unix Список сог лашений по зав ершен ию строки,(ffs) которые Vim пыт ае тс я прим ен ить при чтен ии файла. Указан ие нес кольк их пунктов вклю чает авт ом атичес кое распознав ан ие конца строк и при чтен ии файл а.formatoptions Vim по умолча Последов ат ельность букв, определяющ ая, как(fo) нию: tcq; проделывается авт ом ат ич ес кое формат иров а vi по умолч а ние. За подробнос тями обратит есь к онл айн- справке. нию: vtgdefault (gd) nogdefault Команда зам ен ы меняе т все вхож ден ия.guifont (gfn) Спис ок шрифтов, разд ел енных запятым и, ко тор ые Vim пыт ается использовать при старте граф ич еской версии.hidden (hid) nohidden При выг рузке буфера из окна он не удаляется, а скрываетс я.history (hi) Vim по умолч а Определ яет, сколько команд, строк поиска нию: 20; и выр аж ений хран ится в истор ии команд. vi по умолч а нию: 0hlsearch nohlsearch Подсвечивает все вхождения самого последне-(hls) го шаблона поиска.icon noicon Vim пытаетс я смен ить имя значка, связ анно го с окн ом, в кот ором он зап ущ ен. Дейс тв ие этой опц ии отм ен яется опц ие й iconstring.iconstring Строк а, исп ользующ аяся в кач естве имени значка для окн а.include (inc) ^#\s*include Опр ед ел яет шаблон для поиск а команд inclu de. Значение по умолчанию подход ит для про грамм на C.incsearch (is) noincsearch Включ ает инкрем ентный поиск.
470 Приложение B Табл иц а B.4 (продолжение) Опц ия Значен ие Опис ание isfname (isf) @,48-57,/,.,-,_, Спис ок симв олов, кот ор ые можно включать +,,,$,:,~ в имя файла и путь к файл у. В не-UNIX-сис тем ах наб ор этих символ ов различ ае тс я. Знак @ отв ечает любому алфав итно-цифров о му символ у. Он также используется в друг их опц ия х isXXX, описанных ниж е. isident (isi) @,48-57,_,192-255 Список символов, кот ор ые можн о исп ольз о вать как идент иф ик атор ы. В не-UNIX-систе мах набор этих символ ов разл ич ается. iskeyword (isk) @,48-57,_,192-255 Список символ ов, кот ор ые можн о включать в ключевые слова. В не-UNIX-систем ах на бор этих символ ов разл ичается. Ключ евые слова исп ольз ую тс я при поиск е многим и ко мандами, таким и как w и [i. isprint (isp) @,161-255 Спис ок симв ол ов, непос редс твенно отобра жаем ых на экр ан е. В не-UNIX-систем ах на бор этих симв олов различ ается. makeef (mef) /tmp/vim##.err Имя файла ошиб ок для ком анд ы :make. В не- UNIX-системах набор этих символов разли чае тся. Знак и ## зам еняю тс я на число, что бы имя было уник альн ым. makeprg (mp) make Прог рамма, использ уемая ком андой :make. Символы % и # в значен ии пар аметра будут подс тавл яться. modifiable (ma) modifiable Если выключ ить эту опцию, то в буф ер е нель зя будет дел ать изм енения. mouse Включ ает мышь в нег рафичес ких версиях Vim. Раб от ает в MS-DOS, Win32, QNX pterm и xterm. За подробн остям и обрат итесь к он лайн-справк е. mousehide (mh) nomousehide Прячет указатель мыш и при наборе текс та и вновь показ ывает его при движ ен ии мыш и. paste nopaste Меняе т больш ое кол ичество опц ий так, что бы вставк а текста в окн о Vim при пом ощи мыши не иск ажал а вставл яем ый текст. Вы ключен ие восс тан авл ив ае т прошлые значе ния этих опций. За подр обнос тям и обр ати тесь к онлайн-справке. ruler (ru) noruler Пок азывает строку и столбец позиции кур сора. secure nosecure Выключ ае т команд ы определ енног о типа в старт ов ом файле. Включается автом атич е ски, есл и вы не явл яет есь владельцем фай лов .vimrc и .exrc.
Установка опций 471Опц ия Знач ен ие Описаниеshellpipe (sp) Строк а оболочк и, исп ольз уем ая для захвата вывода из :make в файл. Значение по умолч а нию зав ис ит от оболочк и.shellredir Строк а обол очк и, исп ользуем ая для захвата(srr) выв од а из фильтра во врем енн ый файл. Зна чен ие по умолчанию зав ис ит от обол очк и.showmode (smd) Vim по умолч а Помещ ает соо бщен ие в строк у сос тоян ия для нию: smd; реж имов вставк и и замещ ен ия, а также ви vi по умолча зуа льн ого реж им а. нию: nosmdsidescroll (ss) 0 Определ яет, скольк о столбц ов прок руч ива ется в гориз онтальн ом направлен ии. Нуле вое значение помещ ае т курс ор в середин у эк ран а.smartcase (scs) nosmartcase Переопр едел яет дейс тв ие опц ии ignorecase, есл и строк а пои ска содержит проп исные буквы.spell nospell Включ ае т пров ерку орф ог рафии.suffixes *.bak,~,.o,.h,. Если при завершении имени файл а шаблон у info,.swp удовлет вор яю т несколько файл ов, знач ение этой перем енн ой устан авл ивае т для них при орит ет, чтобы выб рать файл, кот ор ый буд ет исп ольз ов атьс я Vim.taglength (tl) 0 Опр едел яе т кол ич ес тво символов, значимых для тегов. Знач ение по умолчан ию (ноль) указ ыв ае т, что значим ы все символ ы.tagrelative Vim по умолч а Имена файл ов в файле tags расс матрив аю тся(tr) нию: tr; относ ит ельн о кат алога с этим файл ом. vi по умолч а нию: notrtags (tag) ./tags,tags Имен а файлов для ком анд ы :tag, разд елен ные проб елами или зап ятым и. Симв олы ./, стоящ ие в нач ал е, зам ен яю тс я на полн ый путь тек ущег о файл а.tildeop (top) notildeop Команда ~ раб отает как оператор.undolevels (ul) 1000 Максимальн ое кол ичеств о изменений, кот о рые можно отменить. Знач ение 0 уст ан авл и вае т совместимость с vi, при котор ом u отме няе т саму себя на перв ом уровне отм ены. Знач ен ия по умолч анию в не-UNIX-системах могут быть разным и.
472 Приложение B Опц ия Знач ение Табл ица B.4 (продолжение) viminfo (vi) Опис ание writebackup writebackup (wb) При старте считывае т файл viminfo, а при вых оде зап исыв ает в нег о. Опция имее т сложное знач ение: она конт ролир уе т инф ор мац ию разного род а, которую Vim хран ит в этом файле. За подробн остями обратит есь к онл айн-справк е. Созд ав ать резервн ую коп ию перед пер ез ап и сью файла. Коп ия удал яе тс я пос ле усп ешно го сохран ен ия файла, есл и только не вклю чен а опция backup.Опции vile 9.6 vile 9.6 содержит 167 опц ий (в этом ред акт ор е они назыв аю тс я «режим а ми»), которые подр азд еляются на универсальн ые (universal), буферн ые (buffer) и оконн ые (window) в зависимости от их использ ов ания. Такж е есть 101 пер ем енн ая окруж ен ия, которые более пригодн ы для прим ен е ния в скриптах, неж ели для непос редств енного изменения польз овате лем1. Не все опц ии доступн ы на всех платф ормах – некот ор ые прим ен я ютс я только в X11 или Win32. В табл. B.5 показаны сам ые важные опц ии vile, а такж е знач ения по умолч анию, зад аваем ые на этапе комп иляции. Скрипты иниц иал иза ции, так ие как vileinit.rc, переопр еделяю т нек от орые из этих значе ний. Большая часть опц ий описан а в табл. B.1 и здесь не пов торяе тся. Табл иц а B.5. Опции set для vile 9.6 Опц ия Знач ение Описан ие alt-tabpos (atp) noatp Опр еделяе т распол ож ен ие курс ор а на про animated animated бельн ом симв оле, представляющем табу ляцию (на правом или лев ом его конце). autobuffer (ab) autobuffer Авт ом ат ичес ки обновл яе т сод ержимое ра боч их буфер ов при их измен ении. Использ ует буфер ы «по врем ен и обраще ния». Буф еры отс орт ир ов аны в порядк е их исп ольз ов ан ия либ о ред актир ования. 1 Сюда вход ят переменн ые, которые уст анавливаются или использ ую тся в кач ес тв е побочн ог о эфф ект а от действия других ком анд. Поскольк у они орие нт ированы на скрипт ы, их опис ан ие очень гром оздк ое и тоже не подх о дит для этой таблицы. За подр обн ос тям и обр атит есь к онл айн-справк е.
Установка опций 473Опция Значение Описан иеautocolor (ac) 0 Автоматичес кая подсветка синт аксис а.autosave (as) Если стоит значен ие ноль, она отк лючен а. Иначе этой опц ии нужно прис вои ть неautosavecnt больш ое положит ельн ое число, опред е(ascnt) ляющ ее кол ичество милл ис екунд ожидаbackspacelimit ния в «интервале тиш ин ы» пер ед запуском(bl) autocolor-hook.backup-style noautosave Автом ат ич ес кое сох ранение файла. Заbcolor пись прои зв одитс я после ввода очередн ог оbyteorder-mark кол ичес тв а символ ов текс та, указ анног о(bom) в autosavecnt.check-modtime 256 Устан авл ивае т, сколько симв ол ов нужно ввес ти для выполн ен ия авт оматичес когоcindent сохранен ия.cindent-chars backspacelimit Если опция отключен а, вы может е пройти чер ез точк у нач ала ввода, нажимая Back space. off Опр ед еляет, как им образом создаю тс я ре зервные коп ии при сохранен ии файла. Возможн ые значения: off, .bak для рез ерв ных копий в стил е DOS и tilde для резерв ных коп ий в UNIX в стил е Emacs hello.c~. default Уст анавл ив ае т цвет фон а в тех системах, где это подд ерж ив аетс я. auto Управл яет проверкой преф икс а, исполь зуемого для распоз нав ан ия разл ичных ти пов кодировк и UTF. Значен ие по умолча нию auto предписывае т vile провер ить файл; конкретное знач ение предп исыв ает прог рамм е исп ользовать это значение. nocheck-modtime Выд ае т пред упреж д ение «file newer than buffer», если файл был изм ен ен с момент а пос ледн ег о чтен ия или записи, и просит ввес ти подт вержден ие. nocindent Включает отступ ы в стил е C, что пом ож ет при ввод е расс тавл ять отступ ы авт омати чески, как с autoindent. :#{}( )[] Спис ок симв ол ов, интерп ретируем ых в ре жиме cindent. Сюд а вход ят # для отс тупа до столбца 1 и : для бол ее далекого отс тупа, как после метк и. Пара симв олов, расп ол о женных в fence-pairs, привод ит к тому, что заключ енн ый в эту пар у текст пол учает до полнит ельн ый отс туп.
474 Приложение B Таблица B.5 (продолжение) Опция Значен ие Опис ан ие cmode color-scheme off Встрое нный основной реж им для код а на C. (cs) comment-prefix default Задае т именованн ый наб ор знач ений fcolor, bcolor, video-attrs и $palette, опр едел енн ый comments команд ой define-color-scheme. cursor-tokens ^\s*\(\(\s*[#*>] Опр едел яе т нач альные символ ы строк, кот о \)\|\(///*\)\)\+ рые ост анутся на месте при переф орм ат ир о dirc вании комм ент ариев. Значения по умолча dos нию хорошо подх од ят для комментариев в файлах Makefile, обол очке и в программах fcolor на C, а также в файл ах электронной почт ы. fence-begin fence-end ^\s*/\?\ Рег ул ярное выражен ие, опр ед еляющ ее раз fence-if (\s*[#*>/]\)\+/ граничит ел и зак оммент иров анных абзацев. fence-elif \?\s*$ Целью явл яется сох ранение абзацев внутри fence-else комм ент арие в при пер еф орм атиров ан ии. fence-fi fence-pairs regex Зад ае т способ вып олн ен ия ред актором vile анализа симв олов экрана для различных ко file-encoding манд: с пом ощ ью регул ярных выр ажений или по классам симв ол ов. Используе т пере числение: both, cclass и regex. nodirc При скан ир ов ании каталог ов для заверш ен ия имени файл а vile пров еряе т кажд ое встреч ен ное имя. Эта опц ия позвол яет разл ич ать в приглашении имен а файлов и каталог ов. nodos При счит ыв ании файлов удаляе т CR из пары CR/LF, а при запис и помещ ае т их обратн о. Но вые буферы для нес ущ ес тв ующих пок а фай лов нас ледуют тип конца строки из опер аци онн ой систем ы независим о от значен ия dos. default Уст анавл ив ает цвет шрифт а в сист ем ах, ко торые его поддерж иваю т. /\* Регул ярн ые выраж ен ия для начала и конца \*/ прос тых невложенных заг раж дающих мет ок (fences), наприм ер коммент арие в в C. ^\s*#\s*if Регул ярн ые выраж ения, отм еч ающ ие нач а ^\s*#\s*elif\> ло, «else if», «else» и кон ец строчных влож ен ных заграж дающ их мет ок (fences), так их как ^\s*#\s*else\> ком анд ы преп роцесс ор а C. ^\s*#\s*endif\> {}( )[] Каждая пара симв олов обоз начает набор за граж д ающих мет ок, соотв етств ующих друг друг у при вводе %. auto Определ яе т кодировку симв ол ов буф ера и прин им ает одн о из след ующих значений: 8bit, ascii, auto, utf-8, utf-16 или utf-32.
Установка опций 475Опц ия Значен ие Опис аниеfiltername (fn) Задае т фильтр для подс ветк и синтакс иса для данн ого осн овн ог о реж има.for-buffers (fb) mixed Опред еляе т, что именно исп ользуе тс я в коglob !echo %s мандах for-buffers и kill-buffer для выб ора имен и буф ер а: маск и (globbing) или регулярhighlight (hl) highlight ные выражения.history (hi) history Зад ае т, как обращатьс я с символ ами маски (наприм ер, * и ?) в приглашении имен и файhorizscroll (hs) horizscroll ла. Знач ение off выключает подстановку, а on включ ает внутр енн ий мех ан изм, подд ерж иignoresuffix \(\.orig\|~\)$ вающ ий обычн ые маск и обол очк и и ~. Значе(is) ние по умолчан ию в UNIX гар антир ует со вместим ость с вашей оболочк ой.linewrap (lw) nolinewrap Включ ае т или вык люч ае т подс ветк у синтакmaplonger nomaplonger сиса в соответс твующ их буф ерах.meta-insert- mib Сохраняет ком анды, введ енн ые в командн ойbindings (mib) строк е с двоет оч ием (мини-буф ере) в буф ер е [History].mini-hilite (mh) reverse Пер емещ ае т к концу длинн ой строк и и сме щает весь экран в сторону. Есл и опц ия не ус тановлен а, смещ ае тся тольк о тек ущ ая стро ка. Удал яе т данн ый шабл он из имен и файл а пе ред пои ском соо тв етствия для суфф иксов ос новн ого реж им а. Перен осит длинн ые строки на нескольк о эк ранных строк. Функц ия отображ ения выбир ает самую длинн ую отоб раж енн ую пос ледовательн ость, а не самую кор откую. Управляет пов ед ен ием 8-разр ядных симво лов во время вставки. Как правил о, привязк и клав иш работают тольк о в ком андном режи ме. В реж им е вставк и все симв ол ы вставл яют сам и себя. Есл и этот реж им включ ен и вво дится мет ас имвол (то есть симв ол с установ ленн ым восьм ым битом), привяз анный к функц ии, то предпочт ен ие буд ет отд ано этой функции, и она буд ет вызван а из режи ма вставк и. Все нес вязанн ые мет асимв ол ы будут по-прежнему вставл ять сами себя. Определяет атрибут подс ветки, кот орый ис польз уе тс я при переключен ии пользоват елем режим а редакт ир ования в мини-буф ер е.
476 Приложение B Табл иц а B.5 (продолжение) Опция Знач ен ие Описание modeline nomodeline modelines 5 Управл яет поддержкой строк и с инфор overlap-matches overlap-matches мац ие й о реж име (modeline) в стиле vi. percent-crlf 50 percent-utf8 90 Задает колич ес тво строк, кот ор ые будут скан ироватьс я в нач але и конце буфера popup-choices (pc) delayed в поисках строк и modeline в стиле vi. popup-msgs (pm) nopopup-msgs Мен яет подс ветк у, использ уем ую visual- recordseparator lfa matches для управления показом пере (rs) крывающихс я совпад ений. resolve-links noresolve-links Процентное соотнош ение для строк тип а ruler noruler CR/LF, чтобы vile авт оматич ески прео б раз ов ал буф ер recordseparator в crlf. Проц ентн ое соотношение для символ ов, сод ерж ащих встрое нные нули, что дел а ет их схож им и с символ ами в код ировке UTF-16 или UTF-32. Если опц ия file-enco ding уст ан овл ена в auto, а соотн ошен ие больше указанного, vile загрузит дан ные буф ер а как UTF-8. Управляет использов ание м всплыв аю щего окн а, помог ающ ег о при автоз ав ер шен ии. Значен ием может быть off, что бы окно не поя вл ялось, immediate для не медленн ог о появл ения либо delayed, что бы ожидал ось пов торн ое наж ат ие на Tab. Есл и эта опц ия включен а, vile выв одит буф ер [Messages], где пок азан текст, зап и санный в строк е сообщ ен ий. Опр еделяет форм ат файл ов, кот орые vile счит ыв ае т и запис ывает. Возможн ые форм ат ы: lf (для UNIX), crlf (для DOS), cr (для Macintosh) и default (lf или crlf, в завис им ос ти от платформ ы). Есл и опция устан овлена, то vile раскры вает имен а файл ов, компон ент ы пут ей которых явл яю тся символьными ссыл ками. Это помог ает изб еж ать мног ок рат ных прав ок одног о и того же файл а из-за разных пут ей к нем у. Отображае т номер тек ущ ей строки и столбц а в строке сос тояния, а такж е оп ределяе т, как ое процентное соотн ошение строк буфер а нах од ится выше курсор а. a Зав ис ит от платформ ы, на котор ой был скомпилиров ан vile.
Установка опций 477Опция Значение Описаниеshowchar (sc) noshowchar Показ ыв ает знач ение тек ущег о симв оshowformat (sf) foreign ла в строк е состояния.showmode (smd) showmode Зад ает спос об и врем я отоб раж ения ин форм ации о recordseparator в строк е соsideways 0 стояния. Значения опц ии: always, dif fers (пок азывать, когда лок альный реtabinsert (ti) tabinsert жим отл ич аетс я от глоб альн ог о), local (показыв ать всег да, когда зад ан лоtagignorecase notagignorecase кальный режим), foreign (пок азывать,(tc) 0 ког да recordseparator отл ичается от род ного) и never.taglength (tl) Отоб раж ае т в строке сос тоян ия индиtagrelative notagrelative кат ор, обоз нач ающий режим ы вставки(tr) и зам ены.tags tags Опр еделяе т, на сколько символов переtagword (tw) notagword мещае тся экран налево или направ о. При знач ен ии 0 экран будет пер еме щаться на одн у треть. Разр еш ае т физ ич ес кую вставк у таб уля ции в буфер. Есл и опцию отк люч ить (notabinsert), vile ник огда не будет это делать; вмес то таб уляц ии буд ет встав лятьс я подх од ящее число пробелов. Делае т поиск по тегам неч увс твит ель ным к регистру. Опр ед еляет кол ич ес тво символов, зна чимых для тег ов. Устан овк а по умолча нию, равн ая нулю, показ ывае т, что все симв ол ы являю тся значим ыми. Это не распрос траняется на тег и, стоящие под курс ор ом. Для них всег да вып олняется точн ое соотв етствие. (Так ое пов еден ие отличаетс я от друг их ред акт ор ов.) При использ ован ии файл а tags из дру гого каталог а имена файл ов из этого файл а считаютс я относ ит ельн о катал о га, где расп ол аг ае тс я файл tags. Список файл ов, разд ел енн ых зап ят ы ми, в кот орых нужно искать теги. Исп ользов ать все слова под курс ором в кач ес тв е пои ска тега, а не тольк о ту его часть, кот ор ая нач ин ае тс я с пози ции курс ора.
478 Приложение B Таблица B.5 (продолжение) Опция Знач ен ие Опис ан ие undolimit (ul) 10 Ограничив ае т колич еств о возм ожн ых отмен. Значен ие ноль показывае т от сутствие предел а. unicode-as-hex nounicode-as-hex При отоб ражении буфер а, кодир овка (uh) файл а которог о явл яетс я одн ой из раз нов иднос тей Unicode (нап ример, utf-8, utf-16 или utf-32), не-ASCII симв ол ы по казыв аю тс я в формат е \uXXXX, даже ес ли дисплей мож ет пок аз ать их как обычн ые символы. unprintable- nounprintableas-octal Отоб ражае т непеч атаем ые симв ол ы asoctal (uo) с установленн ым восьм ым битом в вось мер ичн ом вид е. Есл и опц ия не установ лен а, они выводятся в шестн адцате ричн ом формат е. Неп еч атаемые симв о лы с неуст ановл енным восьм ым битом показываю тс я в нот ации управляю щих симв олов. visual-matches none Управл яет подсветкой всех соо тв етс т вий шабл он а поиск а. Возм ожные значе ния: при none подс ветк и нет, а underline, bold и reverse исп ользую тс я для соо т ветств ующ их тип ов подс ветки (подч ер кивание, пол уж ирный и инв ерсия цве та). Такж е можн о исп ользов ать цвет а, если систем а это поддержив ае т. xterm-fkeys noxterm-fkeys Поддержка мод ифиц иров анных функ цион альных клав иш xterm пут ем гене рации системн ых прив язок к Shift-, Ctrl- и Alt- для каждой функц иональ ной клавиш и, предс тавл енной в опис а нии термин ал а. xterm-mouse noxterm-mouse Разрешает использов ан ие мыши из xterm. За подробн остями обрат итесь к онлайн-справке. xterm-title noxterm-title Разрешает обновлен ие заголовка, есл и вы раб отает е из xterm. Всякий раз при перек лючен ии в друг ой буфер vile мо жет обн овлять загол овок. Использ ует пров ерк у пер еменн ой TERM, эквивал ент ную реж иму xtermmouse.
C Возможные проблемы Глава C.В этом прил ож ении соб р ан ы возм ожные проблемы, опис ыв авшиесяв части I. Здесь же они свед ены в одн ом месте в виде справ очн ик а.Проблемы при открытии файлов• При зап уске vi поя вляе тся сообщ ение [open mode] Возм ожн о, неправильно распоз нае тся тип вашего терм ин ал а. Вый дит е из сеа нс а редакт ир ования с пом ощью команды :q и пров ерьте перем енную окруж ен ия TERM. Ей нужно задать имя ваш его термин а ла. Такж е вы может е спросить правильн ое значен ие тип а терм ин ал а у свое го системног о адм ин ис тр ат ора.• Поя вляется одно из следующих соо бщен ий: Visual needs addressable cursor or upline capability Bad termcap entry Termcap entry too long terminal: Unknown terminal type Block device required Not a typewriter Либо тип ваш его термин ал а не опознан, либ о что-то не так с terminfo или termcap. Введ ит е :q для вых ода и пров ерьт е пер ем енную окруж е ния $TERM либо попросите системн ог о админ ис трат ор а выб рать тип терм ин ала для ваш ег о окр уж ения.• Поя вл яе тся соо бщен ие [new file], ког да вы увер ен ы, что файл сущ е ствуе т. Пров ерьт е правильн ость использов ан ия регистр а симв ол ов в имени файл а (имен а файл ов в UNIX чувс тв ит ельны к регистр у). Если все прав ильн о, то, возможно, вы наход итесь в другом катал оге. Введ ит е
480 Приложение C :q для выхода, после чего пров ерьте, нах од итесь ли вы в одном кат а логе с файлом (наб ер ит е pwd в командной строке UNIX). Есл и да, то выв едит е список сод ержащ ихся в нем файлов (с пом ощью ls) и про верьт е, может файл сущ ес тв уе т под нем ного отл ич ающимс я имен ем. • Вы зап устили vi, но попал и в приг лашение с двоет оч ие м (это гов о рит о том, что вы наход ит есь режиме строк ов ого редакт ора ex). Возможн о, было введ ен о прер ывание перед тем, как vi усп ел нарис о вать экран. Войдите в vi, введя vi в приглашении ex (:). • Возникае т одно из след ующ их соо бщ ен ий: [Read only] File is read only Permission denied «Read only» озн ачает, что разреш ено тольк о прос матр ив ать файл, а сдел анн ые изм енен ия не сохраняю тся. Возм ожн о, вы запуст ил и vi в реж им е просмотра (либо чер ез view, либ о как vi -R) или же у вас от сутств уют прав а на запись этого файл а. Обр атитесь к разд елу «Про блемы при сохран ении файл ов» ниже. • Возн икае т одно из след ующ их сообщ ений: Bad file number Block special file Character special file Directory Executable Non-ascii file file non-ASCII Файл, котор ый вы хот ите отред актиров ать, не является текс тов ым. Введ ит е :q! для выход а и пров ерьт е его, нап рим ер, команд ой file. • При ввод е :q по одн ой из выш ен азванн ых причин появл яе тс я сооб щен ие: No write since last change (:quit! overrides). Вы нен арок ом внес ли изм енение в файл. Для вых ода из vi введит е :q!. В этом случае измен ения, сделанн ые во врем я сеа нс а, не будут сохранен ы.Проблемы при сохранении файлов • Вы пытаетесь записать файл, но пол уч аете одно из следующих со общ ений: File exists File file exists - use w! [Existing file] File is read only
Search
Read the Text Version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 1 - 50
- 51 - 100
- 101 - 150
- 151 - 200
- 201 - 250
- 251 - 300
- 301 - 350
- 351 - 400
- 401 - 450
- 451 - 500
- 501 - 512
Pages: