水木-Emacs 的 texinfo 模式 (三)
null ana
〖返回〗〖转发〗
来自ana的主页 http://ana.163.net/
-------------------------------------------
Info 格式
Texinfo 模式提供了许多命令来对 Texinfo 文件的一部分或者全部进行Info 格式化。经常的,当你在书写文档时,你也许想要格式化文件的一部分。也就是一个区域。
你可以使用 `texinfo-format-region' 或者 `makeinfo-region' 命令来格式化区域:
`C-c C-e C-r'
`M-x texinfo-format-region'
`C-c C-m C-r'
`M-x makeinfo-region'
对当前区域进行 Info 格式化。
你可以使用 `texinfo-format-buffer' 或 `makeinfo-buffer' 命令来格式化整个编辑区域:
`C-c C-e C-b'
`M-x texinfo-format-buffer'
`C-c C-m C-b'
`M-x makeinfo-buffer'
对整个编辑区域进行 Info 格式化。
例如,在写一个 Texinfo 文件的时候,你可以使用:
C-u C-c C-u m 或
C-u M-x texinfo-master-menu
这会更新所有的节点和目录。然后使用以下命令来建立一个 Info 文件:
C-c C-m C-b 或
M-x makeinfo-buffer
要使 TeX 或 Info 格式命令正常工作,文件中必须包含以 `@setfilename'开头的一行。
排版和打印
排版和打印一个 Texinfo 文件是一个多步骤的处理过程,你首先得建立一个符合打印要求的文件 ( 一个 DVI 文件 ),然后打印这个文件。你当然也可以建立索引。要做到这一点,你得在第一次运行 `tex' 排版命令之后运行`texindex' 命令, 然后你必须再次运行 `tex' 命令。或者运行 `texi2dvi' 命令,它将根据需要自动建立索引。
你也许仅仅想排版和打印文件的一部分来观察效果。那么你可以使用
`texinfo-tex-region' 及其相关命令。使用 `texinfo-tex-buffer' 命令来格式化所有的编辑文件。
`C-c C-t C-b'
`M-x texinfo-tex-buffer'
在当前编辑文件中使用 `texi2dvi' 命令。在当前编辑文件中运行 TeX 之外,这条命令还将根据需要自动建立和更新索引。
`C-c C-t C-r'
`M-x texinfo-tex-region'
在当前区域运行 TeX。
`C-c C-t C-i'
`M-x texinfo-texindex'
在一个用 `texinfo-tex-region' 格式化过的 Texinfo 文件中运行`texindex' 来排序索引。`texinfo-tex-region' 命令并不自动运行`texindex' 命令,他仅仅运行 `tex' 排版命令。你必须在运行 `texindex' 之后再次运行 `texinfo-tex-region' 命令。( 通常情况下,当你在格式化一个区域时你不需要格式化索引,仅仅在格式化编辑文件时需要。现在存在`texi2dvi' 命令,很少用到这条命令。)
`C-c C-t C-p'
`M-x texinfo-tex-print'
打印先前以 `texinfo-tex-buffer' 或 `texinfo-tex-region' 格式化过的文件或文件的一部分。
要使 `texinfo-tex-region' 或 `texinfo-tex-buffer' 正常工作,文件必须以 `input texinfo' 开始并且包含 `@settitle' 行。文件必须以 `@bye'结尾。( 当你使用 `texinfo-tex-region',你必须在 `@settitle' 行前后包含start-of-header 和 end-of-header 行。)
Texinfo 模式概要
在 Texinfo 模式中,每一组命令都有相同的操作键。它们都以 `C-c' 开始,这些键都很容易记忆。
插入命令
插入命令的组合是两次的 `C-c' 然后是 @ 命令的第一个字母。( 也许使用`C-c C-i' ( 自定义插入 ) 命令更正统,但是 `C-c C-c' 非常快捷。)
C-c C-c c 插入 `@code'
C-c C-c d 插入 `@dfn'
C-c C-c e 插入 `@end'
C-c C-c i 插入 `@item'
C-c C-c n 插入 `node'
C-c C-c s 插入 `@samp'
C-c C-c v 插入 `@var'
C-c C-c { 插入花括号
C-c C-c ]
C-c C-c } 移动到括号的结尾
C-c C-c C-d 在目录行的空白处插入节点的标题做为描述
显示结构
`texinfo-show-structure' 命令常常用在一个区域中。
C-c C-s 显示所有的标题。
主要的更新命令
`texinfo-master-menu' 命令建立一个主目录; 也可以用来更新文件中所有的节点和目录。
C-c C-u m
M-x texinfo-master-menu
建立或更新主目录。
C-u C-c C-u m 使用 `C-u' 作为前置参数,首先建立或更新所有的节点和常规目录,然后建立主目录。
更新节点
更新节点命令是在 `C-c C-u' 后输入 `C-n' ( `texinfo-update-node' )
或 `C-e' ( `texinfo-every-node-update')。
C-c C-u C-n 更新一个节点。
C-c C-u C-e 更新当前文件中的每个节点。
更新目录
更新目录命令是用 `C-c C-u' 然后输入 `C-m' ( `texinfo-make-menu' )或 `C-a' ( `texinfo-all-menu-update' )。要同时更新所有的节点和目录,在使用 `C-c C-u C-a'时使用 `C-u'。
C-c C-u C-m 建立或更新目录。
C-c C-u C-a 建立或更新当前文件中的所有目录。
C-u C-c C-u C-a 使用 `C-u' 前置参数,首先建立或更新所有的
节点然后建立或更新所有的目录。
Info 格式化
Info 格式化命令在 Emacs Lisp 中是用 `C-c C-e' 然后输入 `C-r' ( 对区域 ) 或 `C-b' ( 对当前正在编辑的文件 )。
Info 格式化命令在 `makeinfo' 中是使用 `C-c C-m' 然后用 `C-r' ( 对区域 ) 或 `C-b' ( 对当前正在编辑的文件 )。
使用 `texinfo-format...' 命令:
C-c C-e C-r 格式化区域。
C-c C-e C-b 格式化当前文件。
使用 `makeinfo':
C-c C-m C-r 格式化区域。
C-c C-m C-b 格式化当前文件。
C-c C-m C-l 重新定位 `makeinfo' 输出文件。
C-c C-m C-k 取消 `makeinfo' 格式化任务。
排版和打印
TeX 排版和打印命令是用 `C-c C-t' 和其他的控制命令:`C-r'
( `texinfo-tex-region' ),`C-b' ( `texinfo-tex-buffer' )。
C-c C-t C-r 在当前区域运行 TeX。
C-c C-t C-b 在当前文件中运行 `texi2dvi'。
C-c C-t C-i 运行 `texindex'。
C-c C-t C-p 打印 DVI 文件。
C-c C-t C-q 显示打印队列。
C-c C-t C-d 从打印队列中删除打印任务。
C-c C-t C-k 取消当前的 TeX 格式化任务。
C-c C-t C-x 退出当前停顿的 TeX 格式化任务。
C-c C-t C-l 重新定位输出文件。
其他的更新命令
这些命令没有规律的键盘组合因为它们很少使用。
M-x texinfo-insert-node-lines
在当前区域插入丢失的 `@node'。使用前置参数时,使用小节标题作为节点名。
M-x texinfo-multiple-files-update
更新多个文件。使用 `C-u 2' 作为前置参数时,首先在所有的包含文件中建立或更新所有的节点。
M-x texinfo-indent-menu-description
缩进描述。
M-x texinfo-sequential-node-update
以正确的顺序插入节点指向。
-------------------------------------------
iamafan@linuxaid.com.cn
责任编辑:知识库管理员(2001-01-03 16:40)