ЛитВек: бестселлеры недели
Бестселлер - Элияху Моше Голдратт - Цель-2. Дело не в везении  - читать в ЛитвекБестселлер - Дэниел Гоулман - Эмоциональный интеллект - читать в ЛитвекБестселлер - Джейн Энн Кренц - Разозленные - читать в ЛитвекБестселлер - Михаил Юрьевич Елизаров - Библиотекарь - читать в ЛитвекБестселлер - Владимир Владимирович Познер - Прощание с иллюзиями - читать в ЛитвекБестселлер - Борис Акунин - Аристономия - читать в ЛитвекБестселлер - Бенджамин Грэхем - Разумный инвестор  - читать в ЛитвекБестселлер - Евгений Германович Водолазкин - Лавр - читать в Литвек
Литвек - электронная библиотека >> Иван Георгиевич Титаренко >> Графика. Дизайн. Мультимедиа >> Руководство пользователя GNU troff

Титаренко Иван Георгиевич (перевод) Руководство пользователя GNU troff

Оглавление.


1. Текстовой процессор GNU troff

2. История troff

3. Основные возможности

4. Командная строка

5. Опции командной строки

6. Вывод на устройство

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

8. Каталоги макросов

9. Каталоги шрифтов

10. Страница, размер страницы

11. Примеры работы CLI

12. Утилита grod

13. Основные объекты gtroff

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. Режимы troff и nroff

45. Размещение строк

46. Контроль строк

47. Макеты страниц

48. Контроль страницы

49. Строковые переменные

50. Операторы if, ie, while

51. Конструкция if‐else

52. Цикл while

53. Добавление файлов

54. Доступ к постпроцессорам

55. Дополнительные команды

56. Внутренние преобразования gtroff

57. Отладка

58. Предупреждения и ошибки

59. Особенности программы troff

60. Препроцессоры

61. Постпроцессор grotty

62. Постпроцессор grops

63. Встроенный POSTSCRIPT

64. Постпроцессор gropdf

65. Команды PDF

66. Постпроцессор grodvi

67. Постпроцессор grolj4

68. Постпроцессор grolbp

69. Постпроцессор grohtml

70. Специальные регистры и строки grohtml

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. Файл описания устройств DESC

108. Файл описания шрифта

109. Перемещение по странице

110. Геометрические фигуры

111. Настройки цвета

Текстовой процессор GNU troff

GNU troff («groff») — текстовой процессор, система набора документов. Программный пакет troff очень гибкий, легко настраивается и широко применяется уже около тридцати лет. Это авторитетный, известный программный пакет форматирования текстов в сообществе Unix.

Программа «groff» принадлежит к старшему поколению систем подготовки документов: такие системы похожи на компиляторы языков программирования. «Groff» и его современный аналог «TeX» форматируют текст в «пакетной» парадигме: входные (исходные) файлы представляют текстовые файлы со встроенными командами форматирования.

«Groff» не следует путать с «текстовыми процессорами», созданными в парадигме WYSIWYG.

Хотя системы WYSIWYG проще в использовании, но у них есть ряд недостатков по сравнению с troff, например, они требуют графического монитора и не очень хорошо справляются с огромными массивами текстовых файлов.

История troff

Происхождение troff можно проследить до программы форматирования RUNOFF, написанной Джерри Зальцером. Программа применялась в проекте CTSS (Compatible Time Sharing System, проект Массачусетского технологического института) в середине шестидесятых годов. Очевидно, название произошло от фразы «run off a document».

Боб Моррис портировал программу на архитектуру 635 и назвал «roff». Затем программу переписали с именем «rf» для PDP‐7 (до Unix), и в 1969 году Дуг Макилрой создал расширенную и упрощенную версию roff на языке программирования BCPL.

В 1971 году разработчики Unix решили закупить компьютеры PDP‐11 и, чтобы оправдать вложения, предложили внедрить систему форматирования документов для патентного отдела AT&T. Первая программа форматирования была повторной реализацией roff Макилроя, ее автором стал Дж. Ф. Оссанна.

Когда понадобился более гибкий язык, была написана новая версия roff под названием «nroff». Программа имела сложный синтаксис, но послужила основой для всех будущих версий.

Для фотонаборной машины CAT от Graphic Systems Оссанна написал собственную версию nroff. Ее назвали «troff».

Фактически это была одна и та же программа, за некоторыми исключениями: nroff предназначалась для вывода на построчные принтеры и символьные терминалы.

Позднее началась работа над препроцессорами. Программы транслировали определенные части документа в troff, очень естественно применяя конвейеры Unix.

Так, препроцессор «eqn» позволял описывать математические формулы простым, интуитивно понятным способом, а «tbl» форматировал таблицы. Препроцессор «refer» (и аналогичная программа «bib») обрабатывал цитаты в документе с помощью библиографической базы данных.

К сожалению, программа troff Оссанны была написана на языке ассемблера PDP‐11, она специально создавалась для фотонаборной машины CAT. Оссанна переписал программу на C, хотя теперь она состояла из 7000 строк кода без комментариев и все еще зависела от CAT. Поскольку машины CAT больше не поддерживались производителем, потребовались правки кода. Прежде чем это удалось сделать, Оссанна умер от сердечного приступа в больнице.

Тогда же Брайан Керниган взял на себя задачу переписать troff. Его версия создавала независимый от устройства код, постпроцессоры читали и транслировали его в соответствующие команды принтеров. Кроме того, новая версия troff (названная ditroff) имела несколько расширений.

Благодаря дополнительным возможностям появились наборы препроцессоров. Препроцессор «pic» обеспечивал функции рисования, а