GNU Texinfo 使用手册

[ 最后修订与导出时间: 2026-02-03 19:20:16 +0800 ,总字数: 4619 ]

本手册适用于 GNU Texinfo(版本 7.2,2024 年 12 月 20 日),这是一个文档系统,可以使用语义标记从单个源生成在线信息和打印手册。

Texinfo 复制许可条款

GNU Texinfo 是 自由软件 ,即任何人都可在特定条款下自由使用、自由再分发本软件。Texinfo 并非公有领域内容,其受版权保护且对分发行为设有相关限制,但这些限制的制定初衷,是保障所有遵守协作准则的使用者能行使合理的使用权利。本条款禁止的行为,是试图阻止他人进一步分享其从你处获取的任一版本的 Texinfo 软件。

具体而言,我们保障你享有以下权利:无偿分发与 Texinfo 相关的程序副本;获取相关程序的源代码,或在需要时能够获取该代码;修改这些程序,或在新的自由软件中使用其部分代码;同时你也有权知晓自身可行使上述所有权利。

为确保所有人都能享有上述权利,我们禁止你以任何方式剥夺他人的这些权利。例如,若你分发 Texinfo 相关程序的副本,必须将你所享有的全部权利一并赋予接收者;必须确保接收者同样能获取或有权获取该程序的源代码;同时必须向其告知所享有的各项权利。

此外,为保护本项目的权益,我们需让所有使用者知晓:与 Texinfo 相关的程序不提供任何担保。若此类程序经他人修改后进行传播,我们希望接收者能够明确知晓,其获取的程序并非由本项目原封分发的版本,从而避免他人修改引入的问题对本项目的声誉造成影响。

当前分发的 Texinfo 相关程序,其许可协议的具体条款均载明于随程序附带的《通用公共许可证》中。本手册的版权保护与使用条款遵循《GNU 自由文档许可证》(详见《GNU 自由文档许可证》章节)。

1. Texinfo 概述

Texinfo 是一套文档编制系统,仅需编写单个源文件,即可生成在线查阅文档与印刷版输出文档。这意味着你无需为每种输出格式单独撰写不同文档,只需完成一份文档的编写即可。

通过 Texinfo,你可借助 TeX 排版系统生成 PDF 格式的印刷版文档,文档可包含章节、小节、交叉引用和索引等内容。基于同一个 Texinfo 源文件,你还能生成适用于网页浏览器的 HTML 格式文档,生成可在 GNU Emacs 或其他 Info 阅读程序中使用的 Info 文件,同时也能生成 DocBook、EPUB 3 或 LaTeX 格式的文件。

Texinfo 源文件为纯文本文件,内容中穿插着 @-commands (以 @开头的指令),这些命令用于告知 Texinfo 处理程序执行对应的操作。Texinfo 的标记命令几乎完全具备语义化特性,也就是说,这些命令用于定义文档中文本的实际语义,而非单纯的外观格式排版指令。

GNU Emacs 中内置了专门的 Texinfo 模式,该模式提供了各类与 Texinfo 相关的功能(详见《使用 Texinfo 模式》章节)。

Texinfo 是专为编写软件说明文档和手册设计的工具。如果你想要为自己的程序编写优质手册,Texinfo 的诸多功能将为你简化编写工作。但需要注意的是,Texinfo 并非通用型排版程序,它几乎未提供任何用于控制最终排版效果的命令。因此,若你需要排版报纸、制作精美杂志广告,或遵循出版社严苛的格式排版要求,Texinfo 可能无法满足你的使用需求。

“Texinfo” 的拼写规范为:首字母 T 大写,其余字母均小写。该单词的第一个音节发音与 “speck”(/spek/)一致,而非 “hex”(/heks/)。这一特殊的发音方式源于 TeX 的发音规则。TeX 的发音需将末尾的 X 读作巴赫(Bach)姓氏中最后一个音的发音,TeX 中的字母 X 并非英语中常见的 “ex” 发音,实际对应希腊字母 χ(chi)的发音。

Texinfo 是 GNU 项目的官方文档格式。你可通过 GNU 文档网页获取更多相关信息,其中包括各类 GNU 软件包的使用手册

