Texinfo

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Версия для печати больше не поддерживается и может содержать ошибки обработки. Обновите закладки браузера и используйте вместо этого функцию печати браузера по умолчанию.
Texinfo
Скриншот программы Texinfo
Тип Система документирования
Разработчик Ричард Столлман
Написана на Си
Операционная система GNU
Первый выпуск февраль 1986
Последняя версия
Репозиторий git.savannah.gnu.org/cgi…
Лицензия GPLv3
Сайт gnu.org/software/texinfo
Логотип Викисклада Медиафайлы на Викискладе

Texinfo (рус. Текинфо[2]) — свободная система документирования и язык разметки, позволяющие создавать документы в разных форматах из одного исходного текста. Texinfo — часть проекта GNU.

Описание системы

Пример документа, подготовленного при помощи Texinfo.

Исходные файлы Texinfo-документов представляют собой простой текст, размеченный при помощи специальных команд, начинающихся со знака @ (например, @contents или @titlepage). Файлы Texinfo обычно имеют расширение .texi, реже .txi.

При помощи утилит makeinfo, texi2dvi и texi2pdf, входящих в Texinfo, из исходных файлов генерируется документация в форматах:

  • info, гипертекстовый формат структурированных документов
  • HTML
  • PDF
  • 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.

См. также

Ссылки

Примечания

  1. Smith G. Texinfo 7.1.1 released — 2024.
  2. "The first syllable of «Texinfo» is pronounced like «speck», not «hex»" — из руководства по Texinfo
  3. «…generating a good man page requires a completely different source than the typical Texinfo applications…» — из руководства по Texinfo
  4. Домашняя страница help2man. Дата обращения: 19 августа 2007. Архивировано 21 августа 2007 года.