Texinfo
Texinfo (рус. Текинфо[2]) — свободная система документирования и язык разметки, позволяющие создавать документы в разных форматах из одного исходного текста. Texinfo — часть проекта GNU.
Texinfo | |
---|---|
Тип | Система документирования |
Разработчик | Ричард Столлман |
Написана на | Си |
Операционная система | GNU |
Первый выпуск | февраль 1986 |
Последняя версия | |
Читаемые форматы файлов | Texinfo source[d] |
Лицензия | GPLv3 |
Сайт | gnu.org/software/texinfo |
Медиафайлы на Викискладе |
Описание системыПравить
Исходные файлы Texinfo-документов представляют собой простой текст, размеченный при помощи специальных команд, начинающихся со знака @
(например, @contents
или @titlepage
). Файлы Texinfo обычно имеют расширение .texi
, реже .txi
.
При помощи утилит makeinfo
, texi2dvi
и texi2pdf
, входящих в Texinfo, из исходных файлов генерируется документация в форматах:
- info, гипертекстовый формат структурированных документов
- HTML
- DVI
- DocBook
- XML; XML-вывод
makeinfo
практически никак не изменяет представление документа, лишь перенося разметку Texinfo в термины XML - простой текст
Texinfo использует TeX для генерации печатных форматов файлов, преобразовывая @
-команды Texinfo в управляющие структуры TeX.
Язык TexinfoПравить
В состав языка разметки Texinfo входят команды логического структурирования и выделения текста, создания оглавлений, ссылок, предметного указателя, вставки таблиц. Поскольку Texinfo позволяет получать документацию в разных форматах, есть команды условного включения текста для каждого из выходных форматов.
Пример документаПравить
Вот небольшой документ, размеченный при помощи Texinfo.
\input texinfo @setfilename test.info @documentencoding UTF-8 @settitle Foo Compiler @copying Copyright © 2007 Hacker Publishing @end copying @titlepage @title Foo Compiler @subtitle «A new word in compiler development» @author J. Random Hacker @vskip 0pt plus 1filll @insertcopying @end titlepage @headings off @contents @ifnottex @node Top @top Foo Compiler @insertcopying @end ifnottex @menu * Introduction:: * Second Chapter:: @end menu @node Introduction @chapter How it all began @cindex intro This is an introductionary chapter. @node Second Chapter @chapter Second Chapter This is Texinfo sample document. @node Concept Index @unnumbered Concept Index @printindex cp @bye
Страницы man и TexinfoПравить
Texinfo провозглашается как система для создания больших, развёрнутых руководств (например, документирования библиотек), в то время как традиционная область использования man-страниц — компактные справочные документы. В руководстве по Texinfo утверждается, что формат man несопоставим с крупными Texinfo-источниками [3] в плане удобства восприятия информации. В дистрибутив Texinfo поэтому не входит утилит для создания man-страниц из файлов Texinfo. Предлагается использовать утилиту help2man[4] для автогенерации страниц man.
Проекты, использующие TexinfoПравить
Texinfo широко применяется для документирования программ GNU. В их числе GCC и GDB, GNU libc, GNU Emacs (включая Gnus), Bash, GNU Octave, Autotools, Guile, GRUB.
См. такжеПравить
СсылкиПравить
ПримечанияПравить
- ↑ Smith G. Texinfo 7.0.2 released (англ.) — 2023.
- ↑ "The first syllable of «Texinfo» is pronounced like «speck», not «hex»" — из руководства по Texinfo
- ↑ «…generating a good man page requires a completely different source than the typical Texinfo applications…» — из руководства по Texinfo
- ↑ Домашняя страница help2man (неопр.). Дата обращения: 19 августа 2007. Архивировано 21 августа 2007 года.