Texinfo

Поделись знанием:
(перенаправлено с «GNU Texinfo»)
Перейти к: навигация, поиск
Texinfo
Тип

Система документирования

Операционная система

GNU

Лицензия

GPLv3

Сайт

[www.gnu.org/software/texinfo .org/software/texinfo]

К:Википедия:Статьи без изображений (тип: не указан)

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





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

Исходные файлы 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-источниками [2] в плане удобства восприятия информации. В дистрибутив Texinfo поэтому не входит утилит для создания man-страниц из файлов Texinfo. Предлагается использовать утилиту help2man[3] для автогенерации страниц man.

Проекты, использующие Texinfo

Texinfo широко применяется для документирования программ GNU. В их числе GCC и GDB, GNU libc, GNU Emacs (включая Gnus), Bash, GNU Octave, Autotools, Guile, GRUB.

См. также

Напишите отзыв о статье "Texinfo"

Ссылки

  • [www.gnu.org/software/texinfo Домашняя страница Texinfo]

Примечания

  1. "The first syllable of «Texinfo» is pronounced like «speck», not «hex»" — из руководства по Texinfo
  2. «…generating a good man page requires a completely different source than the typical Texinfo applications…» — из руководства по Texinfo
  3. [www.gnu.org/software/help2man Домашняя страница help2man]

Отрывок, характеризующий Texinfo

Отец мне ничего не говорил о женихе, но сказал только, что получил письмо и ждет посещения князя Василия; что касается до плана супружества относительно меня, я вам скажу, милый и бесценный друг, что брак, по моему, есть божественное установление, которому нужно подчиняться. Как бы то ни было тяжело для меня, но если Всемогущему угодно будет наложить на меня обязанности супруги и матери, я буду стараться исполнять их так верно, как могу, не заботясь об изучении своих чувств в отношении того, кого Он мне даст супругом.
Я получила письмо от брата, который мне объявляет о своем приезде с женой в Лысые Горы. Радость эта будет непродолжительна, так как он оставляет нас для того, чтобы принять участие в этой войне, в которую мы втянуты Бог знает как и зачем. Не только у вас, в центре дел и света, но и здесь, среди этих полевых работ и этой тишины, какую горожане обыкновенно представляют себе в деревне, отголоски войны слышны и дают себя тяжело чувствовать. Отец мой только и говорит, что о походах и переходах, в чем я ничего не понимаю, и третьего дня, делая мою обычную прогулку по улице деревни, я видела раздирающую душу сцену.
Это была партия рекрут, набранных у нас и посылаемых в армию. Надо было видеть состояние, в котором находились матери, жены и дети тех, которые уходили, и слышать рыдания тех и других. Подумаешь, что человечество забыло законы своего Божественного Спасителя, учившего нас любви и прощению обид, и что оно полагает главное достоинство свое в искусстве убивать друг друга.
Прощайте, милый и добрый друг. Да сохранит вас наш Божественный Спаситель и его Пресвятая Матерь под Своим святым и могущественным покровом. Мария.]
– Ah, vous expediez le courier, princesse, moi j'ai deja expedie le mien. J'ai ecris а ma pauvre mere, [А, вы отправляете письмо, я уж отправила свое. Я писала моей бедной матери,] – заговорила быстро приятным, сочным голоском улыбающаяся m lle Bourienne, картавя на р и внося с собой в сосредоточенную, грустную и пасмурную атмосферу княжны Марьи совсем другой, легкомысленно веселый и самодовольный мир.
– Princesse, il faut que je vous previenne, – прибавила она, понижая голос, – le prince a eu une altercation, – altercation, – сказала она, особенно грассируя и с удовольствием слушая себя, – une altercation avec Michel Ivanoff. Il est de tres mauvaise humeur, tres morose. Soyez prevenue, vous savez… [Надо предупредить вас, княжна, что князь разбранился с Михайлом Иванычем. Он очень не в духе, такой угрюмый. Предупреждаю вас, знаете…]
– Ah l chere amie, – отвечала княжна Марья, – je vous ai prie de ne jamais me prevenir de l'humeur dans laquelle se trouve mon pere. Je ne me permets pas de le juger, et je ne voudrais pas que les autres le fassent. [Ах, милый друг мой! Я просила вас никогда не говорить мне, в каком расположении духа батюшка. Я не позволю себе судить его и не желала бы, чтоб и другие судили.]
Княжна взглянула на часы и, заметив, что она уже пять минут пропустила то время, которое должна была употреблять для игры на клавикордах, с испуганным видом пошла в диванную. Между 12 и 2 часами, сообразно с заведенным порядком дня, князь отдыхал, а княжна играла на клавикордах.