1.1. 问题反馈

我们欢迎大家针对 Texinfo 系统的任意方面提交问题反馈与改进建议,涵盖程序运行、文档内容、安装部署等相关问题。请将反馈内容发送至邮箱:bug-texinfo@gnu.org。你可通过 Texinfo 官方主页获取其最新版本,网址为:https://www.gnu.org/software/texinfo

提交问题反馈时,请提供足够信息,确保维护者能够复现相关问题。一般来说,需包含以下内容:

  • Texinfo 的版本号,以及涉事的程序和手册版本
  • 复现问题所需的所有输入文件内容
  • 涉事程序的具体运行步骤
  • 问题现象描述,以及所有错误输出的样本
  • 所用的硬件设备、操作系统名称及版本
  • 你认为有帮助的其他相关信息

若不确定某项信息是否需要提供,建议一并附上。提供的信息宁多勿少,避免遗漏关键内容。

务必附上能复现问题的实际输入文件,这一点至关重要。

若 GNU Emacs 中的 Info 阅读器出现问题,需向 Emacs 开发团队提交反馈,具体可参阅《GNU Emacs 手册》中的 “问题反馈” 章节。

我们同样欢迎大家提交程序补丁。若有相关提交,建议使用 'diff -c'、 'diff -u' (详见《文件的比较与合并》)或 'git diff' 命令生成补丁,并附上 ChangeLog 变更记录(详见《GNU 编码标准》中的 “变更日志” 章节),同时遵循项目现有的编码规范。

1.2. 输出格式

下文为 Texinfo 目前支持的输出格式总览。

