Texinfo

Texinfo
원저자리처드 스톨먼
로버트 채셀
개발자브라이언 폭스
칼 베리
개빈 스미스
발표일1986년 2월
안정화 버전
7.3 위키데이터에서 편집하기 / 2026년 3월 2일
저장소
프로그래밍 언어C, Perl
운영 체제리눅스, BSD
종류문서화
라이선스GPL-3.0-or-later
웹사이트www.gnu.org/s/texinfo

Texinfo는 온라인 및 인쇄물 형태(단일 소스 파일로부터 dvi, html, pdf 등과 특정 하이퍼텍스트 형식인 Info 파일 유형을 생성)의 문서를 생성하기 위해 사용하는 조판 문법이다. 이는 GNU 프로젝트가 자유 소프트웨어 재단을 통해 제공하는 같은 이름의 자유 소프트웨어로 배포된 컴퓨터 프로그램에 의해 구현된다.

Texinfo의 주된 목적은 소프트웨어 매뉴얼을 쉽게 조판할 수 있는 방법을 제공하는 것이다. LaTeX 문법과 유사하게, 장, 절, 상호 참조, 표, 색인 등 책의 일반적인 모든 기능을 문서에서 사용할 수 있다. Texinfo에서 사용 가능한 다양한 출력 생성기를 사용하면 단일 소스 파일만으로 여러 문서 유형(웹사이트를 통해 제공되는 온라인 문서나 TeX 조판 시스템을 사용하여 생성된 인쇄 문서 등)을 최신 상태로 유지할 수 있다.

공식 Texinfo 문서에 따르면 "Texinfo"의 첫 음절은 "hex"가 아니라 "speck"과 운이 맞도록 발음한다. 이러한 발음은 TeX의 발음에서 유래했는데, 여기서 X는 영어 알파벳 'x'가 아니라 그리스어 문자 chi를 나타낸다. 관리자들은 "Texinfo"를 쓸 때 "T"만 대문자로 쓰고 나머지는 소문자로 적어야 한다고 명시한다.

출력 형식

원본 Texinfo (.texi) 소스 파일을 변경할 때 여러 문서 출력 형식을 한꺼번에 업데이트할 수 있도록, Texinfo 파일을 다른 형식으로 번역하는 데 사용할 수 있는 여러 문법 변환기가 제공된다. 이들 대부분은 GNU Texinfo 배포판에 포함된 texi2any 프로그램(다른 이름으로 makeinfo라고도 함)을 사용하여 생성된다.

HTML
(texi2any --html를 통해 생성.) HTML은 월드 와이드 웹에서 표현되는 문서의 표준 언어이므로, 이 출력 형식은 온라인 문서 페이지를 제작하는 데 효과적으로 사용될 수 있다. 매뉴얼에서는 texi2any의 출력이 최대의 이식성과 접근성을 위해 의도적으로 매우 단순하게 구성되어 있다고 언급한다. texi2any HTML 출력은 고도로 사용자 지정이 가능하다.
DVI
(texi2dvi를 통해 생성.) 장치 독립 파일 포맷은 TeX 조판 시스템에 의해 출력되며, 보거나 인쇄할 수 있는 장치별 명령을 생성하는 데 사용할 수 있다. 예를 들어 포스트스크립트(ps 파일)로의 변환이 있다.
PDF
(texi2dvi --pdf 또는 texi2pdf를 통해 생성.) 포스트스크립트 언어에 기반을 둔 이 형식은 어도비 시스템즈가 휴대용 문서 교환을 위해 개발했다. 문서의 정확한 외관을 표현할 수 있으며 임의의 배율 조정을 지원한다. 플랫폼 독립적으로 설계되었으며 다양한 소프트웨어로 볼 수 있다. 기본적으로 Texinfo는 PDF 출력을 위해 TeX의 변형인 pdftex 프로그램을 사용한다.
LaTeX
(texi2any --latex를 통해 생성.) 이는 TeX 위에 구축된 조판 시스템이다. LaTeX 출력물은 추가로 가공되어 DVI, 포스트스크립트 또는 PDF로 변환될 수 있다.
Docbook
(texi2any --docbook를 통해 생성.) 이는 기술 문서를 위한 XML 기반 마크업 언어로, 전반적인 면에서 Texinfo와 어느 정도 유사하다. docbook2X 프로그램을 사용하면 닥북 파일을 Texinfo로 변환하는 것도 가능하다.
EPUB
(texi2any --epub3를 통해 생성.) EPUB은 휴대용 기기에서 전자책을 읽기 위해 설계된 형식이며, HTML에서 파생되었다.
XML
(texi2any --xml를 통해 생성.) 다른 모든 출력 형식과 달리 최종 결과물이 아니라 Texinfo 소스의 음역(transliteration)이다. Texinfo XML 출력의 목적은 XML 도구를 통해 추가적인 처리를 할 수 있도록 하는 것이다.
Info
(texi2any를 통해 생성.) 이는 기본적으로 원본 Texinfo 소스를 일반 텍스트로 음역한 형식에, 노드를 구분하고 메뉴, 상호 참조, 색인 등을 위한 탐색 요소를 제공하기 위한 몇 가지 제어 문자를 추가한 특정 형식이다. Info 형식의 파일은 Texinfo와 함께 배포되는 info 프로그램이나 여러 타사 info 뷰어로 탐색할 수 있다.
플레인 텍스트
(texi2any --plaintext를 통해 생성.) 탐색 제어 문자가 생략된 것을 제외하면 Info 출력과 거의 동일하다.

