Txt2tags 设定域

之前我们讲的txt2tags 的使用方面始终没有涉及到设定域,似乎文本的主题功能也没有受到太多的影响。那是不是这一个区域完全没用呢?

恰好相反,弄好设定域可以极大的方便txt2tags 的使用。举例而言,我们编辑t2t 文件的目的是要将其换成xhtml 文件,这个过程里面,你可能使用txt2tags 进行多次转换,那是不是你打算每次都都去选择输出xhtml ?也许你使用txt2tags 的时候是一致开着txt2tags 的图形界面的,从来没用过命令行,可以解决掉这种麻烦,但是我想说,设置域带给你的不仅仅是这种便利,还有其他更多的选项。

在之后讲到使用某种特定编辑器里面编辑t2t 文件之后你更会觉得使用设定域相当的方便。这个在这里不多说了。


设定域基础

基本方法: %!关键词:关键词的值

你应该注意:

  • 以顶格的“%! ”开始一行命令。
  • 放在设定域中而不是主体域中。还记得以前提到过主体域中,以顶格的% 开始的一行会变成注释吗?
  • 关键词和关键词的值都不区分大小写。

学习本文强烈建议你熟悉一下Txt2tags 命令行转换使用详解 。里面的东西基本都可以放到设置域中。

设定域的使用很简单。先说一下可以用的关键词。

%!target

它的作用就是为这个t2t 文件设定缺省的转换格式。

如我设定为: %!target:xhtml 则我使用命令: txt2tags.py this.t2t 即可将其转换为 this.xhtml,而无需完整输入: txt2tags.py -t xhtml this.t2t

即便我使用图形界面,当我选择这个文件之后,也不用再选择输出格式为什么,程序将自动识别。

注意:其他的关键词和上面的例子大同小异,我将不再累述添加某关键词会带来什么好处。请参考此例。

%!encoding

设定编码。 如: %!encoding:utf-8

%!options

如要在装换的过程中加上5 级标题的目录,可以使用 %!options:--toc --toc-level 5

其他更多的可以参见本文开头提到的文章。

%!PreProc

在读入源文件,但是仍旧没有进行转换之前,对指定内容进行替换。

这个也很实用。比如,我要在文章中多次使用“票友山”三个字,而我不想每次都输入者三个字,我可以只是简单的输入“pys”,而在文章处理的时候进行批量替换。

使用: %!preproc pys "[票友山 http://sunxun.info]"

则我文章中的“我的BLOG 是pys ”将被替换为“我的BLOG 是票友山 ”。

当然,你也可以使用这个命令来设置更多的其他替换。

值得注意的是它的使用方法和其他的地方都不相同,没有冒号,而且用于替换的内容是用引号引起来的。

%!PostProc

和上面的作用差不多,单是替换的目标是已经经过处理的文件。

还记得Txt2tags 宏的使用 中,我们输出文件路径的时候。遇上了输出“F: xt2tags\macro”的情况吗?

我们可以用这个命令来解决: %!PostProc:"F: xt2tags\macro" "F:\txt2tags\macro"

%!Style

可以为HTML 和XHTML 目标文件指定样式表。 如果目标文件是LaTex ,则为加载特定的宏包。 用法示例: %!style:piaoyoushan.css

一些进阶

上面说到了设定域的几个关键字。再次提醒大家注意%!PreProc 用法的不同。

除了%!target ,其他几个命令都可针对不同类型的文件进行不同的设置。

用法: %!关键字(特定类型):关键字的值

而其中一些命令是可以糅到%!options 中的,大家可以在实践中了解。从原理上来说,options 中的内容可以看成在转换过程中你输入的一系列选项,这个选项是高于在其他部分的。

这些内容可以极大的方便t2t 文件的编辑,同时,也可以让你更加自由的定制生成的目标文件,学习一下很有好处。别的我不知道,但是至少在生成tex 的时候,你需要自己加上一些宏包,解决中文问题。

版权说明

无特殊说明均为原创文章,转载请注明。
本文链接地址: http://sunxun.info/2009/08/txt2tags-config-area/

分享家:Addthis中国
2009年8月22日 | 归档于 软件
本文目前尚无任何评论.

发表评论

XHTML: 您可以使用这些标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。请务必注意user必须和评论者名相匹配(大小写一致)。