TABS(1) TABS(1) НАЗВАНИЕ tabs - установка позиций табуляции СИНТАКСИС |tabs [разметка] [-Tтип_терминала] [+mкол] ОПИСАНИЕ Посредством команды tabs устанавливают позиции табуля- ции пользовательского терминала в соответствии с задан- ной разметкой. Предыдущие установки отменяются. Терми- нал должен допускать переустановку позиций табуляции. Аргументы команды tabs имеют следующий смысл: разметка Для аргумента разметка допустимы четыре типа спе- цификаций, описанных ниже: именованная (-имя), ре- гулярная (-n), произвольная (n1,n2,...) и файловая (--файл). Если разметка не задана, то по умолчанию применяется значение -8 - "стандарт" табуляций системы UNIX. Номер самой левой колонки равен 1. Заметим, что для программы tabs колонка 1 всегда является самой левой колонкой терминала, даже если у терминала они нумеруются с 0, как например на DASI 300, DASI 300s и DASI 450. -имя Для выбора именованной разметки используйте од- но из приведенных ниже имен: -a 1,10,16,36,72 Ассемблер, IBM S/370, первый формат. -a2 1,10,16,40,72 Ассемблер, IBM S/370, второй формат. -c 1,8,12,16,20,55 Кобол, обычный формат. -c2 1,6,10,14,49 Кобол, первый компактный формат. -c3 1,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62,67 Кобол, второй компактный формат. -f 1,7,11,15,19,23 Фортран. -p 1,5,9,13,17,21,25,29,33,37,41,45,49,53,57, 61 ПЛ/1. -s 1,10,55 Снобол. -u 1,12,20,44 Ассемблер, UNIVAC 1100. -n При регулярной разметке позиции табуляции уста- навливаются в колонках 1+n, 1+2*n и т.д. Особое значение имеет разметка -8: для системы UNIX она является стандартной. Другим специальным случаем является значение -0, что означает пол- ное отсутствие табуляций. n1,n2,... При произвольной разметке через запятую задает- ся возрастающая последовательность чисел не бо- лее чем из 40 элементов. Если перед любым чис- лом (кроме первого) стоит знак плюс, то это число интерпретируется как смещение, прибавляе- мое к предыдущей величине. Таким образом, раз- метки 1,10,20,30 и 1,10,+10,+10 считаются оди- наковыми. --файл Если указан файл, то команда tabs в поисках спецификации формата просматривает первую стро- ку файла [см. fspec(4)]. Если спецификация най- дена, то позиции табуляции устанавливаются в соответствии с ней, в противном случае применя- ется регулярная разметка -8. -Tтип_терминала Команде tabs нужно знать тип терминала для уста- новки позиций табуляции и сдвиге границы. Тип_тер- минала - это имя из списка term(5). Если данная опция не употребляется, то tabs использует значе- ние переменной окружения TERM. Если переменная TERM не определена в окружении [см. environ(5)], то применяется последовательность команд, работаю щая для многих терминалов. +mкол Для некоторых терминалов можно задать левую гра ницу табуляции. При этом колонка кол+1 становится левой границей, а все позиции табуляции сдвигают ся на кол вправо. Если +m использован без величи- ны кол, то подразумевается значение 10. Нормаль- ную (самую левую) границу на большинстве типов терминалов можно получить с помощью +m0. Граница в большинстве случаев переустанавливается только при явном задании опции +m. Если опции -T и +m встречаются в командной строке нес колько раз, используется последнее вхождение. Управляющие символы для установки позиций табуляции и сдвига границы выдаются на стандартный вывод. СМ. ТАКЖЕ newform(1), tput(1). fspec(4), terminfo(4) environ(4), term(5) в Справочнике программиста. ДИАГНОСТИКА illegal tabs При произвольной разметке нарушена упорядоченность позиций табуляции. illegal increment При произвольной разметке задано нулевое или отр цательное смещение. unknown tab code Неизвестное имя разметки. can't open Не удается открыть файл со спецификацией формата. file indirection Спецификация формата, хранящаяся в файле, содержит ссылку на другой файл. ПРИМЕЧАНИЯ Среди различных типов терминалов нет единообразия в способах отмены табуляции и установки левой границы. Команда tabs очищает не более 20 позиций табуляции (на терминалах, использующих длинные последовательности ко- манд), но может установить 64. ПРЕДОСТЕРЕЖЕНИЯ Используемая в команде tabs разметка отличается от спе- цификаций команды newform(1). Например, tabs -8 уста- навливает позиции табуляций через 8 колонок, тогда как newform -i-8 означает, что табуляции установлены в каж- дую восьмую позицию. СЮРПРИЗЫ Следует иметь в виду, что на некоторых типах терминалов установка позиций табуляции может иметь побочный эф- фект, например сдвиг левой границы.