Man 출력

표준 Texinfo 도구에서 man은 출력 형식으로 사용할 수 없다는 점이 주목할 만하다. Texinfo는 리눅스와 같이 매뉴얼 페이지가 전통적인 문서 형식으로 사용되는 유닉스 계열 환경에서 주로 쓰이는 GNU 소프트웨어의 문서를 작성하는 데 사용되지만, man 페이지가 전통적으로 빠른 참조 가이드로 사용되는 엄격한 형식인 반면, 일반적인 Texinfo 응용 프로그램은 참조 매뉴얼뿐만 아니라 튜토리얼을 위한 것이라는 설계 근거 때문이다. 더욱이 많은 GNU 프로젝트는 man 페이지를 거의 완전히 배제하며, (종종 관리가 거의 되지 않는다고 기술된) 제공된 man 페이지를 읽는 이에게 Info 문서를 참조하도록 안내한다.

Texinfo 소스 파일

Texinfo는 장, 절, 상호 참조 및 색인이 있는 책처럼 문서를 구조화할 수 있게 한다. 소스는 거의 플레인 텍스트이지만 기술적으로는 "@"로 시작하는 명령으로 마크업된 서식 있는 텍스트이다. 소스 파일의 일부 예시는 다음과 같다.

@node Top
@top Short Sample

@node First Chapter
@nodedescription The first chapter is the only chapter in this sample.
@chapter First Chapter

@cindex chapter, first
This is the first chapter.

이 명령들은 장과 같은 구조를 표시하고, 단어, 예시, 목록, 표를 마크하거나, 특정 유형의 출력물에 대해서만 처리될 소스의 일부를 나타낸다.

역사 및 현황

Texinfo는 GNU 프로젝트의 공식 문서화 시스템으로 사용된다. GNU Texinfo 배포판은 GNU 일반 공중 사용 허가서에 따라 라이선스가 부여된다.

Texinfo 형식은 리처드 스톨먼이 만들었으며, MIT에서 인쇄물 출력용으로 사용되던 BoTeX라는 시스템과, 스톨먼이 Emacs의 TECO 구현체 위에서 만든 온라인 Info 하이퍼링크 문서 시스템을 결합한 것이다. BoTeX 자체는 (데이비드 A. 문과 관련이 있고 리스프 머신 문서화에 사용된) Bolio라는 이전 시스템에 기반을 두고 있으며, 출력을 위해 TeX를 사용하도록 변환되었다. 로버트 채셀은 스톨먼이 이맥스 리스프로 Info를 생성하는 첫 번째 번역기를 만들도록 도왔다. Texinfo는 "브라이언 리드의 Scribe 및 당시의 다른 서식 언어들에 느슨하게 기반하고 있다".

Texinfo 소프트웨어 배포판 개발은 브라이언 폭스(버전 3.8까지), 칼 베리(버전 5.2까지), 그리고 개빈 스미스(2014년 12월부터)가 이끌었다.

같이 보기

내용주 및 각주

  1. ↑ GNU's Who, The GNU Team has grown larger in the last few months: Brian Fox and Opus Goldstein have joined Jay Fenlason as the only employees of the Foundation. Most recently, Brian created a stand-alone texinfo formatter and browser..., February, 1988, GNU's Bulletin, vol. 1 no. 4
  2. ↑ Gnu Status, by Richard M. Stallman. "5. Documentation system. I now have a truly compatible pair of programs which can convert a file of texinfo format documentation into either a printed manual or an Info file. Documentation files are needed for many utilities.", February 1986, GNU's Bulletin, Volume 1 No. 1
  3. ↑ Gavin Smith (2026년 3월 2일). “Texinfo 7.3 released” (영어). 2026년 3월 3일에 확인함.
  4. ↑ What's GNU: Texinfo, Issue 6, Oct 01, 1994, By Arnold Robbins, Linux Journal
  5. ↑ GNU Texinfo Manual, Section 1.14 History
  6. ↑ Richard Stallman, January 8, 2012, post on emacs-devel mailing list: "...Info has existed since 1976 or so, in the original Emacs. At that time, Info files were written by hand, and everyone could edit system files on ITS."
  7. ↑ Daniel Weinreb and David A. Moon (January 1979), Lisp Machine Manual, Second Preliminary Version
  8. ↑ Texinfo

외부 링크