Next: 7.9 pr - печать
Up: 7. Программы преобразования и
Previous: 7.7 Поиск в файле
Программа fmt
вводит текст, производит простое форматирование, которое в основном
заключается в наиболее полном заполнении строк.
Использование программ:
fmt [option]... [file]...
Программа читает текст либо из файла, либо со стандартного устройства
ввода, а выводит сформированный текст на стндартное устройство вывода.
По умолчанию, пустые строки, пробелы между словами и пустые места в начале
строк сохраняются и на выводе. Вводимые строки с пробелами в начале строк
не объединяются. Знаки табуляции TAB расширяются обычным образом при вводе
и используются затем при выводе.
Программа fmt предпочитает разбивать строки в конце предложения. Она
пытается избежать разрыва строки после первого слова предложения и перед
последним словом предложения. Конец предложения определяется как одно из
двух наступивших условий:
- дистигнут конец параграфа, т.е. встречена пустая строка или занк NL;
- слово закончилось одним из знаков: .?! - точка, воросительный
знак, восклицательный знак, за которыми следует два пробела или конец
строки. Алгоритм разбиения параграфа на строки является вариантом
алгоритма описанного в статье Breaking Paragraphs Into Lines
(авторы: Donald E. Knuth and Michael F. Plass, журнал Software-Practice and Experience, 11 (1981), 1119-1184).
Программа воспринимает следующие параметры:
- -c
- -crown-margin
- Сохранить без изменения сдвиги первых двух строк параграфов и выровнять
левый край всех последующих строк параграфа по левому краю второй строки
параграфа.
- -t
- -tagged-paragraph
- Этим параметорм устанвливается режим форматирования tagged-paragraph. Этот режим похож на режим crown-margin исключая
то, что если сдвиг первой строки параграфов тот же самый, что сдвиг второй
строки параграфа, то первая строка обарбатывается как однострочный
параграф.
- -s
- -split-only
- Только разделять строки.
Не═объединять короткие строки, чтобы сформировать более длинные.
- -u
- -uniform-spacing
- Унифицировать пробелы.
Уменьшить число пробелов между словами до одного пробела, а число пробелов
между предложениями именьшить до двух пробелов.
- -width
- -w width
- -width=width
- Заполнить выводные строки до ширины width (умолчание 75).
- -p prefix
- -prefix=prefix
- Форматированию будут подвергнуты только строки,
которым предшествует prefix (перед ним могут быть пробелы). Сам prefix и взможно предшествующие ему пробелы будут удалены из строки перед
форматированием. После выполнения форматирования, при выводе результата в
начало сформатированных строк будет помещ©н prefix.
Одно из полезных применений данного параметра - форматирование
программных комментариев. Следует лишь иметь в виду, что если вы
планируете отформатировать комментарии скриптов, то знак комментария
полезно задать в кавычках, например,
fmt -p "#" script
Next: 7.9 pr - печать
Up: 7. Программы преобразования и
Previous: 7.7 Поиск в файле
Andrei Chevel
Andrei.Chevel@pnpi.spb.ru