Info
信息文档格式。 (通过 texi2any 生成)该格式基本是 Texinfo 源文件的纯文本转写形式,仅添加少量控制字符,为交叉引用、索引等功能提供导航信息。GNU Emacs 的信息文档子系统(参见《信息文档》)、独立的 info 程序(参见《GNU 信息文档程序》)等工具均可读取此类文件。相关详情参见《Info 文件》与《创建并安装 Info 文件》章节。
Plain text
纯文本格式。 (通过 texi2any --plaintext 生成)该格式与 Info 格式输出几乎一致,仅剔除了用于导航的控制字符。
HTML
超文本标记语言。 (通过 texi2any --html 生成)HTML 是超文本标记语言的缩写,为 World Wide Web万维网 文档的编写标准,可由网页浏览器在线渲染展示。HTML 拥有多个版本,既包含不同的官方标准,也存在各浏览器专属的扩展规范。 texi2any 工具仅使用该语言的通用子集,可被所有主流浏览器解析,且刻意避免使用大量较新或支持度较低的标签。因此其原生输出样式虽较为简洁,但可根据需求在多个层级进行自定义配置。相关详情参见《生成 HTML 文档》章节。
EPUB 3
电子出版格式。 (通过 texi2any --epub3 生成)EPUB 是专为便携式设备阅读电子书设计的格式,由 HTML 衍生而来。该格式最初由国际数字出版论坛(IDPF)开发,目前该组织已并入万维网联盟(W3C)。其最新主要修订版本 EPUB 3 于 2011 年发布。
DVI
设备无关格式。 (通过 texi2dvi 生成)设备无关二进制格式是 TeX 排版程序(官网:http://tug.org)的输出格式,需由 DVI 驱动程序解析后,转换为适配具体设备的显示或打印指令。常用的 DVI 驱动程序包括:将格式转换为 PostScript 格式的 Dvips(参见《Dvips 工具》)、用于 X 窗口系统显示的 Xdvi(下载地址:http://sourceforge.net/projects/xdvi/)。相关详情参见《使用 TeX 进行排版与打印》章节。(请注意:Texinfo 语言与 TeX 系列常用语言差异显著,包括纯 TeX、LaTeX、ConTeXt 等。)
PostScript
页面描述语言。 (通过 texi2dvi --ps 生成)PostScript 是一种页面描述语言,自 1985 年起被广泛应用,至今仍在使用。其基础介绍及更多相关参考可参见:https://en.wikipedia.org/wiki/PostScript。Texinfo 默认识别 dvips 程序,将 TeX 生成的 DVI 格式转换为 PostScript 格式。相关详情参见《Dvips 工具》章节。
PDF
便携式文档格式。 (通过 texi2dvi --pdftexi2pdf 生成)该格式由 Adobe 系统公司基于其早前的 PostScript 语言开发,专为便携式文档交换设计。该格式可精准还原文档的原始外观,包括字体、图形等元素,且支持任意比例缩放。其设计目标包括跨平台兼容、易于查看等;相关背景知识可参见:https://en.wikipedia.org/wiki/Portable_Document_Formathttp://tug.org/TUGboat/tb22-3/tb72beebe-pdf.pdf。Texinfo 默认使用 pdftex 程序(TeX 的扩展工具)生成 PDF 格式,工具详情参见:http://tug.org/applications/pdftex。相关使用方法参见《PDF 格式输出》章节。
LaTeX

拉泰赫格式。 (通过 texi2any --latex 生成)该格式是基于 TeX 构建的排版系统,最初由莱斯利・兰波特于 1984 年发布。LaTeX 在 TeX 的基础上扩充了大量定义,且拥有丰富的第三方扩展包,是学术文献领域的通用排版格式。目前 LaTeX 仍在持续开发更新,更多信息可参见其官方网站:https://www.latex-project.org/

LaTeX 格式的输出文件可进一步转换为 DVI、PostScript 或 PDF 格式。从理论上讲,相较于基于纯 TeX 实现的 Texinfo,LaTeX 格式支持更高程度的输出自定义配置。

DocBook
文本书籍格式。 (通过 texi2any --docbook 生成)该格式是基于 XML 的标记语言,主要用于编写技术文档,因此在整体框架上与 Texinfo 存在一定相似性。官方详情参见:http://www.docbook.org。目前已有多款将 DocBook 格式转换为 Texinfo 格式的工具,相关信息可参见 Texinfo 官方网页。
XML

可扩展标记语言。 (通过 texi2any --xml 生成)与上述所有输出格式不同, texi2any 生成的 XML 格式并非最终可使用的文档,而是 Texinfo 源文件的转写形式,无法直接通过网页浏览器或其他常规程序查看。

XML 是一种通用的语法规范,可适用于各类内容的标记(参考标准:http://www.w3.org/XML)。Texinfo 生成 XML 格式的核心目的,是为了通过各类 XML 工具进行后续的二次处理。其输出语法由 XML 文档类型定义(DTD)规范,相关定义文件 texinfo.dtd 已包含在 Texinfo 源程序发布包中。

Texinfo 源程序发布包中还包含一个实用脚本 txixml2texi ,可将 XML 格式反向转换为原始的 Texinfo 内容(Texinfo 宏定义与条件语句除外)。

1.3. 信息文件

如前文所述,Info 格式基本是 Texinfo 源文件的纯文本转写形式,仅添加少量控制字符用于分隔节点并提供导航信息,供 Info 阅读程序解析运行。

Info 文件几乎均由处理 Texinfo 源文档生成, texi2any (也称作 makeinfo )是将 Texinfo 文件转换为 Info 文件的核心命令,相关说明参见《texi2any:Texinfo 转换工具》章节。

通常情况下,用户会通过一个约定命名为 'Top' 的节点进入 Info 文件。该节点一般仅包含文件用途的简要说明,以及一个可访问文件其余内容的大型菜单。从该节点开始,你既可以按节点依次浏览整个文件,也可以直接跳转到主菜单中列出的指定节点,还可以检索索引菜单并直接定位到包含所需信息的节点。此外,使用独立的 Info 程序时,你还能在命令行中指定具体的菜单项(参见《Info 程序》章节)。

若你希望像阅读印刷版手册一样按顺序浏览 Info 文件,可反复按下空格键(SPC),也可使用 Info 高级命令 g * 调出整个文件的内容(参见《Info 程序中的高级命令》章节)。

info 目录下的 dir 文件 是整个 Info 系统的入口,通过该文件可访问完整 Info 系统中各文档的 'Top' 节点。

若你希望通过统一资源标识符(URI)引用 Info 文件,可使用以下示例中的非官方语法,该语法可在 Emacs/W3 等工具中正常使用:

info:emacs#Dissociated%20Press
info:///usr/info/emacs#Dissociated%20Press
info://localhost/usr/info/emacs#Dissociated%20Press

需要注意的是,info 程序本身并不支持解析任何形式的 URI。

1.4. 印刷书籍

1.5. 新增输出格式

1.6. 发展历史

2. 编写 Texinfo 文件

2.1. 通用语法规则

2.2. 注释

2.3. Texinfo 文件的必备内容

2.4. 简易示例

2.5. Texinfo 文件头

2.5.1. Texinfo 文件的首行

2.5.2. @setfilename:设置输出文件名

2.5.3. @settitle:设置文档标题

2.5.4. 序言

2.5.5. Emacs 专用文件头的起始与结束

2.6. 目录分类

2.7. 文档权限

2.7.1. @copying:声明复制许可

2.7.2. @insertcopying:插入许可说明文本

2.9. 生成目录

2.10. Top 节点与主菜单

2.10.1. 主菜单的组成部分

2.11. 文档正文

2.12. Texinfo 文件的结尾

3. 节点

3.1. 编写 @node 行

3.2. 节点命名规则

3.3. @node 行的编写要求

3.4. 首个节点

3.5. @top 章节命令

3.6. Texinfo 文档结构

3.7. 节点与菜单示例

3.8. 节点描述

3.9.1. 编写菜单

3.9.5. 简洁化菜单项

3.9.6. 引用其他信息文件

4. 章节结构

4.1. 章节的树形结构

4.2. 结构命令的类型

4.3. @chapter:章节结构定义

4.4. @unnumbered、@appendix:特殊标记的章节(无编号 / 附录)

4.5. @majorheading、@chapheading:章节级标题

4.6. @section:章节下的一级小节

4.7. @unnumberedsec、@appendixsec、@heading:无编号小节 / 附录小节 / 普通标题

4.8. @subsection:一级小节下的二级小节

4.9. 类 @subsection 命令

4.10. @subsubsection 及其他三级小节命令

4.11. @part:章节组

4.12. 提升 / 降低章节层级:@raisesections 与 @lowersections

5. 交叉引用

5.1. 不同类型的交叉引用命令

5.2. 交叉引用的组成部分

5.3. 单参数 @xref

5.4. 双参数 @xref

5.5. 三参数 @xref

5.6. 四参数与五参数 @xref

5.7. 引用整本手册

5.8. @xref:基础交叉引用

5.9. @ref:直接交叉引用

5.10. @pxref:附带页码的交叉引用

5.11. @anchor:定义自定义交叉引用目标

5.13. @inforef:仅针对信息文件的交叉引用

5.14. @url、@uref {网址 [, 显示文本][, 替换文本]}

5.14.1. @url 示例

5.14.2. 网址自动换行

5.14.3. @url 的 PDF 输出格式

5.15. @cite {参考文献}:引用标注

5.16. PDF 颜色设置

6. 文本、单词与短语标记

6.1. 定义、命令等内容的标记

6.1.1. 高亮命令的实用价值

6.1.2. @code {示例代码}:代码样式

6.1.3. @kbd {键盘字符}:键盘按键样式

6.1.4. @key {按键名}:功能键样式

6.1.5. @samp {文本}:示例文本样式

6.1.6. @verb {定界符文本定界符}:原义文本

6.1.7. @var {元语法变量}:变量样式

6.1.8. @env {环境变量}:环境变量样式

6.1.9. @file {文件名}:文件路径样式

6.1.10. @command {命令名}:终端命令样式

6.1.11. @option {选项名}:命令选项样式

6.1.12. @dfn {术语}:术语定义样式

6.1.13. @abbr {缩写 [, 全称]}:缩写标注

6.1.14. @acronym {首字母缩写 [, 全称]}:首字母缩写标注

6.1.15. @indicateurl {统一资源定位符}:网址标识样式

6.1.16. @email {邮箱地址 [, 显示文本]}:邮箱地址样式

6.2. 文本强调

6.2.1. @emph {文本} 与 @strong {文本}:斜体强调 / 粗体强调

6.2.2. @sc {文本}:小型大写字体

6.2.3. 印刷用字体设置

7. 引用与示例

7.1. 块包裹命令

7.2. @quotation:块引用

7.3. @indentedblock:缩进文本块

7.4. @example:示例文本块

7.5. @verbatim:原义文本块

7.6. @lisp:Lisp 代码示例块

7.7. @display:正文字体示例块

7.8. @format:整行宽度示例块

7.9. @exdent:取消行缩进

7.10. @flushleft 与 @flushright:左对齐 / 右对齐

7.11. @raggedright:居左不齐行文本

7.12. @noindent:取消段落缩进

7.13. @indent:强制段落缩进

7.14. @cartouche:圆角矩形标注块

7.15. @small 系列块命令:小字体块

8. 列表与表格

8.1. 列表介绍

8.2. @itemize:创建无序列表

8.3. @enumerate:创建有序 / 字母列表

8.4. 创建双列表格

8.4.1. 使用 @table 命令

8.4.2. @ftable 与 @vtable:固定宽度 / 可变宽度表格

8.4.3. @itemx:第二个及后续表项

8.5. @multitable:多列表格

8.5.1. 多列表格列宽设置

8.5.2. 多列表格行设置

9. 特殊显示

9.1. 浮动体

9.1.1. @float [类型][, 标签]:浮动内容

9.1.2. @caption & @shortcaption:标题 / 简短标题

9.1.3. @listoffloats:浮动体目录

9.2. 插入图片

9.2.1. 图片语法

9.2.2. 图片缩放

9.3. 脚注

9.3.1. 脚注命令

9.3.2. 脚注样式

10. 索引

10.1. 预定义索引

10.2. 定义索引条目

10.3. 高级索引命令

10.4. 插入索引条目

10.5. 索引与菜单的印刷

10.6. 合并索引

10.6.1. @syncodeindex:通过 @code 样式合并索引

10.6.2. @synindex:基础索引合并

10.7. 定义新索引

11. 特殊插入

11.1. 特殊字符:插入 @ {} , \ # &

11.1.1. 使用 @@ 与 @atchar {} 插入 @

11.1.2. 使用 @{@} 与 @lrbracechar {} @rrbracechar {} 插入 {}

11.1.3. 使用 @comma {} 插入,

11.1.4. 使用 @backslashchar {} 插入

11.1.5. 使用 @hashchar {} 插入 #

11.1.6. 使用 @& 与 @ampchar {} 插入 &

11.2. 插入引号

11.3. 插入空格

11.3.1. 多个连续空格

11.3.2. 非句尾空格

11.3.3. 句尾空格

11.3.4. @frenchspacing 取值:控制句尾间距

11.3.5. @dmn {量纲}:量纲格式化

11.4. 插入重音符号

11.5. 插入引号符号

11.6. @sub 与 @sup:插入下标与上标

11.7. @math 与 @displaymath:数学公式格式化

11.8. 文本专用符号

11.8.1. @TeX {}(TeX)与 @LaTeX {}(LaTeX)

11.8.2. @copyright {}(©):版权符号

11.8.3. @registeredsymbol {}(®):注册商标符号

11.8.4. @dots(…)与 @enddots(…):省略号

11.8.5. @bullet(・):项目符号

11.8.6. @euro(€):欧元符号

11.8.7. @pounds(£):英镑符号

11.8.8. @textdegree(°):度符号

11.8.9. @minus(−):减号

11.8.10. @geq(≥)与 @leq(≤):大于等于 / 小于等于符号

11.9. 编程专用符号

11.9.1. 符号汇总

11.9.2. @result {}(⇒):表达式结果

11.9.3. @expansion {}(→):展开标识

11.9.4. @print {} (-|):生成输出标识

11.9.5. @error {} (error→):错误信息标识

11.9.6. @equiv {} (≡):等价标识

11.9.7. @point {} (∗):缓冲区光标位置标识

11.9.8. 点击序列

11.10. 插入 Unicode 字符:@U

12. 强制换行 / 分页与禁止换行 / 分页

12.1. 换行 / 分页命令

12.2. @* 与 @/:生成换行与允许换行

12.3. @- 与 @hyphenation:印刷输出中的连字符换行

12.4. @allowcodebreaks:控制 @code 块内的换行

12.5. @w {文本}:禁止文本换行

12.6. @tie {}:插入不可断空格

12.7. @sp n:插入空行

12.8. @page:开始新页面

12.9. @group:禁止块内分页

12.10. @need 长度值:强制保留指定长度不分页

13. 定义命令

13.1. 定义的模板

13.2. 定义命令的续行

13.3. 可选参数与重复参数

13.4. 省略定义名后的空格

13.5. @deffnx 及相关命令:多个定义首行

13.6. 各类定义命令

13.6.1. 函数及同类实体

13.6.2. 类型化语言中的函数

13.6.3. 变量及同类实体

13.6.4. 类型化语言中的变量

13.6.5. 数据类型

13.6.6. 面向对象编程

13.6.6.1. 面向对象的变量
13.6.6.2. 面向对象的方法

13.7. 通用定义命令

13.8. 编写定义的规范

13.9. 函数定义示例

14. 国际化

14.1. @documentlanguage 语言代码 [_国家代码]:设置文档语言

14.2. @documentencoding 编码:设置输入编码

15. 条件可见文本

15.1. 条件命令

15.2. 条件非命令

15.3. 原始格式化器命令

15.4. 行内条件判断:@inline、@inlineifelse、@inlineraw

15.5. 标志位:@set、@clear、条件判断与 @value

15.5.1. @set 与 @value:设置与引用标志位

15.5.2. @ifset 与 @ifclear:根据标志位判断显示

15.5.3. @inlineifset 与 @inlineifclear:行内标志位判断

15.5.4. @value 示例

15.6. 检测 Texinfo 命令:@ifcommanddefined、@ifcommandnotdefined

15.7. 条件判断的嵌套

16. 定义新的 Texinfo 命令

16.1. 定义宏

16.2. 调用宏

16.3. 宏的细节与注意事项

16.4. @alias 新命令 = 已有命令:命令别名

16.5. 行宏

16.6. @definfoenclose:自定义高亮样式

16.7. 外部宏处理器:行指令

16.7.1. #line 指令

16.7.2. #line 与 TeX

16.7.3. #line 语法细节

17. 包含文件

17.1. 包含文件的使用方法

17.2. 含 @include 的示例文件

17.3. @verbatiminclude 文件名:原义包含文件

18. 使用 TeX 进行格式化与印刷

18.1. TeX 的使用

18.2. 使用 texi2dvi 或 texi2pdf 格式化

18.3. 使用 tex/texindex 格式化

18.3.1. 部分文档的格式化

18.3.2. texindex 细节

18.4. TeX 格式化的前期准备

18.5. 超宽水平盒子(hboxes)问题

18.6. 日文与中文的印刷

19. texi2any:Texinfo 转换工具

19.1. 从 Shell 调用 texi2any

19.2. texi2any 识别的环境变量

19.3. texi2any 的印刷输出

19.4. 自定义变量

19.4.1. 针对 @ 命令的自定义变量

19.4.2. 自定义变量与命令行选项

19.4.3. 全局自定义变量

19.4.4. 信息文件与纯文本的自定义变量

19.4.5. LaTeX 输出的自定义变量

19.4.6. 其他格式的自定义变量

19.4.7. 多格式通用自定义变量

19.5. 文档字符串的国际化

19.6. 调用 pod2texi:将 Pod 转换为 Texinfo

19.6.1. pod2texi 工具

19.7. texi2html:texi2any 的前身

20. 创建与安装信息文件

20.1. 安装信息文件

20.1.1. 目录文件 dir

20.1.2. 新增信息文件的列示

20.1.3. 其他目录中的信息文件

20.1.4. 安装信息目录文件

20.1.5. 调用 install-info 工具

20.2. 标签文件与拆分文件

20.3. 信息文件格式常见问题

21. 生成 HTML

21.1. HTML 转换

21.2. HTML 文件拆分

21.3. HTML 层叠样式表(CSS)

21.4. @documentdescription:摘要文本

21.5. 生成 EPUB

21.5.1. 容器目录与输出文件

21.5.2. EPUB 中的交叉引用

21.5.3. 实现严格的 EPUB 标准兼容

21.5.4. 为 EPUB 生成的 HTML

21.6. HTML 中的代码示例语法高亮

21.7. HTML 中的交叉引用

21.7.2. HTML 交叉引用的节点名展开

21.7.3. HTML 交叉引用的命令展开

21.7.4. HTML 交叉引用的 8 位字符展开

21.7.5. HTML 交叉引用配置文件:htmlxref.cnf

21.8. HTML 输出的自定义

21.8.1. HTML 输出结构的自定义

21.8.3. 导航栏与页眉的自定义

21.8.4. HTML 功能的自定义

21.8.5. 插入 HTML 代码的自定义

21.8.6. 特定输出内容的 HTML 自定义

21.8.7. 数学公式的 HTML 自定义

21.8.7.1. MathJax 自定义变量
21.8.7.2. latex2html 自定义变量
21.8.7.3. tex4ht 自定义变量

21.8.8. JavaScript 接口与许可证

21.8.9. HTML 自定义变量列表

附录 A @ 命令细节

A.1 @ 命令语法

A.2 @ 命令列表

A.3 @ 命令的使用上下文

A.4 废弃的 @ 命令

附录 B 技巧与提示

附录 C Texinfo 示例文件

C.1 GNU 示例文本

C.2 原义复制许可证

C.3 宽松式复制许可证

附录 D Texinfo 模式的使用

D.1 Texinfo 模式概述

D.2 通用 GNU Emacs 编辑命令

D.3 插入常用命令

D.4 显示文件的章节结构

D.4.1 使用 texinfo-show-structure 命令

D.4.2 使用 occur 命令

D.5 更新节点与菜单

D.5.1 更新相关命令

D.5.2 更新的要求

D.5.3 更新主文件与包含文件

D.5.4 包含文件的更新要求

D.5.5 其他更新命令

D.6 为信息文件格式化

D.6.1 在 Emacs 中运行 texi2any/makeinfo

D.6.2 texinfo-format 系列命令

D.7 在 Emacs 中进行格式化与印刷

D.7.1 Texinfo 模式下的格式化与印刷

D.7.2 使用本地变量列表

D.8 Texinfo 模式汇总

D.9 信息文件的直接格式化

D.9.1 为文件添加标签

D.9.2 手动拆分文件

D.10 检查错误

D.10.1 推荐使用 texi2any

D.10.2 检查信息文件格式化的错误

D.10.3 通过 TeX 调试

D.10.4 查找引用错误的节点

D.10.4.1 使用 Info-validate 命令
D.10.4.2 创建未拆分文件并添加标签表

D.11 批处理格式化

附录 E 全局文档命令

E.1 @setchapternewpage:章节前的空白页设置

E.2 页面页眉

E.2.1 @headings 命令

E.2.2 标准页眉格式

E.2.3 自定义页眉的方法

E.3 @paragraphindent:控制段落缩进

E.4 @firstparagraphindent:标题后首段的缩进设置

E.5 @exampleindent:示例环境的缩进设置

E.6 @smallbook:印刷 “小开本” 书籍

E.7 A4 纸张的印刷设置

E.8 @pagesizes [宽度][, 高度]:自定义页面尺寸

E.9 微排版设置

E.10 放大比例设置

附录 F 信息文件格式规范

F.1 信息文件格式:整册手册

F.2 信息文件格式:序言

F.3 信息文件格式:间接表

F.4 信息文件格式:标签表

F.5 信息文件格式:本地变量

F.6 信息文件格式:普通节点

F.7 信息文件格式:菜单

F.8 信息文件格式:图片

F.9 信息文件格式:索引打印

F.10 信息文件格式:交叉引用

附录 G GNU 自由文档许可证

命令索引

变量索引

通用索引

emacs

Emacs

org-mode

Orgmode

Donations

打赏

Copyright

© 2025 Jasper Hsu

Creative Commons

Creative Commons

Attribute

Attribute

Noncommercial

Noncommercial

Share Alike

Share Alike