FSPEC(4)
НАЗВАНИЕ
fspec - спецификация формата текстового файла
ОПИСАНИЕ
Иногда бывает удобно хранить текстовые файлы ОС UNIX с
нестандартной табуляцией (то есть табуляцией, не устанавливающей курсор в каждой восьмой позиции). Вообще
говоря, такие файлы перед обработкой командами ОС должны быть преобразованы в стандартный формат, часто с заменой символов табуляции соответствующим количеством
пробелов. Спецификация формата, встретившаяся в первой
строке текстового файла, задает табуляцию в оставшейся
части файла.
Спецификация формата представляет собой последовательность параметров, разделенных пробелами, заключенную в
специальные скобки <: и :>. Каждый параметр состоит из
ключевой буквы, сразу за которой может следовать число.
Распознаются следующие параметры:
- tразметка
- Задание табуляции в файле. Значением разметки может быть:
- Список номеров позиций, разделенных запятыми.
- Символ -, за которым следует целое число n, задающее интервал табуляции.
- Символ -, за которым следует имя одного из фиксированных способов табуляции.
Стандартная табуляция задается как t-8 или
t1,9,17,25, и т.д. Имена фиксированных способов
табуляции перечислены в команде tabs(1).
- sразмер
- Задание максимальной длины строки. Значение размера должно быть целым. Проверка длины строки выполняется после расстановки табуляций, но до установки полей.
- mполе
- Задание количества пробелов (полей) в начале и в
конце каждой строки. Значение поле должно быть целым.
- d
- Строка, содержащая спецификацию формата, должна
быть удалена из преобразованного файла.
- е
- Текущий формат преобразования действует лишь до
тех пор, пока в файле не встретится другая спецификация формата.
Значения параметров по умолчанию - t-8 и m0. Если не
задан параметр s, проверка длины строк не производится.
Если первая строка файла не содержит спецификации формата, действуют значения по умолчанию. Пример строки,
содержащей спецификацию формата:
*<:t5,10,15 s72:>*
Если спецификация формата выглядит как комментарий, то
параметр d задавать не обязательно.
СМ. ТАКЖЕ
ed(1), newform(1), tabs(1) в Справочнике пользователя.