PageRenderTime 74ms CodeModel.GetById 28ms app.highlight 33ms RepoModel.GetById 1ms app.codeStats 0ms

/doc/Chinese/userguide-zh/userguide-zh.html

http://txt2tags.googlecode.com/
HTML | 2813 lines | 2732 code | 79 blank | 2 comment | 0 complexity | fc33aa706d608a5d3c0aff828ca50b83 MD5 | raw file

Large files files are truncated, but you can click here to view the full file

   1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
   2<HTML>
   3<HEAD>
   4<META NAME="generator" CONTENT="http://txt2tags.org">
   5<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
   6<LINK REL="stylesheet" TYPE="text/css" HREF="userguide.css">
   7<TITLE>Txt2tags用户指南</TITLE>
   8</HEAD>
   9<BODY>
  10
  11<DIV CLASS="header" ID="header">
  12<H1>Txt2tags用户指南</H1>
  13<H2><I>原著:Aurelio Jargas &lt;verde (at) aurelio.net&gt;</I></H2>
  14<H2>翻译:Chris Leng &lt;rookie999.ly (at) gmail.com&gt;</H2>
  15<H3>2009-03-24</H3>
  16</DIV>
  17
  18<DIV CLASS="body" ID="body">
  19<HR NOSHADE SIZE=5>
  20<P></P>
  21<DIV CLASS="toc" ID="toc">
  22  <UL>
  23  <LI><A HREF="#about">关于本文</A>
  24  <LI><A HREF="#chap1-intro">1. 第一部分  初识txt2tags</A>
  25    <UL>
  26    <LI><A HREF="#1st-question">1.1. 第一个可能的问题</A>
  27    <LI><A HREF="#formats">1.2. 支持的文档结构</A>
  28    <LI><A HREF="#targets">1.3. 支持的目标文件格式</A>
  29    <LI><A HREF="#struct-support">1.4. 目标文件结构支持一览</A>
  30    <LI><A HREF="#interfaces">1.5. 三种用户接口:GUI、网页和命令行</A>
  31    </UL>
  32  <LI><A HREF="#install">2. 第二部分 如何开始?</A>
  33    <UL>
  34    <LI><A HREF="#download-python">2.1. 下载、安装Python</A>
  35    <LI><A HREF="#download-txt2tags">2.2. 下载txt2tags</A>
  36    <LI><A HREF="#install-txt2tags">2.3. 安装txt2tags</A>
  37    <LI><A HREF="#toc12">2.4. 安装编辑器的语法高亮文件</A>
  38    </UL>
  39  <LI><A HREF="#your-1st-doc">3. 第三部分 第一个文档</A>
  40    <UL>
  41    <LI><A HREF="#toc14">3.1. 先利其器</A>
  42    <LI><A HREF="#toc15">3.2. 编写文档头部</A>
  43    <LI><A HREF="#toc16">3.3. 第一次转换——图形界面操作</A>
  44    <LI><A HREF="#toc17">3.4. 第一次转换——命令行方式</A>
  45    <LI><A HREF="#toc18">3.5. 查看结果</A>
  46    <LI><A HREF="#toc19">3.6. 编写文档体</A>
  47    </UL>
  48  <LI><A HREF="#concepts">4. 第四部分 掌握txt2tags的结构</A>
  49    <UL>
  50    <LI><A HREF="#areas">4.1. 文档的各个部分</A>
  51    <LI><A HREF="#headers-area">4.2. 头部域</A>
  52    <LI><A HREF="#config-area">4.3. 设置域</A>
  53    <LI><A HREF="#body-area">4.4. 主体域</A>
  54    <LI><A HREF="#settings-overview">4.5. 设定</A>
  55    <LI><A HREF="#cmd-options">4.6. 命令行选项</A>
  56    <LI><A HREF="#rc">4.7. 用户配置文件(RC文件)</A>
  57    <LI><A HREF="#config-loading">4.8. 配置的优先级和加载顺序</A>
  58    <LI><A HREF="#include">4.9. %!include 指令</A>
  59    <LI><A HREF="#includeconf">4.10. %!includeconf 指令</A>
  60    </UL>
  61  <LI><A HREF="#marks">5. 第五部分 掌握标记</A>
  62    <UL>
  63    <LI><A HREF="#mark-headers">5.1. 头部</A>
  64    <LI><A HREF="#mark-title">5.2. 标题与编号的标题</A>
  65    <LI><A HREF="#mark-par">5.3. 段落</A>
  66    <LI><A HREF="#mark-comment">5.4. 注释</A>
  67    <LI><A HREF="#mark-beautifiers">5.5. 粗体,斜体,下划线和删除线</A>
  68    <LI><A HREF="#mark-monospaced">5.6. 等宽字体</A>
  69    <LI><A HREF="#mark-verbatim">5.7. 完全引用行和完全引用域</A>
  70    <LI><A HREF="#mark-seperator">5.8. 隔离行和粗隔离行</A>
  71    <LI><A HREF="#mark-link">5.9. 链接和命名链接</A>
  72    <LI><A HREF="#mark-quote">5.10. 引用</A>
  73    <LI><A HREF="#mark-list">5.11. 列表,编号列表和定义列表</A>
  74    <LI><A HREF="#mark-image">5.12. 图片</A>
  75    <LI><A HREF="#mark-table">5.13. 表格</A>
  76    <LI><A HREF="#mark-raw">5.14. 原始文,原文行和原文域</A>
  77    </UL>
  78  <LI><A HREF="#macro">6. 第六部分 宏</A>
  79    <UL>
  80    <LI><A HREF="#macro-date">6.1. %%date</A>
  81    <LI><A HREF="#macro-mtime">6.2. %%mtime</A>
  82    <LI><A HREF="#macro-infile">6.3. %%infile</A>
  83    <LI><A HREF="#macro-outfile">6.4. %%outfile</A>
  84    <LI><A HREF="#macro-toc">6.5. %%toc</A>
  85    </UL>
  86  <LI><A HREF="#settings">7. 第七部分 设定</A>
  87    <UL>
  88    <LI><A HREF="#setting-target">7.1. %!Target</A>
  89    <LI><A HREF="#setting-options">7.2. %!Options</A>
  90    <LI><A HREF="#setting-encoding">7.3. %!Encoding</A>
  91    <LI><A HREF="#setting-preproc">7.4. %!PreProc</A>
  92    <LI><A HREF="#setting-postproc">7.5. %!PostProc</A>
  93    <LI><A HREF="#setting-style">7.6. %!Style</A>
  94    <LI><A HREF="#setting-specific">7.7. 针对特定的目标格式进行设定</A>
  95    <LI><A HREF="#setting-filter-details">7.8. 关于PreProc和PostProc过滤器的一些细节</A>
  96    </UL>
  97  <LI><A HREF="#black-magic">8. 第八部分 黑魔法</A>
  98    <UL>
  99    <LI><A HREF="#postproc-multiline">8.1. 使用%!PostProc插入多行文本(比如CSS规则)</A>
 100    <LI><A HREF="#preproc-specific">8.2. 使用%!PreProc创建“特定目标类型”的内容</A>
 101    <LI><A HREF="#creating-marks">8.3. 使用%!PreProc改变txt2tags标记</A>
 102    </UL>
 103  <LI><A HREF="#history">9. 第九部分 软件历史</A>
 104    <UL>
 105    <LI><A HREF="#toc66">9.1. 1999年1月:史前历史</A>
 106    <LI><A HREF="#toc67">9.2. 1999年6月:依然是史前历史</A>
 107    <LI><A HREF="#toc68">9.3. 2000年8月:不再是史前历史了</A>
 108    <LI><A HREF="#toc69">9.4. 2001年5月:Python化和多目标格式的想法</A>
 109    <LI><A HREF="#toc70">9.5. 2001年7月:0.x系列:txt2tags的处女秀(公开发布)</A>
 110    <LI><A HREF="#toc71">9.6. 2002年9月:1.x系列:成长</A>
 111    <LI><A HREF="#toc72">9.7. 2004月7月:2.x系列:成熟</A>
 112    </UL>
 113  </UL>
 114
 115</DIV>
 116<P></P>
 117<HR NOSHADE SIZE=5>
 118<P></P>
 119<A NAME="about"></A>
 120<H1>关于本文</H1>
 121<P>
 122本文根据<A HREF="http://txt2tags.org/">txt2tags</A>(当前版本为2.5)的<B>用户指南</B>英文版翻译而来,读者可通过以下途径获得用户指南的英文原版:
 123</P>
 124<UL>
 125<LI>用户指南官方网址:<A HREF="http://txt2tags.org/userguide">http://txt2tags.org/userguide</A>
 126<LI>用户指南的PDF版本:<A HREF="http://txt2tags.org/userguide/userguide.pdf">http://txt2tags.org/userguide/userguide.pdf</A>
 127</UL>
 128
 129<P>
 130本译文依照<A HREF="http://creativecommons.org/licenses/by-nc-sa/3.0">创作共用约定(署名-非商业性使用-相同方式共享)3.0</A>发布。
 131</P>
 132<HR NOSHADE SIZE=5>
 133<P></P>
 134<A NAME="chap1-intro"></A>
 135<H1>1. 第一部分  初识txt2tags</H1>
 136<P>
 137本章为概述,介绍txt2tags程序的用途和特色。
 138</P>
 139<A NAME="1st-question"></A>
 140<H2>1.1. 第一个可能的问题</H2>
 141<H3>1.1.1. txt2tags是什么?</H3>
 142<P>
 143txt2tags是一个文本格式化和转换工具,能够将带有特定标记的纯文本文件转换为支持的任意一种目标格式,包括:
 144</P>
 145<UL>
 146<LI>HTML文档
 147<LI>XHTML文档
 148<LI>SGML文档
 149<LI>LaTeX源文件
 150<LI>Unix手册页(man page)
 151<LI>MagicPoint演示文稿
 152<LI>Wikipedia维基百科页面
 153<LI>Google Wiki 页面
 154<LI>DokuWiki页面
 155<LI>MoinMoin页面
 156<LI>PageMaker 6.0 文档
 157<LI>纯文本文件
 158</UL>
 159
 160<H3>1.1.2. 为什么使用txt2tags?</H3>
 161<P>
 162你会发现txt2tags十分有用,如果你:
 163</P>
 164<UL>
 165<LI>需要将文档以不同格式发布
 166<LI>需要以不同格式维护文档的更新
 167<LI>撰写技术文档或者手册
 168<LI>需要用你不熟悉的某种格式撰写文档
 169<LI>对于某种文档格式缺少一个专门的编辑器
 170<LI>想用一个简单的文本编辑器维护和更新你的文档
 171</UL>
 172
 173<P>
 174而最大的诱人之处在于:
 175</P>
 176<UL>
 177<LI>节省时间,专注于 <B>内容</B>,抛开 <B>格式</B>
 178</UL>
 179
 180<H3>1.1.3. 相较于其他工具,txt2tags有哪些优点?</H3>
 181<TABLE>
 182<TR>
 183<TD><B>源文件可读性好</B></TD>
 184<TD>txt2tags的标记非常简单,使得源文件几乎是自然语言。</TD>
 185</TR>
 186<TR>
 187<TD><B>目标文件可读性好</B></TD>
 188<TD>与源文件一样,生成的目标文件带有缩进和较短的行长度,可读性好。</TD>
 189</TR>
 190<TR>
 191<TD><B>一致的标记</B></TD>
 192<TD>txt2tags的标记是独特的,足以适应各种文档而不至于与文档内容产生混淆。</TD>
 193</TR>
 194<TR>
 195<TD><B>一致的规则</B></TD>
 196<TD>每种标记与其对应的规则是一一对应的,不存在“例外”或“特殊情形”</TD>
 197</TR>
 198<TR>
 199<TD><B>结构简单</B></TD>
 200<TD>所有支持的格式都是<B>简单的</B>,不带有附加选项或者复杂的修饰。标记只是标记而已,没有任何选项。</TD>
 201</TR>
 202<TR>
 203<TD><B>易于学习</B></TD>
 204<TD>由于简单的标记和可读的源文件,txt2tags的学习曲线非常的“用户友好”。</TD>
 205</TR>
 206<TR>
 207<TD><B>漂亮的示例</B></TD>
 208<TD>无论用txt2tags编写简单还是复杂的文档,包含在软件包中的<B>示例文件</B>都给出了生动实用的例子。</TD>
 209</TR>
 210<TR>
 211<TD><B>有用的工具</B></TD>
 212<TD>包含于软件包中的<B>语法规则文件</B>帮助你写出没有语法错误的文档(适用于vim, emacs, nano和kate)。</TD>
 213</TR>
 214<TR>
 215<TD><B>三种用户接口</B></TD>
 216<TD><I>Tk</I>编写的<B>图形接口</B>,可供远程和内部网使用的<B>网页接口</B>,以及共高级用户和脚本使用的<B>命令行接口</B></TD>
 217</TR>
 218<TR>
 219<TD><B>脚本</B></TD>
 220<TD>有经验的用户能够通过完全的命令行模式进行<B>自动任务</B>,以及对转换后的文件进行<B>后编辑</B></TD>
 221</TR>
 222<TR>
 223<TD><B>下载、运行和跨平台</B></TD>
 224<TD>txt2tags只是一个简单的<B>Python 脚本</B>,毋需编译或下载额外的模块,因此在各种*NIX、Linux、Windows和Macintosh主机上均能完美运行。</TD>
 225</TR>
 226<TR>
 227<TD><B>时常更新</B></TD>
 228<TD>活跃的邮件列表有用户提供修正和改进。作者本人在工作和业余也在使用txt2tags,因此开发不会无故终止。</TD>
 229</TR>
 230</TABLE>
 231
 232<H3>1.1.4. 我需要为此付费吗?</H3>
 233<TABLE ALIGN="center" BORDER="1">
 234<TR>
 235<TH>当然不需要!</TH>
 236</TR>
 237</TABLE>
 238
 239<P>
 240txt2tags在GPL许可证下发布,并且完全免费。
 241</P>
 242<A NAME="formats"></A>
 243<H2>1.2. 支持的文档结构</H2>
 244<P>
 245以下列出了txt2tags支持的文档结构。
 246</P>
 247<UL>
 248<LI>头部(文档标题、作者、日期)
 249<LI>章节标题(带有/不带编号)
 250<LI>段落
 251<LI>字体美化
 252 <UL>
 253 <LI>粗体
 254 <LI>斜体
 255 <LI>下划线
 256 <LI>删除线
 257 </UL>
 258<LI>等宽字体(完全引用)
 259 <UL>
 260 <LI>段落内的等宽字体
 261 <LI>等宽的行
 262 <LI>等宽的区域(多行)
 263 </UL>
 264<LI>引用
 265<LI>链接
 266 <UL>
 267 <LI>URL/Internet链接
 268 <LI>e-mail链接
 269 <LI>本地链接
 270 <LI>命名的链接
 271 </UL>
 272<LI>列表
 273 <UL>
 274 <LI>以符号引导的列表
 275 <LI>编号的列表
 276 <LI>定义列表
 277 </UL>
 278<LI>水平分隔线
 279<LI>图片(智能对齐)
 280<LI>表格(带/不带边框,智能对齐,列贯穿)
 281<LI>针对原文域的特殊标记(不解析)
 282<LI>对当前日期的特殊宏定义(能灵活的改变格式)
 283<LI>注释(作者备注;TODO;FIXME)
 284</UL>
 285
 286<A NAME="targets"></A>
 287<H2>1.3. 支持的目标文件格式</H2>
 288<DL>
 289<DT><B>HTML</B></DT><DD>
 290HTML是众所周知的格式(提示:Internet)。
 291<P></P>
 292Txt2tags能生成干净漂亮,源文件可读的HTML文档,不使用JavaScript、框架或是其他无效的、简洁的技术文档所不需要的格式化技术,但是可以使用独立的CSS文件。txt2tags生成的代码符合“<I>HTML 4.0 Transitional</I>”标准。
 293<P></P>
 294自2.0版起,txt2tags生成的HTML代码100%通过<A HREF="validator.w3.org">w3c validator</A>的校验。
 295<P></P>
 296<DT><B>XHTML</B></DT><DD>
 297新一代的HTML,具有更严格的语法——所有的标记都必须闭合,这使得代码更易理解和解析。大体上来说,可以将其看做HTML。Txt2tags生成的代码符合“<I>XHTML 1.0 Transitional</I>”标准。
 298<P></P>
 299自2.0版起,txt2tags生成的XHTML代码100%通过<A HREF="validator.w3.org">w3c validator</A>的校验。
 300<P></P>
 301<DT><B>SGML</B></DT><DD>
 302格式转换软件<A HREF="http://www.sgmltools.org">SGML工具</A>的通用格式。单一的SGML文件能转换为HTML、PDF、PS、info、LaTeX、Lyx、rtf以及XML格式的文档。SGML2* 工具还能自动生成目录表,以及按照章节将文件分割为子页(sgml2html)。
 303<P></P>
 304Txt2tags生成的SGML文件为Linux系统文档格式,通过SGML2*工具能够直接转换,而毋需任何额外的目录文件或是SGML那些恼人的要求。
 305<P></P>
 306<DT><B>LATEX</B></DT><DD>
 307超出你想象的强大格式,学术论文的通用格式。用它能生成整本的书、复杂的公式以及任何复杂的文字格式,然而,如果你打算手写那些标记,就准备掉头发吧……
 308<P></P>
 309  Txt2tags将为你处理所有的细节和例外情形,完成能够直接使用的LaTeX文档,你只需考虑文字内容。
 310<P></P>
 311<DT><B>LOUT</B></DT><DD>
 312与LaTeX非常相似,但是以“@”代替“\”作为命令引导符,同时尽量避免使用括号。它“一切皆对象”的处理方式使得标记更加健壮。
 313<P></P>
 314Txt2tags能生成可以直接使用的文件,通过“lout”命令即可转换为PDF或PS文件。
 315<P></P>
 316<DT><B>MAN</B></DT><DD>
 317UNIX手册页。
 318<P></P>
 319文档格式产生消亡,来来去去,UNIX手册页却存活多年,始终坚挺。
 320<P></P>
 321有各种工具可以生成手册页文档,但是txt2tags自有其优势:一个源文件,多种产出物。因此,手册页的内容还能转换为HTML、MagicPoint演示文稿,等等。
 322<P></P>
 323<DT><B>MGP</B></DT><DD>
 324<A HREF="http://www.mew.org/mgp">MagicPoint</A>是一个非常方便的幻灯片工具(就如同Microsoft PowerPoint)。它使用标记语言来定义每一屏显示,因此你可以使用 vi/emacs/记事本 这样的文本编辑器来完成复杂的幻灯片。
 325<P></P>
 326Txt2tags为你完成所有被ISO-8859标准所支持的字体和外观的定义,生成的.mgp文件能够直接使用。
 327<P></P>
 328<B>HOTSPOT 1:</B> txt2tags在生成的.mgp文件中使用XFree86 Type1字体!因此你的幻灯片毋需额外配合TrueType字体。
 329<P></P>
 330<B>HOTSPOT 2:</B> 字体颜色的定义简洁,即使在只有简陋调色板的系统中(比如<CODE>startx -- -bpp 8</CODE>),幻灯片依然美观。
 331<P></P>
 332你需要做的只是:转换,然后使用。毋需任何修复或是其他额外的工作。
 333<P></P>
 334<DT><B>WIKI</B></DT><DD>
 335想必你一定听说过<A HREF="wikipedia.org">维基百科(Wikipedia)</A>吧?现在你不必另外学习一种新的标记语法,txt2tags将为你把标记文本转换为维基百科的格式。
 336<P></P>
 337<DT><B>GWIKI</B></DT><DD>
 338使你能轻松的将项目文档粘贴到<A HREF="code.google.com">Google Code</A> Wiki。
 339<P></P>
 340<DT><B>DOKU</B></DT><DD>
 341<A HREF="http://wiki.splitbrain.org/wiki:dokuwiki">DokuWiki</A>是一种遵从标准并且易于使用的Wiki,被设计来创建各种类型的文档,其目标群体包括开发团队、工作组以及小型公司。其语法简洁而强大,确保数据文件脱离Wiki仍然保有可读性,同时简化结构化文本的创建,所有的数据都以纯文本文件格式存储——毋需数据库。
 342<P></P>
 343<DT><B>MOIN</B></DT><DD>
 344<A HREF="moinmo.in">MoinMoin</A>是什么?它是一种<A HREF="http://www.c2.com/cgi/wiki">WikiWiki</A> 345<P></P>
 346Moin的语法是有些乏味儿的,你必须不断的<CODE>{{{'''''adding braces and quotes'''''}}}</CODE>。Txt2tags为你带来简单的标记和统一的解决方案:一个源文件,多种产出物。
 347<P></P>
 348<DT><B>PM6</B></DT><DD>
 349我估猜你不会知道这是 Adobe PageMaker 6.0 独有的标记语言!它包含了样式、颜色表、美化、以及绝大部分PageMaker中的鼠标点击特性。你可以通过“Import Tagged text”菜单项来使用它。从记录上来看,它具有“类HTML”的标记格式。
 350<P></P>
 351Txt2tags能生成所有的标记,并且定义好丰富而有效的导言以设置段落样式和格式——这个部分通常是让人头疼的。<B>特别提醒:</B>不能有断行!每个段落必须是单独一行。
 352<P></P>
 353(作者按:<I>笔者的《<A HREF="http://guia-er.sf.net">regular expression's book</A>》这本书的葡萄牙语版就是用VI编辑,再用txt2tags转换为PageMaker格式然后付印的。</I> 354<P></P>
 355<DT><B>TXT</B></DT><DD>
 356纯文本,唯一的真实格式。
 357<P></P>
 358尽管txt2tags的标记非常直观而且不显眼,你仍然可以选择移除它们——只需将文件转换为纯文本即可。
 359<P></P>
 360在源文件中,标题添加下划线,而文本则是左对齐的。
 361</DL>
 362
 363<A NAME="struct-support"></A>
 364<H2>1.4. 目标文件结构支持一览</H2>
 365<TABLE ALIGN="center" BORDER="1">
 366<TR>
 367<TH>结构</TH>
 368<TH>html</TH>
 369<TH>xhtml</TH>
 370<TH>sgml</TH>
 371<TH>tex</TH>
 372<TH>lout</TH>
 373<TH>man</TH>
 374<TH>mgp</TH>
 375<TH>wiki</TH>
 376<TH>gwiki</TH>
 377<TH>doku</TH>
 378<TH>moin</TH>
 379<TH>pm6</TH>
 380<TH>txt</TH>
 381</TR>
 382<TR>
 383<TD>头部</TD>
 384<TD ALIGN="center">Y</TD>
 385<TD ALIGN="center">Y</TD>
 386<TD ALIGN="center">Y</TD>
 387<TD ALIGN="center">Y</TD>
 388<TD ALIGN="center">Y</TD>
 389<TD ALIGN="center">Y</TD>
 390<TD ALIGN="center">Y</TD>
 391<TD ALIGN="center">-</TD>
 392<TD ALIGN="center">-</TD>
 393<TD ALIGN="center">-</TD>
 394<TD ALIGN="center">-</TD>
 395<TD ALIGN="center">N</TD>
 396<TD ALIGN="center">Y</TD>
 397</TR>
 398<TR>
 399<TD>章节标题</TD>
 400<TD ALIGN="center">Y</TD>
 401<TD ALIGN="center">Y</TD>
 402<TD ALIGN="center">Y</TD>
 403<TD ALIGN="center">Y</TD>
 404<TD ALIGN="center">Y</TD>
 405<TD ALIGN="center">Y</TD>
 406<TD ALIGN="center">Y</TD>
 407<TD ALIGN="center">Y</TD>
 408<TD ALIGN="center">Y</TD>
 409<TD ALIGN="center">Y</TD>
 410<TD ALIGN="center">Y</TD>
 411<TD ALIGN="center">Y</TD>
 412<TD ALIGN="center">Y</TD>
 413</TR>
 414<TR>
 415<TD>段落</TD>
 416<TD ALIGN="center">Y</TD>
 417<TD ALIGN="center">Y</TD>
 418<TD ALIGN="center">Y</TD>
 419<TD ALIGN="center">Y</TD>
 420<TD ALIGN="center">Y</TD>
 421<TD ALIGN="center">Y</TD>
 422<TD ALIGN="center">Y</TD>
 423<TD ALIGN="center">Y</TD>
 424<TD ALIGN="center">Y</TD>
 425<TD ALIGN="center">Y</TD>
 426<TD ALIGN="center">Y</TD>
 427<TD ALIGN="center">Y</TD>
 428<TD ALIGN="center">Y</TD>
 429</TR>
 430<TR>
 431<TD>粗体字</TD>
 432<TD ALIGN="center">Y</TD>
 433<TD ALIGN="center">Y</TD>
 434<TD ALIGN="center">Y</TD>
 435<TD ALIGN="center">Y</TD>
 436<TD ALIGN="center">Y</TD>
 437<TD ALIGN="center">Y</TD>
 438<TD ALIGN="center">Y</TD>
 439<TD ALIGN="center">Y</TD>
 440<TD ALIGN="center">Y</TD>
 441<TD ALIGN="center">Y</TD>
 442<TD ALIGN="center">Y</TD>
 443<TD ALIGN="center">Y</TD>
 444<TD ALIGN="center">-</TD>
 445</TR>
 446<TR>
 447<TD>斜体字</TD>
 448<TD ALIGN="center">Y</TD>
 449<TD ALIGN="center">Y</TD>
 450<TD ALIGN="center">Y</TD>
 451<TD ALIGN="center">Y</TD>
 452<TD ALIGN="center">Y</TD>
 453<TD ALIGN="center">Y</TD>
 454<TD ALIGN="center">Y</TD>
 455<TD ALIGN="center">Y</TD>
 456<TD ALIGN="center">Y</TD>
 457<TD ALIGN="center">Y</TD>
 458<TD ALIGN="center">Y</TD>
 459<TD ALIGN="center">Y</TD>
 460<TD ALIGN="center">-</TD>
 461</TR>
 462<TR>
 463<TD>下划线字体</TD>
 464<TD ALIGN="center">Y</TD>
 465<TD ALIGN="center">Y</TD>
 466<TD ALIGN="center">-</TD>
 467<TD ALIGN="center">Y</TD>
 468<TD ALIGN="center">Y</TD>
 469<TD ALIGN="center">-</TD>
 470<TD ALIGN="center">Y</TD>
 471<TD ALIGN="center">Y</TD>
 472<TD ALIGN="center">-</TD>
 473<TD ALIGN="center">Y</TD>
 474<TD ALIGN="center">Y</TD>
 475<TD ALIGN="center">Y</TD>
 476<TD ALIGN="center">-</TD>
 477</TR>
 478<TR>
 479<TD>删除线字体</TD>
 480<TD ALIGN="center">Y</TD>
 481<TD ALIGN="center">Y</TD>
 482<TD ALIGN="center">N</TD>
 483<TD ALIGN="center">Y</TD>
 484<TD ALIGN="center">-</TD>
 485<TD ALIGN="center">-</TD>
 486<TD ALIGN="center">-</TD>
 487<TD ALIGN="center">Y</TD>
 488<TD ALIGN="center">Y</TD>
 489<TD ALIGN="center">Y</TD>
 490<TD ALIGN="center">Y</TD>
 491<TD ALIGN="center">N</TD>
 492<TD ALIGN="center">-</TD>
 493</TR>
 494<TR>
 495<TD>等宽字体</TD>
 496<TD ALIGN="center">Y</TD>
 497<TD ALIGN="center">Y</TD>
 498<TD ALIGN="center">Y</TD>
 499<TD ALIGN="center">Y</TD>
 500<TD ALIGN="center">Y</TD>
 501<TD ALIGN="center">-</TD>
 502<TD ALIGN="center">Y</TD>
 503<TD ALIGN="center">Y</TD>
 504<TD ALIGN="center">Y</TD>
 505<TD ALIGN="center">Y</TD>
 506<TD ALIGN="center">Y</TD>
 507<TD ALIGN="center">Y</TD>
 508<TD ALIGN="center">-</TD>
 509</TR>
 510<TR>
 511<TD>未格式化行</TD>
 512<TD ALIGN="center">Y</TD>
 513<TD ALIGN="center">Y</TD>
 514<TD ALIGN="center">Y</TD>
 515<TD ALIGN="center">Y</TD>
 516<TD ALIGN="center">Y</TD>
 517<TD ALIGN="center">Y</TD>
 518<TD ALIGN="center">Y</TD>
 519<TD ALIGN="center">Y</TD>
 520<TD ALIGN="center">Y</TD>
 521<TD ALIGN="center">Y</TD>
 522<TD ALIGN="center">Y</TD>
 523<TD ALIGN="center">Y</TD>
 524<TD ALIGN="center">-</TD>
 525</TR>
 526<TR>
 527<TD>未格式化区域</TD>
 528<TD ALIGN="center">Y</TD>
 529<TD ALIGN="center">Y</TD>
 530<TD ALIGN="center">Y</TD>
 531<TD ALIGN="center">Y</TD>
 532<TD ALIGN="center">Y</TD>
 533<TD ALIGN="center">Y</TD>
 534<TD ALIGN="center">Y</TD>
 535<TD ALIGN="center">Y</TD>
 536<TD ALIGN="center">Y</TD>
 537<TD ALIGN="center">Y</TD>
 538<TD ALIGN="center">Y</TD>
 539<TD ALIGN="center">Y</TD>
 540<TD ALIGN="center">-</TD>
 541</TR>
 542<TR>
 543<TD>引用区域</TD>
 544<TD ALIGN="center">Y</TD>
 545<TD ALIGN="center">Y</TD>
 546<TD ALIGN="center">Y</TD>
 547<TD ALIGN="center">Y</TD>
 548<TD ALIGN="center">Y</TD>
 549<TD ALIGN="center">Y</TD>
 550<TD ALIGN="center">Y</TD>
 551<TD ALIGN="center">Y</TD>
 552<TD ALIGN="center">Y</TD>
 553<TD ALIGN="center">Y</TD>
 554<TD ALIGN="center">Y</TD>
 555<TD ALIGN="center">Y</TD>
 556<TD ALIGN="center">Y</TD>
 557</TR>
 558<TR>
 559<TD>超链接</TD>
 560<TD ALIGN="center">Y</TD>
 561<TD ALIGN="center">Y</TD>
 562<TD ALIGN="center">Y</TD>
 563<TD ALIGN="center">-</TD>
 564<TD ALIGN="center">-</TD>
 565<TD ALIGN="center">-</TD>
 566<TD ALIGN="center">-</TD>
 567<TD ALIGN="center">Y</TD>
 568<TD ALIGN="center">Y</TD>
 569<TD ALIGN="center">Y</TD>
 570<TD ALIGN="center">Y</TD>
 571<TD ALIGN="center">-</TD>
 572<TD ALIGN="center">-</TD>
 573</TR>
 574<TR>
 575<TD>e-mail链接</TD>
 576<TD ALIGN="center">Y</TD>
 577<TD ALIGN="center">Y</TD>
 578<TD ALIGN="center">Y</TD>
 579<TD ALIGN="center">-</TD>
 580<TD ALIGN="center">-</TD>
 581<TD ALIGN="center">-</TD>
 582<TD ALIGN="center">-</TD>
 583<TD ALIGN="center">Y</TD>
 584<TD ALIGN="center">Y</TD>
 585<TD ALIGN="center">Y</TD>
 586<TD ALIGN="center">Y</TD>
 587<TD ALIGN="center">-</TD>
 588<TD ALIGN="center">-</TD>
 589</TR>
 590<TR>
 591<TD>本机链接</TD>
 592<TD ALIGN="center">Y</TD>
 593<TD ALIGN="center">Y</TD>
 594<TD ALIGN="center">Y</TD>
 595<TD ALIGN="center">N</TD>
 596<TD ALIGN="center">N</TD>
 597<TD ALIGN="center">-</TD>
 598<TD ALIGN="center">-</TD>
 599<TD ALIGN="center">N</TD>
 600<TD ALIGN="center">N</TD>
 601<TD ALIGN="center">Y</TD>
 602<TD ALIGN="center">Y</TD>
 603<TD ALIGN="center">-</TD>
 604<TD ALIGN="center">-</TD>
 605</TR>
 606<TR>
 607<TD>命名链接</TD>
 608<TD ALIGN="center">Y</TD>
 609<TD ALIGN="center">Y</TD>
 610<TD ALIGN="center">Y</TD>
 611<TD ALIGN="center">-</TD>
 612<TD ALIGN="center">-</TD>
 613<TD ALIGN="center">-</TD>
 614<TD ALIGN="center">-</TD>
 615<TD ALIGN="center">Y</TD>
 616<TD ALIGN="center">Y</TD>
 617<TD ALIGN="center">Y</TD>
 618<TD ALIGN="center">Y</TD>
 619<TD ALIGN="center">-</TD>
 620<TD ALIGN="center">-</TD>
 621</TR>
 622<TR>
 623<TD>列表</TD>
 624<TD ALIGN="center">Y</TD>
 625<TD ALIGN="center">Y</TD>
 626<TD ALIGN="center">Y</TD>
 627<TD ALIGN="center">Y</TD>
 628<TD ALIGN="center">Y</TD>
 629<TD ALIGN="center">Y</TD>
 630<TD ALIGN="center">Y</TD>
 631<TD ALIGN="center">Y</TD>
 632<TD ALIGN="center">Y</TD>
 633<TD ALIGN="center">Y</TD>
 634<TD ALIGN="center">Y</TD>
 635<TD ALIGN="center">Y</TD>
 636<TD ALIGN="center">Y</TD>
 637</TR>
 638<TR>
 639<TD>计数列表</TD>
 640<TD ALIGN="center">Y</TD>
 641<TD ALIGN="center">Y</TD>
 642<TD ALIGN="center">Y</TD>
 643<TD ALIGN="center">Y</TD>
 644<TD ALIGN="center">Y</TD>
 645<TD ALIGN="center">Y</TD>
 646<TD ALIGN="center">Y</TD>
 647<TD ALIGN="center">Y</TD>
 648<TD ALIGN="center">Y</TD>
 649<TD ALIGN="center">Y</TD>
 650<TD ALIGN="center">Y</TD>
 651<TD ALIGN="center">Y</TD>
 652<TD ALIGN="center">Y</TD>
 653</TR>
 654<TR>
 655<TD>定义列表</TD>
 656<TD ALIGN="center">Y</TD>
 657<TD ALIGN="center">Y</TD>
 658<TD ALIGN="center">Y</TD>
 659<TD ALIGN="center">Y</TD>
 660<TD ALIGN="center">Y</TD>
 661<TD ALIGN="center">Y</TD>
 662<TD ALIGN="center">N</TD>
 663<TD ALIGN="center">Y</TD>
 664<TD ALIGN="center">-</TD>
 665<TD ALIGN="center">-</TD>
 666<TD ALIGN="center">Y</TD>
 667<TD ALIGN="center">N</TD>
 668<TD ALIGN="center">Y</TD>
 669</TR>
 670<TR>
 671<TD>水平线</TD>
 672<TD ALIGN="center">Y</TD>
 673<TD ALIGN="center">Y</TD>
 674<TD ALIGN="center">-</TD>
 675<TD ALIGN="center">Y</TD>
 676<TD ALIGN="center">Y</TD>
 677<TD ALIGN="center">-</TD>
 678<TD ALIGN="center">Y</TD>
 679<TD ALIGN="center">Y</TD>
 680<TD ALIGN="center">-</TD>
 681<TD ALIGN="center">Y</TD>
 682<TD ALIGN="center">Y</TD>
 683<TD ALIGN="center">N</TD>
 684<TD ALIGN="center">Y</TD>
 685</TR>
 686<TR>
 687<TD>图片</TD>
 688<TD ALIGN="center">Y</TD>
 689<TD ALIGN="center">Y</TD>
 690<TD ALIGN="center">Y</TD>
 691<TD ALIGN="center">Y</TD>
 692<TD ALIGN="center">Y</TD>
 693<TD ALIGN="center">-</TD>
 694<TD ALIGN="center">Y</TD>
 695<TD ALIGN="center">Y</TD>
 696<TD ALIGN="center">Y</TD>
 697<TD ALIGN="center">Y</TD>
 698<TD ALIGN="center">Y</TD>
 699<TD ALIGN="center">N</TD>
 700<TD ALIGN="center">-</TD>
 701</TR>
 702<TR>
 703<TD>表格</TD>
 704<TD ALIGN="center">Y</TD>
 705<TD ALIGN="center">Y</TD>
 706<TD ALIGN="center">Y</TD>
 707<TD ALIGN="center">Y</TD>
 708<TD ALIGN="center">N</TD>
 709<TD ALIGN="center">Y</TD>
 710<TD ALIGN="center">N</TD>
 711<TD ALIGN="center">Y</TD>
 712<TD ALIGN="center">Y</TD>
 713<TD ALIGN="center">Y</TD>
 714<TD ALIGN="center">Y</TD>
 715<TD ALIGN="center">N</TD>
 716<TD ALIGN="center">N</TD>
 717</TR>
 718<TR>
 719<TH>附加结构</TH>
 720<TH>html</TH>
 721<TH>xhtml</TH>
 722<TH>sgml</TH>
 723<TH>tex</TH>
 724<TH>lout</TH>
 725<TH>man</TH>
 726<TH>mgp</TH>
 727<TH>wiki</TH>
 728<TH>gwiki</TH>
 729<TH>doku</TH>
 730<TH>moin</TH>
 731<TH>pm6</TH>
 732<TH>txt</TH>
 733</TR>
 734<TR>
 735<TD>图片对齐</TD>
 736<TD ALIGN="center">Y</TD>
 737<TD ALIGN="center">Y</TD>
 738<TD ALIGN="center">N</TD>
 739<TD ALIGN="center">N</TD>
 740<TD ALIGN="center">Y</TD>
 741<TD ALIGN="center">-</TD>
 742<TD ALIGN="center">Y</TD>
 743<TD ALIGN="center">Y</TD>
 744<TD ALIGN="center">-</TD>
 745<TD ALIGN="center">Y</TD>
 746<TD ALIGN="center">N</TD>
 747<TD ALIGN="center">N</TD>
 748<TD ALIGN="center">-</TD>
 749</TR>
 750<TR>
 751<TD>单元格对齐</TD>
 752<TD ALIGN="center">Y</TD>
 753<TD ALIGN="center">Y</TD>
 754<TD ALIGN="center">Y</TD>
 755<TD ALIGN="center">Y</TD>
 756<TD ALIGN="center">N</TD>
 757<TD ALIGN="center">Y</TD>
 758<TD ALIGN="center">N</TD>
 759<TD ALIGN="center">N</TD>
 760<TD ALIGN="center">-</TD>
 761<TD ALIGN="center">-</TD>
 762<TD ALIGN="center">Y</TD>
 763<TD ALIGN="center">N</TD>
 764<TD ALIGN="center">N</TD>
 765</TR>
 766<TR>
 767<TD>跨列单元格</TD>
 768<TD ALIGN="center">Y</TD>
 769<TD ALIGN="center">Y</TD>
 770<TD ALIGN="center">N</TD>
 771<TD ALIGN="center">N</TD>
 772<TD ALIGN="center">N</TD>
 773<TD ALIGN="center">N</TD>
 774<TD ALIGN="center">N</TD>
 775<TD ALIGN="center">N</TD>
 776<TD ALIGN="center">-</TD>
 777<TD ALIGN="center">-</TD>
 778<TD ALIGN="center">N</TD>
 779<TD ALIGN="center">N</TD>
 780<TD ALIGN="center">N</TD>
 781</TR>
 782</TABLE>
 783
 784<TABLE ALIGN="center">
 785<TR>
 786<TH></TH>
 787<TH>图例</TH>
 788</TR>
 789<TR>
 790<TD><B>Y</B></TD>
 791<TD>支持</TD>
 792</TR>
 793<TR>
 794<TD><B>N</B></TD>
 795<TD>不支持(后续版本可能会支持)</TD>
 796</TR>
 797<TR>
 798<TD><B>-</B></TD>
 799<TD>不支持(在该目标格式中不存在)</TD>
 800</TR>
 801</TABLE>
 802
 803<A NAME="interfaces"></A>
 804<H2>1.5. 三种用户接口:GUI、网页和命令行</H2>
 805<P>
 806不同用户的需求和使用环境不同,txt2tags相应的也具有灵活的执行方式。
 807</P>
 808<P>
 809程序有三种用户接口,每一种各有其目标和特性:
 810</P>
 811<UL>
 812<LI><B>图形用户接口(GUI)</B>:使用Tk写成,支持窗口环境和鼠标点击。
 813<LI><B>网页</B>:使用PHP开发,支持通过浏览器运行txt2tags,而毋需安装任何客户端程序。
 814<LI><B>命令行</B>:程序的核心,使用Python开发,所有的特性都包含于命令行选项之中。
 815</UL>
 816
 817<A NAME="tk-interface"></A>
 818<H3>1.5.1. 基于Tk的图形用户接口</H3>
 819<P>
 820自1.0版本开始,txt2tags就有一个能工作于Linux、Windows、Mac以及其他操作系统之上的图形用户接口。
 821</P>
 822<P>
 823程序能自动检测你的系统能否显示图形,如果可以,则不带任何参数的命令调用时运行图形接口。你也可以通过命令行参数 <CODE>--gui</CODE> 强制运行图形接口。当某些资源缺失时,程序给出错误信息。
 824</P>
 825	<BLOCKQUOTE>
 826	提示:Tkinter是必须的。因为Python的标准发布总是包含它,实际上
 827	你的系统中应该已经有了。
 828	</BLOCKQUOTE>
 829<P></P>
 830<P>
 831图形界面的使用相当的简洁和直观:
 832</P>
 833           <center><IMG ALIGN="middle" SRC="./img/gui.png" BORDER="0" ALT=""></center> 
 834<OL>
 835<LI>加载本机的.t2t文件,其内部定义的选项将自动识别。
 836<LI>如果目标格式为空,必须在此处指定。
 837<LI>此外还有一些选项可以附加选择,但并非必须。
 838<LI>最后,点击“Convert!”按钮。
 839<P></P>
 840一个有用的选项是“<I>Dump to screen</I>”,输出结果不会写到文件,而是显示于屏幕上,以便检查,确认无误之后再输出到文件存储。
 841<P></P>
 842界面的默认颜色可以通过修改 <CODE>~/.txt2tagsrc</CODE> 文件的 <CODE>%!guicolors</CODE> 设定来更改。比如:
 843<P></P>
 844<PRE>
 845% set my own colors for the graphical interface (bg1, fg1, bg2, fg2)
 846%!guicolors: blue white brown yellow
 847</PRE>
 848</OL>
 849
 850<H3>1.5.2. 在线方式</H3>
 851<P>
 852基于Web的界面可以通过互联网地址<A HREF="http://txt2tags.org/online.php">http://txt2tags.org/online.php</A>来访问,你可以在下载之前先试用txt2tags。
 853</P>
 854        <center><IMG ALIGN="middle" SRC="./img/web.png" BORDER="0" ALT=""></center> 
 855<P>
 856Web接口也可以部署于本地局域网(intranet)内,免去在每台机器上安装txt2tags的麻烦。
 857</P>
 858<H3>1.5.3. 命令行</H3>
 859<P>
 860对于有经验的命令行用户来说,<CODE>--help</CODE> 选项提供的帮助信息应该足够了:
 861</P>
 862<PRE>
 863Usage: txt2tags [OPTIONS] [infile.t2t ...]
 864
 865  -t, --target=TYPE   set target document type. currently supported:
 866                      html, xhtml, sgml, tex, lout, man, mgp, wiki,
 867                      gwiki, doku, moin, pm6, txt
 868  -i, --infile=FILE   set FILE as the input file name ('-' for STDIN)
 869  -o, --outfile=FILE  set FILE as the output file name ('-' for STDOUT)
 870  -n, --enum-title    enumerate all title lines as 1, 1.1, 1.1.1, etc
 871  -H, --no-headers    suppress header, title and footer contents
 872      --headers       show header, title and footer contents (default ON)
 873      --encoding      set target file encoding (utf-8, iso-8859-1, etc)
 874      --style=FILE    use FILE as the document style (like HTML CSS)
 875      --css-sugar     insert CSS-friendly tags for HTML and XHTML targets
 876      --css-inside    insert CSS file contents inside HTML/XHTML headers
 877      --mask-email    hide email from spam robots. x@y.z turns &lt;x (a) y z&gt;
 878      --toc           add TOC (Table of Contents) to target document
 879      --toc-only      print document TOC and exit
 880      --toc-level=N   set maximum TOC level (depth) to N
 881      --rc            read user config file ~/.txt2tagsrc (default ON)
 882      --gui           invoke Graphical Tk Interface
 883  -q, --quiet         quiet mode, suppress all output (except errors)
 884  -v, --verbose       print informative messages during conversion
 885  -h, --help          print this help information and exit
 886  -V, --version       print program version and exit
 887      --dump-config   print all the config found and exit
 888
 889Turn OFF options:
 890     --no-outfile, --no-infile, --no-style, --no-encoding, --no-headers
 891     --no-toc, --no-toc-only, --no-mask-email, --no-enum-title, --no-rc
 892     --no-css-sugar, --no-css-inside, --no-quiet
 893
 894Example:
 895     txt2tags -t html --toc myfile.t2t
 896
 897By default, converted output is saved to 'infile.&lt;target&gt;'.
 898Use --outfile to force an output file name.
 899If  input file is '-', reads from STDIN.
 900If output file is '-', dumps output to STDOUT.
 901</PRE>
 902<P></P>
 903<H4>1.5.3.1. 示例</H4>
 904<P>
 905假设你已经编写好一个正确标记的文件 <CODE>file.t2t</CODE>,现在我们来尝试一些转换。
 906</P>
 907<TABLE>
 908<TR>
 909<TD><B>转换为HTML</B></TD>
 910<TD><CODE>$ txt2tags -t html file.t2t</CODE></TD>
 911</TR>
 912<TR>
 913<TD><B>转换为HTML,使用输出重定向</B></TD>
 914<TD><CODE>$ txt2tags -t html -o - file.t2t &gt; file.html</CODE></TD>
 915</TR>
 916<TR>
 917<TD></TD>
 918<TD>.</TD>
 919</TR>
 920<TR>
 921<TD><B>包含目录表</B></TD>
 922<TD><CODE>$ txt2tags -t html --toc file.t2t</CODE></TD>
 923</TR>
 924<TR>
 925<TD><B>带数字编号的目录表</B></TD>
 926<TD><CODE>$ txt2tags -t html --toc --enum-title file.t2t</CODE></TD>
 927</TR>
 928<TR>
 929<TD></TD>
 930<TD>.</TD>
 931</TR>
 932<TR>
 933<TD><B>内容概览</B></TD>
 934<TD><CODE>$ txt2tags --toc-only file.t2t</CODE></TD>
 935</TR>
 936<TR>
 937<TD><B>编号的概览</B></TD>
 938<TD><CODE>$ txt2tags --toc-only --enum-title file.t2t</CODE></TD>
 939</TR>
 940<TR>
 941<TD></TD>
 942<TD>.</TD>
 943</TR>
 944<TR>
 945<TD><B>从标准输入读取一行</B></TD>
 946<TD><CODE>$ echo -e "\n**bold**" | txt2tags -t html --no-headers -</CODE></TD>
 947</TR>
 948<TR>
 949<TD><B>Email地址识别测试</B></TD>
 950<TD><CODE>$ echo -e "\njohn.wayne@farwest.com" | txt2tags -t txt --mask-email --no-headers -</CODE></TD>
 951</TR>
 952<TR>
 953<TD><B>转换后编辑</B></TD>
 954<TD><CODE>$ txt2tags -t html -o- file.t2t | sed "s/&lt;BODY .*/&lt;BODY BGCOLOR=green&gt;/" &gt; file.html</CODE></TD>
 955</TR>
 956</TABLE>
 957
 958	<BLOCKQUOTE>
 959	提示:从1.6版本起,前处理和后处理可以通过 <CODE>%!preproc</CODE> 960	<CODE>%!postproc</CODE> 宏来完成。
 961	</BLOCKQUOTE>
 962<P></P>
 963<HR NOSHADE SIZE=1>
 964<P></P>
 965<A NAME="install"></A>
 966<H1>2. 第二部分 如何开始?</H1>
 967<P>
 968下载然后运行——一切就是这么简单。
 969</P>
 970<A NAME="download-python"></A>
 971<H2>2.1. 下载、安装Python</H2>
 972<P>
 973首先你必须下载安装Python解释器,如果你的系统已经安装过Python,请跳过本节。
 974</P>
 975<P>
 976Python是一种极好的编程语言,能够跨平台的在Windows、Linux、UNIX、Macintosh以及其他的操作系统上运行。你可以从<A HREF="http://www.python.org/">Python主页</A>找到安装文件以及安装指南。Txt2tags运行要求Python 2.0以后的版本。
 977</P>
 978<P>
 979如果你不确定是否已经安装过Python,请打开一个控制台(tty、xterm、MSDOS),输入命令 <CODE>python</CODE>,如果Python并未安装,系统会给出错误信息。
 980</P>
 981<A NAME="download-txt2tags"></A>
 982<H2>2.2. 下载txt2tags</H2>
 983<P>
 984Txt2tags的项目主页是<A HREF="http://txt2tags.org">http://txt2tags.org</A>。全部程序文件打包成一个tarball压缩文件(.tgz 文件),你可以使用大多数的压缩工具来提取(包括WinZip)。请下载<B>最新</B>的版本,早期版本仅仅作为历史存档之用。
 985</P>
 986<A NAME="install-txt2tags"></A>
 987<H2>2.3. 安装txt2tags</H2>
 988<P>
 989事实上,txt2tags只是一个单文件的Python脚本,毋需安装。
 990</P>
 991<P>
 992运行程序需要的唯一一个文件是脚本 <CODE>txt2tags</CODE>,压缩包内的其他文件是软件的文档、示例以及一些工具。
 993</P>
 994<P>
 995最低级的使用txt2tags的方法是直接通过Python来调用:
 996</P>
 997<PRE>
 998prompt$ python txt2tags
 999</PRE>
1000<P></P>
1001<P>
1002如果想将 txt2tags 作为一个能够直接运行的程序“安装”到系统,请将 txt2tags 脚本复制(或者创建一个链接)到系统 PATH 变量定义的目录,并且确认系统能够运行它。
1003</P>
1004<DL>
1005<DT>UNIX/Linux/Mac</DT><DD>
1006将脚本文件赋予执行权限(<CODE>chmod +x txt2tags</CODE>),然后复制到 $PATH 变量定义的目录下(比如:<CODE>cp txt2tags /usr/local/bin</CODE>)。
1007<P></P>
1008<DT>Windows</DT><DD>
1009重命名脚本文件,添加 .py 作为扩展名(命令行下执行:<CODE>ren txt2tags txt2tags.py</CODE>),然后复制到系统 PATH 环境变量定义的路径下(比如:<CODE>copy txt2tags.py C:\WINNT</CODE>1010</DL>
1011
1012<P>
1013如果想要使用图形用户接口,你可以创建一个桌面启动器(快捷方式)。
1014</P>
1015<H3>2.3.1. 为Windows用户专门打包的安装程序</H3>
1016<P>
1017对于Windows用户,txt2tags还有两个打包好的安装程序,你只需点击鼠标即可完成安装:
1018</P>
1019<UL>
1020<LI>单独的txt2tags脚本,针对已经安装过Python解释器的系统。
1021<LI>独立运行的版本,毋需另外安装Python解释器(包含一个嵌入的版本)。
1022</UL>
1023
1024<P>
1025你可以访问 <I>Txt2tags-Win</I> 主页下载安装包:<A HREF="http://txt2tags-win.sf.net/">http://txt2tags-win.sf.net/</A>
1026</P>
1027<A NAME="toc12"></A>
1028<H2>2.4. 安装编辑器的语法高亮文件</H2>
1029<P>
1030Txt2tags提供适合以下编辑器使用的语法高亮文件:
1031</P>
1032<UL>
1033<LI>Vim (<A HREF="http://www.vim.org">www.vim.org</A>)
1034<LI>Emacs (<A HREF="http://www.emacs.org">www.emacs.org</A>)
1035<LI>Nano (<A HREF="http://www.nano-editor.org">www.nano-editor.org</A>)
1036<LI>Kate (<A HREF="http://kate.kde.org">http://kate.kde.org</A>)
1037<LI>gedit ( <A HREF="http://www.gnome.org/projects/gedit/">http://www.gnome.org/projects/gedit/</A>)
1038<LI>TextMate (<A HREF="http://macromates.com/">http://macromates.com/</A> )
1039</UL>
1040
1041<P>
1042语法高亮文件包含全部txt2tags标记和规则,以帮助用户编写出无误的文档——正确书写的标记将以彩色显示。
1043</P>
1044<TABLE ALIGN="center">
1045<TR>
1046<TD ALIGN="center"><center><IMG ALIGN="middle" SRC="./img/vim.png" BORDER="0" ALT=""></center></TD>
1047</TR>
1048<TR>
1049<TD ALIGN="center">用Vim打开示例文件</TD>
1050</TR>
1051</TABLE>
1052
1053<P>
1054语法文件对于不同的编辑器有不同的安装过程,请参考语法文件的头部说明和编辑器的文档。
1055</P>
1056<HR NOSHADE SIZE=1>
1057<P></P>
1058<A NAME="your-1st-doc"></A>
1059<H1>3. 第三部分 第一个文档</H1>
1060<A NAME="toc14"></A>
1061<H2>3.1. 先利其器</H2>
1062<P>
1063你需要三件工具来完成你的第一次转换尝试:txt2tags,一个文本编辑器和一个网络浏览器。
1064</P>
1065<OL>
1066<LI>确认一下txt2tags是否已经安装并且能够正确运行。
1067  <UL>
1068  <LI><B>命令行方式</B>:执行“<CODE>txt2tags</CODE>”命令,程序会返回一个“缺少输入文件(Missing input file)”的信息。如果不能正确运行,尝试使用“<CODE>python /path/to/txt2tags</CODE>”,甚至“<CODE>/path/to/python /path/to/txt2tags</CODE>”以防止Python不在环境变量定义的路径中。
1069  <LI><B>图形化操作</B>:点击程序图标启动图形界面。
1070  </UL>
1071<LI>开启你喜欢的文本编辑器——任何一个都行,无论是古老的 VI,还是 M$ Word,乃至 OpenOffice.org。用编辑器创建一个空文档作为你的第一个txt2tags源文件。
1072<LI>启动你偏爱的浏览器,用来查看转换得到的HTML网页。
1073</OL>
1074
1075<A NAME="toc15"></A>
1076<H2>3.2. 编写文档头部</H2>
1077<OL>
1078<LI>在编辑器中,在第一行写上文档的主标题:<I>我的第一个文档</I>
1079<LI>在第二行写上子标题:<I>txt2tags测试</I>
1080<LI>然后在第三行写上时间,比如:<I>星期日,2009</I>
1081</OL>
1082
1083<P>
1084如果一切正常,现在你可以看到一个包含三行内容的文档:
1085</P>
1086<PRE>
1087我的第一个文档
1088txt2tags测试
1089星期日,2009
1090</PRE>
1091<P></P>
1092<P>
1093这只是一般文档的一部分,但是我们已经可以用它来尝试一下转换工作了。
1094</P>
1095<P>
1096将文档以文件名 <CODE>test.txt</CODE> 保存,记得要记住保存的路径,因为一会儿你要用到它。
1097</P>
1098<A NAME="toc16"></A>
1099<H2>3.3. 第一次转换——图形界面操作</H2>
1100<P>
1101如果你使用命令行,请跳过本节,直接阅读下一节。
1102</P>
1103<P>
1104如果你使用图形界面,请跟着我做:
1105</P>
1106        <center><IMG ALIGN="middle" SRC="./img/firstdoc.png" BORDER="0" ALT=""></center> 
1107<OL>
1108<LI>点击“Browse”按钮,选择你刚才保存的 <CODE>test.txt</CODE> 文件。
1109<LI>回到第一个窗口,在“Target document type”下拉菜单中选择“HTML page”。
1110<LI>点击“Convert!”按钮。
1111</OL>
1112
1113        <center><IMG ALIGN="middle" SRC="./img/firstdoc-done.png" BORDER="0" ALT=""></center> 
1114<P>
1115这时会弹出一个对话框,告诉你文件已经成功的转换了。生成的HTML文件与源文件在同一个文件夹下,以“html”为扩展名。
1116</P>
1117<A NAME="toc17"></A>
1118<H2>3.4. 第一次转换——命令行方式</H2>
1119<P>
1120如果你使用图形界面,请跳过本节直接阅读下一节。
1121</P>
1122<P>
1123如果你使用命令行方式,请切换到源文件所在的目录,执行:
1124</P>
1125<PRE>
1126txt2tags --target html test.txt
1127</PRE>
1128<P></P>
1129<P>
1130请注意:在命令的各部分中间以空格分隔,但是在选项字符串“<CODE>--target</CODE>”内部不能有空格,这个选项后面紧跟着字符串“<CODE>html</CODE>”,告诉程序你想要的目标文件格式。最后一部分是源文件的文件名。
1131</P>
1132<P>
1133如果转换正常完成,结果会存储到文件 <CODE>test.html</CODE> 中,同时给出“<I>txt2tags wrote test.html</I>”的信息。如果不是这样,程序会报错,提示你可能出错了,请仔细检查一下。
1134</P>
1135<P>
1136一个示例:
1137</P>
1138<PRE>
1139prompt$ txt2tags --target html test.txt
1140txt2tags wrote test.html
1141prompt$
1142</PRE>
1143<P></P>
1144<A NAME="toc18"></A>
1145<H2>3.5. 查看结果</H2>
1146<P>
1147用浏览器打开文件 <CODE>test.html</CODE> 以检查是否正常。
1148</P>
1149        <center><IMG ALIGN="middle" SRC="./img/firstdoc-html.png" BORDER="0" ALT=""></center> 
1150<P>
1151看见结果了吗!你只是简单的输入了三行文字,txt2tags则为你完成了所有设置HTML文件头部信息的工作:对齐方式、大小、间隔以及外观。文档的主标题同时也出现在了浏览器的标题栏中。
1152</P>
1153<TABLE ALIGN="center" BORDER="1">
1154<TR>
1155<TH>你只需输入文本,txt2tags帮你搞定一切 ;)</TH>
1156</TR>
1157</TABLE>
1158
1159<P>
1160提示:txt2tags生成的HTML页还能使用外部CSS,以实现对页面外观100%的定制。
1161</P>
1162<A NAME="toc19"></A>
1163<H2>3.6. 编写文档体</H2>
1164<P>
1165现在返回文本编辑器进行下一步:撰写文档的内容。你可以像平日里撰写电子邮件一样的输入文字,毋需特别的“标记”,txt2tags会自动识别出段落和列表。
1166</P>
1167<P>
1168然后,再一次:保存、转换再查看结果。这就是txt2tags文档的编写流程。你可以把精力放在内容上,更快的完成文件的编写——毋需点鼠标,毋需菜单,没有窗口,没有什么来分散你的注意力。
1169</P>
1170<P>
1171假设文件 <CODE>test.txt</CODE> 中写上了如下的内容,完全的纯文本,将它们跟生成的HTML文件做一个对比:
1172</P>
1173<PRE>
1174我的第一个文档
1175txt2tags测试
1176星期日,2009
1177
1178现在我们来试一试txt2tags好了。我也不晓得该写点啥……
1179
1180唔……好吧,列一下我马上该去做的事情:
1181- 洗个澡
1182- 吃块批萨
1183- 去睡觉
1184</PRE>
1185<P></P>
1186        <center><IMG ALIGN="middle" SRC="./img/firstdoc-fullhtml.png" BORDER="0" ALT=""></center> 
1187<P>
1188你毋需任何HTML语言的准备知识就能够编写出完整的主页,不必插入任何标记。进一步,同一个源文件还可以转换为其他任何txt2tags所支持的格式。
1189</P>
1190<P>
1191除了纯文本之外,txt2tags有一些非常简单的标记来实现其他的格式和文档结构,比如<B>粗体</B><I>斜体</I>、标题、图片、表格,等等。举个简单的例子,<CODE>**产生粗体**</CODE><CODE>== 得到标题 ==</CODE>。详情请参阅<A HREF="http://txt2tags.sourceforge.net/zh/markup-zh.html">标记示例(Txt2tags Markup Demo)</A>1192</P>
1193<HR NOSHADE SIZE=1>
1194<P></P>
1195<A NAME="concepts"></A>
1196<H1>4. 第四部分 掌握txt2tags的结构</H1>
1197<A NAME="areas"></A>
1198<H2>4.1. 文档的各个部分</H2>
1199<P>
1200Txt2tags的标记文本可以分为三个部分,每个部分各自的规则,实现不同的功能,包括:
1201</P>
1202<DL>
1203<DT><I>头部域(Header Area)</I></DT><DD>
1204放置文档标题、作者、版本号以及日期信息。可选区域。
1205<DT><I>设置域(Config Area)</I></DT><DD>
1206定义全局设定,修改解析时行为(Place for general Document Settings and Parser behavior modifiers.)。可选区域。
1207<DT><I>主体域(Body Area)</I></DT><DD>
1208文件内容。必须的区域。
1209</DL>
1210
1211<P>
1212前两个区域是可选的,只有 <I>主体域</I> 是必须的。
1213</P>
1214<P>
1215各个区域之间的分隔方式比较特别,下一章会详细描述,现在我们给出一个直观的图形化的描述:
1216</P>
1217<PRE>
1218             ____________
1219            |            |
1220            |   HEADERS  |       1. First, the Headers
1221            |            |
1222            |   CONFIG   |       2. Then the Settings
1223            |            |
1224            |    BODY    |       3. And finally the Document Body,
1225            |            |
1226            |    ...     |          which goes until the end
1227            |    ...     |
1228            |____________|
1229
1230</PRE>
1231<P></P>
1232<P>
1233简单的说,各个部分是这样定义的:
1234</P>
1235<TABLE ALIGN="center">
1236<TR>
1237<TD ALIGN="center"><B>头部域</B></TD>
1238<TD>文件内容的前三行;或者第一行是空白行,表示“没有头部”。</TD>
1239</TR>
1240<TR>
1241<TD ALIGN="center"><B>设置域</B></TD>
1242<TD>紧接着头部(第四行或者第二行)开始,结束于<I>主体域</I>的开始。</TD>
1243</TR>
1244<TR>
1245<TD><B>主体域</B></TD>
1246<TD><I>头部</I>区域之后的第一个有效的行(非注释或设置)开始。</TD>
1247</TR>
1248</TABLE>
1249
1250<H3>4.1.1. 完整的示例</H3>
1251<PRE>
1252My nice doc Title
1253Mr. John Doe
1254Last Updated: %%mtime(%c)
1255
1256%! Target  : html
1257%! Style   : fancy.css
1258%! Encoding: iso-8859-1
1259%! Options : --toc --enum-title
1260
1261Hi! This is my test document.
1262Its content will end here.
1263</PRE>
1264<P></P>
1265<A NAME="headers-area"></A>
1266<H2>4.2. 头部域</H2>
1267<P>
1268位置:
1269</P>
1270<UL>
1271<LI>固定位置:文件的<B>头三行</B>1272<LI>固定位置:文件的<B>第一行</B>,并且为空白行。这意味着“没有头部”。
1273</UL>
1274
1275<P>
1276头部是唯一固定位置和行数的区域,总是出现在源文件的头三行。各行的内容可以随意,并没有特别的要求。不过,对于大多数的文档,推荐以下的内容作为头部:
1277</P>
1278<UL>
1279<LI><I>第一行</I>:文档标题
1280<LI><I>第二行</I>:作者姓名和(或)邮件地址
1281<LI><I>第三行</I>:文档的编写日期和(或)版本号(推荐使用宏 <CODE>%%date</CODE>1282</UL>
1283
1284<P>
1285请记住:源文件的头三行将会是目标文件的头三行,在目标文件中会以高的对比与文档内容相区分(比如:大号字体,粗体)。如果允许分页,头部将会单独的在第一页居中显示。
1286</P>
1287<H4>较少(或无)头部</H4>
1288<P>
1289有些时候作者会希望少于三行的头部,仅仅给出文档标题和(或)日期信息,这时只需将第二行和(或)第三行留为空行,这部份就不会在目标文件中显示。但是,请切记:即使是留为空白,这些行仍然是头部的一部分,主体域总是在这三行之后开始。
1290</P>
1291<P>
1292只有标题(第一行)是必须的,但是你也可以把它留白,这意味着文档<B>没有头部</B>,而主体域就紧接着从第二行开始。如果你打算在完成转换之后再来定制头部信息,那么没有头部的选择是很有用的。命令行选项 <CODE>--no-headers</CODE> 通常用来完成这一操作。
1293</P>
1294<H4>总结</H4>
1295<P>
1296简而言之:“<B>头部只是<U>位置</U>,而非内容</B>1297</P>
1298<P>
1299源文件的第一行会出现在目标文件的第一行,二三行同样。
1300</P>
1301<A NAME="config-area"></A>
1302<H2>4.3. 设置域</H2>
1303<P>
1304位置:
1305</P>
1306<UL>
1307<LI>紧接着头部区域之后开始
1308 <UL>
1309 <LI>如果定义了<B>头部</B>则从<B>第四行</B>开始
1310 <LI>如果<B>无头部</B>,则从<B>第二行</B>开始
1311 </UL>
1312<LI>结束于主体域开始
1313 <UL>
1314 <LI>结束于一个非属性设定,空白或者注释行
1315 </UL>
1316</UL>
1317
1318<P>
1319设置域是可选的。普通用户甚至可以编写出许多txt2tags文档,却不知道这个区域的存在,但是有经验的用户往往受益于它提供的有效的控制功能。设置域用来记录具体文档的设置,这样就省略了转换时繁杂的命令行选项。比如说,你可以设定好缺省的目标文件类型和字符编码。在“<A HREF="#settings">设定</A>”一节中对此有详细的叙述。
1320</P>
1321<A NAME="body-area"></A>
1322<H2>4.4. 主体域</H2>
1323<P>
1324位置:
1325</P>
1326<UL>
1327<LI>开始于第一个有效行
1328 <UL>
1329 <LI>头部、设置域以及注释都<B>不是</B>有效的行。
1330 </UL>
1331<LI>结束于文件的末尾(EOF)
1332</UL>
1333
1334<P>
1335除了头部和设置域以外的所有内容都是主体域。主体域包含来了文件的内容以及txt2tags支持的所有格式和文档结构的信息。在主体域内你也可以放置注释,作为 <I>TODOs</I> 和自提示。
1336</P>
1337<P>
1338命令行选项 <CODE>--no-headers</CODE> 会忽略头部,只转换主体域的内容。这是很有用的:你可以用单独的文件来定义头部,然后与转换后的主体域连接起来。
1339</P>
1340<A NAME="settings-overview"></A>
1341<H2>4.5. 设定</H2>
1342<P>
1343设定(Settings)是特殊的配置选项,位于文档的设置域内,用以控制转换的过程。设定的语法如:
1344</P>
1345<PRE>
1346$! 关键词 : 设定值
1347</PRE>
1348<P></P>
1349<P>
1350以下是有效的关键词列表:
1351</P>
1352<TABLE ALIGN="center" BORDER="1">
1353<TR>
1354<TH>关键词</TH>
1355<TH>描述</TH>
1356</TR>
1357<TR>
1358<TD ALIGN="center">target</TD>
1359<TD>设定缺省的目标文件格式。</TD>
1360</TR>
1361<TR>
1362<TD ALIGN="center">options</TD>
1363<TD>设定缺省的转换选项,格式与命令行选项相同。</TD>
1364</TR>
1365<TR>
1366<TD ALIGN="center">style</TD>
1367<TD>设定文档样式。主要用作为HTML/XHTML文档定义外联的CSS样式表,以及为LaTeX文档加载宏包。</TD>
1368</TR>
1369<TR>
1370<TD ALIGN="center">encoding</TD>
1371<TD>设定字符编码。当文档包含国际化字符和非ASCII字符时需要指定编码。</TD>
1372</TR>
1373<TR>
1374<TD ALIGN="center">preproc</TD>
1375<TD>输入文件处理。设定应用于源文件的主体域中的“查找/替换”规则。</TD>
1376</TR>
1377<TR>
1378<TD ALIGN="center">postproc</TD>
1379<TD>输出文件处理。设定应用与输出文件中的“查找/替换”规则。</TD>
1380</TR>
1381</TABLE>
1382
1383<P>
1384示例:
1385</P>
1386<PRE>
1387%! Target  : html
1388%! Options : --toc --toc-level 3
1389%! Style   : fancy.css
1390%! Encoding: iso-8859-1
1391%! PreProc : "AMJ"        "Aurelio Marinho Jargas"
1392%! PostProc: '&lt;BODY.*?&gt;'  '&lt;BODY bgcolor="yellow"&gt;'
1393</PRE>
1394<P></P>
1395<A NAME="cmd-options"></A>
1396<H2>4.6. 命令行选项</H2>
1397<P>
1398改变txt2tags默认行为最快捷的方式是使用命令行选项。顾名思义,这些选项只能应用于命令行方式,不适用于GUI和Web界面。
1399</P>
1400<P>
1401与其他工具一样,程序接受一串预定义的选项,每个选项都是由一个单连字符引导的字母,或者两个连续的连字符引导的一个或多个单词,比如 <CODE>-t</CODE><CODE>--target</CODE>。“target”选项是唯一的一个必须的选项,其他的都是可省略的选项。
1402</P>
1403<P>
1404常用的选项包括:<CODE>--outfile</CODE>,指定输出文件名;<CODE>--toc</CODE>,自动生成目录表;<CODE>--encoding</CODE>,设定文档的字符编码。大多数的选项可以通过前缀一个“<CODE>no-</CODE>”来关闭,比如:<CODE>--no-encoding</CODE><CODE>--no-toc</CODE>1405</P>
1406<P>
1407使用 <CODE>%!options</CODE> 的格式,你可以在源文件的设置域设定需要的选项,这样在命令行中就可以省略掉这些选项了。比如:<CODE>%!options: --toc -o mydoc.html</CODE>。目标文件格式的指定是个例外,它有自己的格式:<CODE>%!target: html</CODE>1408</…

Large files files are truncated, but you can click here to view the full file