PageRenderTime 39ms CodeModel.GetById 16ms RepoModel.GetById 1ms app.codeStats 0ms

/doc/English/tags-reference.html

http://txt2tags.googlecode.com/
HTML | 2737 lines | 2329 code | 406 blank | 2 comment | 0 complexity | ee2cbfb0f5396e258acb153620cf0665 MD5 | raw file
Possible License(s): GPL-2.0, GPL-3.0, WTFPL
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  2. <HTML>
  3. <HEAD>
  4. <META NAME="generator" CONTENT="http://txt2tags.org">
  5. <TITLE>All TAGS Reference</TITLE>
  6. </HEAD><BODY BGCOLOR="white" TEXT="black">
  7. <CENTER>
  8. <H1>All TAGS Reference</H1>
  9. </CENTER>
  10. <H1 ID="Introduction">Introduction</H1>
  11. <P>
  12. This document is a reference for all available TAGS available to
  13. developers for adding new targets, as found in the <I>getTags()</I> function.
  14. It is intended for <B>advanced users</B> and <B>developers</B> who wish to
  15. add a new target to Txt2tags without needing to know the source code
  16. in detail.
  17. </P>
  18. <P>
  19. This reference will describe all available tags, including how and
  20. where they will appear in the final tagged document, how the various
  21. rules in the <I>getRules()</I> function affect them, and what special
  22. characters and macros are expanded in the output.
  23. </P>
  24. <P>
  25. Txt2tags has fairly complex rules and gotchas, and it can be
  26. difficult searching through the entire source code to see exactly
  27. what each tag does. Often, when creating a new target, a developer
  28. is surprised when the output is not quite how it was expected to be,
  29. and in particular that certain tags did not behave as expected. It
  30. is hoped that this reference will make it easier to create new
  31. targets with fewer bugs and surprises, so txt2tags can continue to
  32. grow as "one source, many targets".
  33. </P>
  34. <H1 ID="chapter-ThePartsofaDocument">1. The Parts of a Document</H1>
  35. <P>
  36. Before looking at the individual tags, it is important to understand
  37. exactly how the different parts of a document fit together.
  38. </P>
  39. <P>
  40. A document is built from a <B>template</B>, which is filled with the
  41. document's <B>headers</B>, <B>body</B>, and an optional <B>table of contents</B>.
  42. </P>
  43. <H2 ID="section-Template">1.1. Template</H2>
  44. <P>
  45. The template of a document consists of the basic opening and closing
  46. markup that all examples of that type of file must have. All
  47. supported targets have a default template included in the source
  48. code, in the <I>HEADER_TEMPLATE</I> area. Alternatively, the user may
  49. use a custom header using the <I>--template</I> command line option.
  50. </P>
  51. <P>
  52. Templates should make use of the <B>%(HEADER1)s</B>, <B>%(HEADER2)s</B>,
  53. and <B>%(HEADER3)s</B> macros, as well as <B>%(ENCODING)s</B> and
  54. <B>%(STYLE)s</B> if the target supports character encodings and
  55. external stylesheets. These macros will be replaced with the
  56. appropriate values from the source document. If any value is blank,
  57. the entire line including the macro is removed unless the target has
  58. included the rule <A HREF="#keepblankheaderline">'keepblankheaderline'</A>.
  59. </P>
  60. <P>
  61. It is not required, but by convention <B>HEADER1</B> refers to the title,
  62. <B>HEADER2</B> to the author, and <B>HEADER3</B> to the date the document was
  63. created. Several targets reflect this convention in their use of the
  64. <B>HEADER</B> metadata in their default templates.
  65. </P>
  66. <P>
  67. Custom templates must also include the <B>%(BODY)s</B> macro, which
  68. will be expanded to the fully tagged body of the document. The
  69. default template should not include this, as it is automatically
  70. added to the end of the <I>HEADER_TEMPLATE</I> text.
  71. </P>
  72. <H2 ID="section-BodyText">1.2. Body Text</H2>
  73. <P>
  74. The body of a document consists of the fully tagged text converted
  75. from the original source document. It is nothing more or less than
  76. the original document with all txt2tags markup removed, and replaced
  77. with the target-specific markup. All of the tags from <I>getTags()</I>
  78. end up in this section, along with all user text.
  79. </P>
  80. <P>
  81. The document is parsed into blocks, and each block is processed line
  82. by line. Note that this seraration of lines is kept throughout the
  83. process, and in nearly all cases the final tagged text is broken in
  84. the same locations as the original. This is important to remember,
  85. as several tags depend on this line by line behaviour, and their
  86. output changes that line it self, not the block.
  87. </P>
  88. <H2 ID="section-TableofContents">1.3. Table of Contents</H2>
  89. <P>
  90. Txt2tags is able to add a table of contents to the output document.
  91. If the target supports creating a table of contents itself, Txt2tags
  92. can take advantage of that. Otherwise, Txt2tags can generate a table
  93. of contents automatically and insert it where appropriate.
  94. </P>
  95. <P>
  96. If the command line option <I>--toc</I> is used, Txt2tags will add a
  97. table of contents to the output. If the command line option
  98. <I>--toc-only</I> is used, then the table of contents will be the only
  99. thing output, and the rest of the body text will not.
  100. </P>
  101. <P>
  102. By default, the table of contents will be emitted as the first text
  103. in the body of the document. That is, it will be emitted directly
  104. after <A HREF="#bodyOpen">bodyOpen</A> and before the main text. If this is not
  105. appropriate, the user can insert the <B>%%toc</B> macro into the source
  106. text, and it will be emitted there instead.
  107. </P>
  108. <P>
  109. Full details on how the table of contents is emitted is given in the
  110. section on the Table of Contents tags.
  111. </P>
  112. <H2 ID="section-Escapes">1.4. Escapes</H2>
  113. <P>
  114. One final note, though this is not really part of the document
  115. structures. Most text is processed throught the functions
  116. <I>doEscape()</I> and <I>doFinalEscape()</I> before being emitted in the
  117. final output. This is used to allow certain characters that may give
  118. problems in Txt2tags, such as backslashes or characters that are the
  119. same as Txt2tags markup.
  120. </P>
  121. <P>
  122. The emitted tags are not processed by these functions at all. Some
  123. tags also prevent parts of the text from being processed by these
  124. functions. The reference will note when this is the case.
  125. </P>
  126. <H1 ID="chapter-BasicBlocks">2. Basic Blocks</H1>
  127. <H2 ID="section-Paragraphs">2.1. Paragraphs</H2>
  128. <P>
  129. Paragraphs are the most common, and most basic of all text blocks.
  130. They are the simple, regular body text of the document.
  131. </P>
  132. <P>
  133. If the rule <A HREF="#blanksaroundpara">'blanksaroundpara'</A> is defined, an empty line will be
  134. emitted before and after the paragraph and tags.
  135. </P>
  136. <P>
  137. If the rule <A HREF="#onelinepara">'onelinepara'</A> is defined, the paragraph text will have
  138. all newlines removed and replaced with spaces, emitting the
  139. paragraph as a single line.
  140. </P>
  141. <H3 ID="paragraphOpen">paragraphOpen</H3>
  142. <P>
  143. This tag is emitted, on its own line, before each paragraph of body
  144. text. If this tag (and <A HREF="#paragraphClose">paragraphClose</A>) are not defined for a
  145. target, the body text is simply printed as unadorned plain text,
  146. much like the source document.
  147. </P>
  148. <DL>
  149. <DT>Macros:</DT><DD>
  150. <DL>
  151. <DT><B>~D~</B></DT><DD>
  152. If this macro is included in the tag, it will be expanded to the
  153. value of the depth of that particular paragraph. Most paragraphs
  154. have depth '1', pargraphs inside a top-level list will have
  155. depth level '2', and so on.
  156. <P></P>
  157. If the rule <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A> is defined for the target,
  158. the depth value will be multiplied by that amount before being
  159. emitted. If the rule <A HREF="#depthmultiplyplus">'depthmultiplyplus'</A> is defined, then that
  160. value will be added to the depth before multiplying by
  161. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>, but only if used with
  162. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>.
  163. <P></P>
  164. If the rule <A HREF="#zerodepthpara">'zerodepthpara'</A> is defined, then top-level
  165. paragraphs (those not nested inside a list) will always have
  166. <B>~D~</B> replaced with '0', regardless of the other rules.
  167. </DL>
  168. </DL>
  169. <H3 ID="paragraphClose">paragraphClose</H3>
  170. <P>
  171. This tag is emitted, on its own line, after each paragraph of body
  172. text.
  173. </P>
  174. <DL>
  175. <DT>Macros</DT><DD>
  176. None
  177. </DL>
  178. <H2 ID="section-BlockQuotations">2.2. Block Quotations</H2>
  179. <P>
  180. Block quotes are paragraphs that are set apart from regular
  181. paragraphs, usually to show that they are quoted from some external
  182. source.
  183. </P>
  184. <P>
  185. Note that, at this time, Txt2tags is not able to emit multiple
  186. paragraphs within a single block quote. Each separate paragraph
  187. will be emitted as a separate block quote with Open and Close tags.
  188. </P>
  189. <P>
  190. Nested block quotes are allowed, unless the rule <A HREF="#quotenotnested">'quotenotnested'</A>
  191. is defined for the target.
  192. </P>
  193. <P>
  194. If the rule <A HREF="#keepquoteindent">'keepquoteindent'</A> is defined, then each line of the
  195. block quote will have tab characters added before the text equal to
  196. the depth of that quote.
  197. </P>
  198. <P>
  199. If the rule <A HREF="#blanksaroundquote">'blanksaroundquote'</A> is defined, an extra blank line is
  200. emitted before and after the block quote.
  201. </P>
  202. <H3 ID="blockQuoteOpen">blockQuoteOpen</H3>
  203. <P>
  204. This tag is emitted, on its own line, before each paragraph of a
  205. block quote.
  206. </P>
  207. <P>
  208. The block depth is given by a number of tab characters.
  209. <CODE>blockQuoteOpen</CODE> will have these tabs inserted before the tag,
  210. unless the rule <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined.
  211. </P>
  212. <DL>
  213. <DT>Macros:</DT><DD>
  214. <DL>
  215. <DT><B>~D~</B></DT><DD>
  216. If this macro is included in the tag, it will be expanded to the
  217. value of the depth of that particular block quote paragraph. The
  218. first Block Quote has a depth level of '1'. A quote nested
  219. within the first will have a depth of '2', and so on.
  220. <P></P>
  221. If the rule <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A> is defined for the target,
  222. the depth value will be multiplied by that amount before being
  223. emitted. If the rule <A HREF="#depthmultiplyplus">'depthmultiplyplus'</A> is defined, then that
  224. value will be added to the depth before multiplying by
  225. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>, but only if used with
  226. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>.
  227. </DL>
  228. </DL>
  229. <H3 ID="blockQuoteLine">blockQuoteLine</H3>
  230. <P>
  231. If this tag is present, it will be added before each line of the
  232. block quote.
  233. </P>
  234. <P>
  235. This tag is emitted multiple times for nested quotes, one copy of
  236. the tag for each level of depth. For example, if the quote is
  237. defined as '*', then for a third-level nested quote each line
  238. will begin with '***'.
  239. </P>
  240. <P>
  241. If the rule <A HREF="#keepquoteindent">'keepquoteindent'</A> is defined, all copies of this tag
  242. are emitted after the tab characters and before the quote text.
  243. </P>
  244. <DL>
  245. <DT>Macros:</DT><DD>
  246. None
  247. </DL>
  248. <H3 ID="blockQuoteClose">blockQuoteClose</H3>
  249. <P>
  250. This tag is emitted, on its own line, at the end of each block
  251. quote.
  252. </P>
  253. <P>
  254. The block depth is given by a number of tab characters.
  255. <CODE>blockQuoteClose</CODE> will have these tabs inserted before the tag,
  256. unless the rule <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined.
  257. </P>
  258. <DL>
  259. <DT>Macros:</DT><DD>
  260. None
  261. </DL>
  262. <H2 ID="section-VerbatimBlocks">2.3. Verbatim Blocks</H2>
  263. <P>
  264. Verbatim blocks are used when the user needs to keep control over
  265. the spaces and line breaks of a block of text. Verbatim blocks are
  266. usually emitted in a monospace font, and all spaces and line breaks
  267. will be the same as in the source text. It is commonly used for
  268. ASCII art and for source code listings.
  269. </P>
  270. <P>
  271. Note that this is not the same as raw text. Raw text blocks are
  272. emitted exactly as they are in the source text, with no processing.
  273. Verbatim blocks are processed, and are emitted so that they
  274. <I>appear</I> the same as in the source text.
  275. </P>
  276. <P>
  277. By default, verbatim blocks are passed through <I>doEscape()</I> but
  278. not <I>doFinalEscape()</I>. If the rule <A HREF="#verbblocknotescaped">'verbblocknotescaped'</A> is
  279. defined, the text will not be passed through <I>doEscape()</I>. If the
  280. rule <A HREF="#verbblockfinalescape">'verbblockfinalescape'</A> is defined, then the text will be be
  281. passed through <I>doFinalEscape()</I>.
  282. </P>
  283. <P>
  284. If the rule <A HREF="#indentverbblock">'indentverbblock'</A> is defined, then each line of the
  285. text will be emitted with two spaces inserted before the text.
  286. </P>
  287. <P>
  288. If the rule <A HREF="#blanksaroundverb">'blanksaroundverb'</A> is defined, an extra blank line
  289. will be emitted before and after the verbatim block.
  290. </P>
  291. <P>
  292. Note that the entire verbatim area is emitted as a single block.
  293. Blank lines within a verbatim block do not separate paragraphs.
  294. </P>
  295. <H3 ID="blockVerbOpen">blockVerbOpen</H3>
  296. <P>
  297. This tag is emitted, on its own line, before each block of verbatim
  298. text.
  299. </P>
  300. <DL>
  301. <DT>Macros:</DT><DD>
  302. None
  303. </DL>
  304. <H3 ID="blockVerbLine">blockVerbLine</H3>
  305. <P>
  306. This tag is emitted before each line of text in the verbatim block.
  307. Some targets require this to keep the entire verbatim block
  308. together, or to maintain formatting.
  309. </P>
  310. <P>
  311. If the rule <A HREF="#indentverbblock">'indentverbblock'</A> is defined, this tag is emitted
  312. after the spaces used for the indent, before the block text.
  313. </P>
  314. <DL>
  315. <DT>Macros:</DT><DD>
  316. None
  317. </DL>
  318. <H3 ID="blockVerbSep">blockVerbSep</H3>
  319. <P>
  320. This tag is emitted, on a line by itself, in between each line of
  321. text in the verbatim block.
  322. </P>
  323. <DL>
  324. <DT>Macros:</DT><DD>
  325. None
  326. </DL>
  327. <H3 ID="blockVerbClose">blockVerbClose</H3>
  328. <P>
  329. This tag is emitted, on its own line, after each block of verbatim
  330. text.
  331. </P>
  332. <DL>
  333. <DT>Macros:</DT><DD>
  334. None
  335. </DL>
  336. <H1 ID="chapter-InlineTags">3. Inline Tags</H1>
  337. <P>
  338. These tags are used to add additional formatting to text within the
  339. basic blocks. They are useable within regular paragraphs and block
  340. quotes, and unless otherwise noted, within lists and tables as
  341. well.
  342. </P>
  343. <P>
  344. All of these tags are inline, meaning that they do not begin or end
  345. blocks and do not add or remove lines of text.
  346. </P>
  347. <H2 ID="section-TextBeautifiers">3.1. Text Beautifiers</H2>
  348. <P>
  349. These are the simple tags used to change how text appears in the
  350. final output.
  351. </P>
  352. <P>
  353. None of these tags use any special macros.
  354. </P>
  355. <H3 ID="fontItalic">fontItalicOpen, fontItalicClose</H3>
  356. <P>
  357. These tags are emitted, respectively, immediately before and after
  358. some text that should appear in <I>italics</I> for emphasis.
  359. </P>
  360. <H3 ID="fontBold">fontBoldOpen, fontBoldClose</H3>
  361. <P>
  362. These tags are emitted, respectively, immediately before and after
  363. some text that should appear in <B>bold</B> for strong emphasis.
  364. </P>
  365. <H3 ID="fontUnderline">fontUnderlineOpen, fontUnderlineClose</H3>
  366. <P>
  367. These tags are emitted, respectively, immediately before and after
  368. some text that should appear <U>underlined</U>.
  369. </P>
  370. <H3 ID="fontStrike">fontStrikeOpen, fontStrikeClose</H3>
  371. <P>
  372. These tags are emitted, respectively, immediately before and after
  373. some text that should appear <S>struck out</S>.
  374. </P>
  375. <H3 ID="fontMono">fontMonoOpen, fontMonoClose</H3>
  376. <P>
  377. These tags are emitted, respectively, immediately before and after
  378. some text that should appear in a <CODE>monospaced</CODE> font, such as
  379. inline source code.
  380. </P>
  381. <H2 ID="section-Links">3.2. Links</H2>
  382. <P>
  383. These tags are used to insert links to external files, pages, or
  384. resources, as well as internal links within the document itself.
  385. </P>
  386. <P>
  387. The link text itself is a <B>url</B>. Ordinarily, urls are not escaped
  388. so as to preserve all characters within it exactly as typed. It the
  389. rule <A HREF="#escapeurl">'escapeurl'</A> is defined for a target, the url will be passed
  390. through <I>doEscape()</I> after all. Additionally, if the rule
  391. <A HREF="#linkable">'linkable'</A> is not defined, signalling that this target does not
  392. support true links, then the url will be escaped as well.
  393. </P>
  394. <H3 ID="url">url</H3>
  395. <P>
  396. This tag is used to insert a bare url without a label.
  397. </P>
  398. <DL>
  399. <DT>Macros:</DT><DD>
  400. <DL>
  401. <DT><B>\a</B></DT><DD>
  402. This mark within the tag will be expanded into the text of the
  403. url itself. For example, if the <CODE>url</CODE> tag is '[url=\a]'
  404. and the url in the source document in 'example.com', then
  405. the text '[url=example.com]' will be emitted.
  406. </DL>
  407. </DL>
  408. <H3 ID="urlMark">urlMark</H3>
  409. <P>
  410. This tag is used for a link with a label. The label will appear in
  411. the final document, possibly formatted differently to set it apart,
  412. but it will function as a link to the url.
  413. </P>
  414. <DL>
  415. <DT>Macros:</DT><DD>
  416. <DL>
  417. <DT><B>\a</B></DT><DD>
  418. This mark should appear twice in the tag. The first instance is
  419. expanded to the text of the url, the second instance is expanded
  420. to the text of the label.
  421. <P></P>
  422. If the rule <A HREF="#labelbeforelink">'labelbeforelink'</A> is defined for the target, then
  423. the first instance is the label, and the second instance is the
  424. url.
  425. <P></P>
  426. If the rule <A HREF="#imglinkable">'imglinkable'</A> is defined for the target, then an
  427. <A HREF="#img">img</A> tag (see below) is allowed as the label.
  428. </DL>
  429. </DL>
  430. <H3 ID="urlMarkAnchor">urlMarkAnchor</H3>
  431. <P>
  432. This tag is used if the url begins with a '#', designating an
  433. internal link to an anchor within the document. Some targets require
  434. a different tag for internal links than for external links.
  435. </P>
  436. <P>
  437. This tag otherwise behaves identically as <A HREF="#urlMark">urlMark</A>, with the same
  438. macro definitions.
  439. </P>
  440. <H3 ID="email">email</H3>
  441. <P>
  442. This tag is used if the url is detected as being for an email
  443. address rather than to a webpage or file. Ordinarily Txt2tags will
  444. detect automatically that the url represents an email address.
  445. </P>
  446. <P>
  447. Just like <A HREF="#url">url</A>, this tag is used for a plain email with no label
  448. defined.
  449. </P>
  450. <DL>
  451. <DT>Macros:</DT><DD>
  452. <DL>
  453. <DT><B>\a</B></DT><DD>
  454. This mark is expanded to the full text of the email address.
  455. </DL>
  456. </DL>
  457. <H3 ID="emailMark">emailMark</H3>
  458. <P>
  459. Similar to <A HREF="#urlMark">urlMark</A>, this tag is used for email addresses that
  460. are assigned a label in the source document.
  461. </P>
  462. <DL>
  463. <DT>Macros:</DT><DD>
  464. <DL>
  465. <DT><B>\a</B></DT><DD>
  466. This mark appears twice in the tag, just like <A HREF="#urlMark">urlMark</A>. The
  467. first instance is expanded to the text of the email address, and
  468. the second instance to the text of the label. If the rule
  469. <A HREF="#labelbeforelink">'labelbeforelink'</A> is defined, then the first instance is the
  470. label and the second instance is the email address.
  471. </DL>
  472. </DL>
  473. <H2 ID="section-Images">3.3. Images</H2>
  474. <P>
  475. Many targets allow images to be included in documents, often with a
  476. syntax similar to that of links. These tags are used to insert
  477. images into your documents
  478. </P>
  479. <H3 ID="img">img</H3>
  480. <P>
  481. This is the basic tag used to insert an image into the output
  482. document. The image is represented by a file path to the image file,
  483. and is linked into the document.
  484. </P>
  485. <P>
  486. The filename is not escaped, and is assumed to represent a real file
  487. on the same filesystem as the document. As this time, links to
  488. remote files are not supported.
  489. </P>
  490. <DL>
  491. <DT>Macros:</DT><DD>
  492. <DL>
  493. <DT><B>\a</B></DT><DD>
  494. This mark is expanded to the text of the file path pointing to
  495. the inserted image.
  496. <P></P>
  497. <DT><B>~A~</B></DT><DD>
  498. This mark represents the alignment of the image. If the rule
  499. <A HREF="#imgalignable">'imgalignable'</A> is defined for the target, then this mark will
  500. be replaced with the contents of <A HREF="#_imgAlign">_imgAlignLeft, _imgAlignRight, or _imgAlignCenter</A> as appropriate. (Note
  501. the underscore at the beginning of each tag.)
  502. </DL>
  503. </DL>
  504. <H3 ID="_imgAlign">_imgAlignLeft, _imgAlignRight, _imgAlignCenter</H3>
  505. <P>
  506. These tags are used to add alignment to the <A HREF="#img">img</A> tag. If the rule
  507. <A HREF="#imgalignable">'imgalignable'</A> is defined, then whichever of these tags is
  508. appropriate will replace the <B>~A~</B> mark within the <A HREF="#img">img</A> tag.
  509. </P>
  510. <P>
  511. Note the underscores at the beginning of the tag names. Do not
  512. confuse these with the <A HREF="#imgAlign">imgAlignLeft, imgAlignRight, and imgAlignCenter</A> tags, explained below.
  513. </P>
  514. <DL>
  515. <DT>Macros:</DT><DD>
  516. None
  517. </DL>
  518. <H3 ID="imgAlign">imgAlignLeft, imgAlignRight, imgAlignCenter</H3>
  519. <P>
  520. These tags are used if the alignment changes the image tags too much
  521. to simply use <A HREF="#img">img</A> and <A HREF="#_imgAlign">_imgAlign*</A>.
  522. </P>
  523. <P>
  524. If the rule <A HREF="#imgalignable">'imgalignable'</A> is defined and these tags are defined,
  525. then they will be used <I>instead of</I> the <A HREF="#img">img</A> tag. Each of these
  526. tags should have whatever markup is needed for image align in them,
  527. and they will not have <B>~A~</B> expanded.
  528. </P>
  529. <DL>
  530. <DT>Macros:</DT><DD>
  531. <DL>
  532. <DT><B>\a</B></DT><DD>
  533. This mark is expanded to the file path of the image file, just
  534. as in the <A HREF="#img">img</A> tag.
  535. </DL>
  536. </DL>
  537. <H3 ID="imgEmbed">imgEmbed</H3>
  538. <P>
  539. This tag is used to embed image data directly into the document
  540. itself, rather than to link to the image file externally. If the
  541. command-line option <I>--embed-images</I> is used, then this tag will be
  542. used <I>instead of</I> the <A HREF="#img">img</A> tag.
  543. </P>
  544. <P>
  545. Currently this is only used by the <B>RTF</B> target, and will require
  546. additional functionality to be added to Txt2tags to add support to
  547. another target.
  548. </P>
  549. <DL>
  550. <DT>Macros:</DT><DD>
  551. <DL>
  552. <DT><B>\a</B></DT><DD>
  553. This mark is expanded into the full file data of the embedded
  554. image file, as well as whatever additional markup may be
  555. required to make it work with the target.
  556. </DL>
  557. </DL>
  558. <H1 ID="chapter-TitlesandSections">4. Titles and Sections</H1>
  559. <P>
  560. Txt2tags allows you to specify markup for separating documents into
  561. sections, and for adding titles or headings to each section. It
  562. accomplishes both these tasks with the <CODE>title</CODE> family of tags.
  563. </P>
  564. <P>
  565. There are two methods used, depending on the tags and rules
  566. specified. By default, the <A HREF="#title1">title*</A> tags are used simply to mark
  567. up each section heading or subsection heading. Sections are implied
  568. by these headings, but do not have explicit markup.
  569. </P>
  570. <P>
  571. If the rule <A HREF="#titleblocks">'titleblocks'</A> is defined for the target, then the
  572. <A HREF="#title1Open">title*Open*</A> and <A HREF="#blockTitle1Open">blockTitle*Open*</A> family of tags is used
  573. instead. These explicitly separate sections and subsections and
  574. allow additional markup for section commands as needed.
  575. </P>
  576. <P>
  577. Either way, the titles are used to generate the automatic table of
  578. contents, if desired. If the target supports its own table of
  579. contents, then markup to add the titles/sections to it should be
  580. included in the tags.
  581. </P>
  582. <P>
  583. The title text itself does not support any additional Txt2tags
  584. markup. That is, the user may not apply //italics// to the
  585. title, as the marks will simply appear in the title as is. The title
  586. text is escaped with the <I>doEscape()</I> function and, if the rule
  587. <A HREF="#finalescapetitle">'finalescapetitle'</A> is defined, it is escaped by
  588. <I>doFinalEscape()</I> as well.
  589. </P>
  590. <H2 ID="section-TheAnchor">4.1. The Anchor</H2>
  591. <H3 ID="anchor">anchor</H3>
  592. <P>
  593. This tag is used to add a linkable anchor the title heading, if the
  594. target supports internal links. This should include all needed
  595. markup to allow a <A HREF="#urlMark">urlMark</A> or <A HREF="#urlMarkAnchor">urlMarkAnchor</A> tag to link
  596. directly to it from another part of the document.
  597. </P>
  598. <P>
  599. If the command-line option <I>--toc</I> is specified, then all titles
  600. will have anchors added to them (if they do not have one already)
  601. and the table of contents will include direct links to each section
  602. of the document.
  603. </P>
  604. <DL>
  605. <DT>Macros:</DT><DD>
  606. <DL>
  607. <DT><B>\a</B></DT><DD>
  608. This mark is expanded into the label text for the anchor, as
  609. specified by the user or generated automatically by Txt2tags if
  610. none has been specified and the <I>--toc</I> option is in effect.
  611. </DL>
  612. </DL>
  613. <H2 ID="section-Titles">4.2. Titles</H2>
  614. <P>
  615. The basic title tags are only used if the rule <A HREF="#titleblocks">'titleblocks'</A> is
  616. not defined for the target. These are for simple markup of headings,
  617. or simple section separators, for targets that do not require any
  618. complicated markup for sections and subsections.
  619. </P>
  620. <H3 ID="title1">title1, title2, title3, title4, title5</H3>
  621. <P>
  622. These tags are for basic standard headings. <CODE>title1</CODE> is considered
  623. the top level heading, <CODE>title2</CODE> the next level below it, and so
  624. on.
  625. </P>
  626. <P>
  627. If the rule <A HREF="#blanksaroundtitle">'blanksaroundtitle'</A> is defined, and extra blank line
  628. will be emitted before and after this tag.
  629. </P>
  630. <DL>
  631. <DT>Macros:</DT><DD>
  632. <DL>
  633. <DT><B>\a</B></DT><DD>
  634. This mark is expanded into the text of the title itself,
  635. unchanged excepts for necessary escapes from the source
  636. document.
  637. <DT><B>~A~</B></DT><DD>
  638. This mark is expanded into the value of the <A HREF="#anchor">anchor</A> tag,
  639. along with the text of the label for that anchor. It is removed
  640. if the title does not have a label specified, and if txt2tags is
  641. not creating a tabel of contents.
  642. </DL>
  643. </DL>
  644. <H3 ID="numtitle1">numtitle1, numtitle2, numtitle3, numtitle4, numtitle5</H3>
  645. <P>
  646. These tags are used for sections heading that should be numbered.
  647. They are otherwise treated the same as <A HREF="#title1">title*</A>.
  648. </P>
  649. <P>
  650. If the rule <A HREF="#autonumbertitle">'autonumbertitle'</A> is defined, then these tags are
  651. simply emitted as is, and the target is assumed to add the needed
  652. numbers. If this rule is not defined for the target, then it is
  653. assumed that the target does not have automatic numbering. In that
  654. case, Txt2tags will automatically generate the correct
  655. section/heading numbers and add that at the beginning of the title
  656. text.
  657. </P>
  658. <P>
  659. If the rule <A HREF="#blanksaroundnumtitle">'blanksaroundnumtitle'</A> is defined, an extra blank line
  660. will be emitted before and after this tag.
  661. </P>
  662. <DL>
  663. <DT>Macros:</DT><DD>
  664. <DL>
  665. <DT><B>\a</B></DT><DD>
  666. This mark is expanded into the text of the title itself,
  667. unchanged excepts for necessary escapes from the source
  668. document.
  669. <DT><B>~A~</B></DT><DD>
  670. This mark is expanded into the value of the <A HREF="#anchor">anchor</A> tag,
  671. along with the text of the label for that anchor. It is removed
  672. if the title does not have a label specified, and if txt2tags is
  673. not creating a tabel of contents.
  674. </DL>
  675. </DL>
  676. <H2 ID="section-SectioningTags">4.3. Sectioning Tags</H2>
  677. <P>
  678. If the rule <A HREF="#titleblocks">'titleblocks'</A> is defined for the target, then the
  679. above <A HREF="#title1">title*</A> tags are not used. Instead, the tags below are used
  680. to separate the sections as a whole while also marking up the
  681. section headings as needed.
  682. </P>
  683. <H3 ID="title1Open">title1Open, title2Open, title3Open, title4Open, title5Open</H3>
  684. <P>
  685. These tags are used to mark the beginning of a section or
  686. subsection, as well as to mark up the heading for that section. They
  687. work very similarly to the <A HREF="#title1">title*</A> tags above.
  688. </P>
  689. <P>
  690. If the rule <A HREF="#blanksaroundtitle">'blanksaroundtitle'</A> is defined, an extra blank line
  691. will be emitted before and after this tag.
  692. </P>
  693. <DL>
  694. <DT>Macros:</DT><DD>
  695. <DL>
  696. <DT><B>\a</B></DT><DD>
  697. This mark is expanded into the text of the title itself,
  698. unchanged excepts for necessary escapes from the source
  699. document.
  700. <DT><B>~A~</B></DT><DD>
  701. This mark is expanded into the value of the <A HREF="#anchor">anchor</A> tag,
  702. along with the text of the label for that anchor. It is removed
  703. if the title does not have a label specified, and if txt2tags is
  704. not creating a tabel of contents.
  705. </DL>
  706. </DL>
  707. <H3 ID="title1Close">title1Close, title2Close, title3Close, title4Close, title5Close</H3>
  708. <P>
  709. These tags are used to mark the end of a section that has been
  710. opened with <A HREF="#title1Open">title*Open*</A>. It is emitted just before the opening
  711. tag of the next section, as well as at the end of the document to
  712. close all still-open sections.
  713. </P>
  714. <P>
  715. Note that sections nest. If a second level section is specified just
  716. after a first level section, and then another first level section,
  717. the order of the tags will be: <CODE>title1Open</CODE>, <CODE>title2Open</CODE>,
  718. <CODE>title2Close</CODE>, <CODE>title1Close</CODE>, <CODE>title1Open</CODE>, and so on.
  719. </P>
  720. <DL>
  721. <DT>Macros:</DT><DD>
  722. None
  723. </DL>
  724. <H3 ID="blocktitle1Open">blocktitle1Open, blocktitle2Open, blocktitle3Open</H3>
  725. <P>
  726. These tags are used to open a group of sections that are at the
  727. same level. If multiple sections/titles are given in a row at the
  728. same level, then the same level <CODE>blocktitle*Open</CODE> tag will be emitted
  729. before the first <A HREF="#title1Open">title*Open*</A>.
  730. </P>
  731. <DL>
  732. <DT>Macros:</DT><DD>
  733. None
  734. </DL>
  735. <H3 ID="blocktitle1Close">blocktitle1Close, blocktitle2Close, blocktitle3Close</H3>
  736. <P>
  737. These tags are used to close a group of sections that are at the
  738. same level. If multiple sections/titles are given in a row at the
  739. same level, then the same level <CODE>blocktitle*Close</CODE> tag will be emitted
  740. after the last <A HREF="#title1Close">title*Close*</A>.
  741. </P>
  742. <DL>
  743. <DT>Macros:</DT><DD>
  744. None
  745. </DL>
  746. <H1 ID="chapter-Lists">5. Lists</H1>
  747. <P>
  748. Lists are used to add structure to small groups of items. They can
  749. be numbered or unnumbered, and they can be nested.
  750. </P>
  751. <P>
  752. If the rule <A HREF="#compactlist">'compactlist'</A> is defined for a target, then lists will
  753. be considered compact or wide, depending on whether or not an
  754. item in the list includes multiple paragraphs. If even a simple list
  755. item has more then one paragraph (that is, a blank line in the item
  756. that is not immediately followed by another list item), then the
  757. entire list is considered a wide list. If each item in the list is
  758. contained within a single paragraph, then the list is considered
  759. compact.
  760. </P>
  761. <P>
  762. If the rule <A HREF="#compactlist">'compactlist'</A> is <I>not</I> defined, then there is no
  763. difference bewteen wide and compact lists, and all lists are treated
  764. as wide lists.
  765. </P>
  766. <P>
  767. If the rule <A HREF="#parainsidelist">'parainsidelist'</A> is defined for a target, then the
  768. blank lines in wide lists are emitted as an empty paragraph. That
  769. is, <A HREF="#paragraphOpen">paragraphOpen</A> followed immediately by <A HREF="#paragraphClose">paragraphClose</A>.
  770. </P>
  771. <P>
  772. The rule <A HREF="#spacedlistitem">'spacedlistitem'</A> appears to be intended to show that a
  773. target supports wide or spaced lists. However, at this time the rule
  774. appears to be unused by Txt2tags, and does not affect output at all.
  775. </P>
  776. <P>
  777. The rule <A HREF="#listmaxdepth">'listmaxdepth'</A> is used to tell Txt2tags how many levels
  778. of lists may be nested within one another for each target.
  779. </P>
  780. <P>
  781. If the rule <A HREF="#listnotnested">'listnotnested'</A> is defined for a target, then it does
  782. not support nested lists. Nested lists in the source are emitted as
  783. if all items belonged to the same, top-level list.
  784. </P>
  785. <P>
  786. If the rule <A HREF="#listitemnotnested">'listitemnotnested'</A> is defined for a target, then
  787. list items are closed before emitting a nested list, rather than wrapping
  788. around the nested list.
  789. </P>
  790. <H2 ID="section-UnorderedLists">5.1. Unordered Lists</H2>
  791. <P>
  792. These lists do not use numbers to separate each item. Typically each
  793. list item is set off with a bullet symbol, though this can vary for
  794. different targets.
  795. </P>
  796. <P>
  797. If the rule <A HREF="#blanksaroundlist">'blanksaroundlist'</A> is defined for a target, an extra
  798. blank line is emitted before and after the top level list. No
  799. additional lines are emitted for nested lists with this rule.
  800. </P>
  801. <P>
  802. If the rule <A HREF="#blanksaroundnestedlist">'blanksaroundnestedlist'</A> is defined for a target, an
  803. extra blank line is emitted before and after all lists, including
  804. nested lists.
  805. </P>
  806. <H3 ID="listOpen">listOpen</H3>
  807. <P>
  808. This tag is emitted to mark the start of a new bulleted list.
  809. </P>
  810. <P>
  811. By default this tag is emitted on its own line. The rule
  812. <A HREF="#notbreaklistopen">'notbreaklistopen'</A> is intended to allow
  813. <CODE>listOpen</CODE> to be on the same line as its first item, however
  814. this rule is not yet supported and does not affect the output.
  815. </P>
  816. <P>
  817. By default, the indent of a nested list is added (in spaces) at the
  818. beginning of the line this tag is on. If the rule
  819. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  820. not defined, these spaces are removed.
  821. </P>
  822. <P>
  823. If the rule <A HREF="#compactlist">'compactlist'</A> is defined for a target, then this tag
  824. is only used for wide lists. Otherwise it is used for both.
  825. </P>
  826. <DL>
  827. <DT>Macros:</DT><DD>
  828. None
  829. </DL>
  830. <H3 ID="listCompactOpen">listCompactOpen</H3>
  831. <P>
  832. This tag marks the beginning of a new compact bulleted list.
  833. </P>
  834. <P>
  835. This tag is only used if the rule <A HREF="#compactlist">'compactlist'</A> is defined.
  836. </P>
  837. <P>
  838. By default, the indent of a nested list is added (in spaces) at the
  839. beginning of the line this tag is on. If the rule
  840. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  841. not defined, these spaces are removed.
  842. </P>
  843. <DL>
  844. <DT>Macros:</DT><DD>
  845. None
  846. </DL>
  847. <H3 ID="listClose">listClose, listCompactClose</H3>
  848. <P>
  849. These tags are emitted, on their own line, to close the list opened
  850. by the previous tags.
  851. </P>
  852. <P>
  853. By default, the indent of a nested list is added (in spaces) at the
  854. beginning of the line this tag is on. If the rule
  855. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  856. not defined, these spaces are removed.
  857. </P>
  858. <DL>
  859. <DT>Macros:</DT><DD>
  860. None
  861. </DL>
  862. <H3 ID="listItemOpen">listItemOpen</H3>
  863. <P>
  864. This tag is emitted before each item within a bullet list.
  865. </P>
  866. <P>
  867. By default, the indent of a nested list is added (in spaces) at the
  868. beginning of the line this tag is on. If the rule
  869. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  870. not defined, these spaces are removed.
  871. </P>
  872. <P>
  873. If the tag <A HREF="#listItemLine">listItemLine</A> is defined, it will be emitted
  874. immediately before <CODE>listItemOpen</CODE>. If the rule
  875. <A HREF="#listlineafteropen">'listlineafteropen'</A> is defined,
  876. <A HREF="#listItemLine">listItemLine</A> will be emitted after <CODE>listItemOpen</CODE>.
  877. </P>
  878. <P>
  879. If the rule <A HREF="#spacedlistitemopen">'spacedlistitemopen'</A> is defined, then two spaces will
  880. be emitted after <CODE>listItemOpen</CODE> and <A HREF="#listItemLine">listItemLine</A>, before the
  881. list item text.
  882. </P>
  883. <DL>
  884. <DT>Macros:</DT><DD>
  885. <DL>
  886. <DT><B>~D~</B></DT><DD>
  887. If this macro is included in the tag, it will be expanded to the
  888. value of the depth of that particular list. Top level lists
  889. have depth '1', a nested list inside the top level would have
  890. depth level '2', and so on.
  891. <P></P>
  892. If the rule <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A> is defined for the target,
  893. the depth value will be multiplied by that amount before being
  894. emitted. If the rule <A HREF="#depthmultiplyplus">'depthmultiplyplus'</A> is defined, then that
  895. value will be added to the depth before multiplying by
  896. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>, but only if used with
  897. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>.
  898. <DT><B>~V~</B></DT><DD>
  899. This macro will be expanded to the nesting level of the list. It
  900. is not affected by <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>, so the numbers will
  901. always count one by one.
  902. <P></P>
  903. If the rule <A HREF="#listlevelzerobased">'listlevelzerobased'</A> is defined for a target, then
  904. the top level lists will be level '0', the next level '1',
  905. and so on. Otherwise, the top level is '1' and the next level
  906. '2' and so on.
  907. </DL>
  908. </DL>
  909. <H3 ID="listItemLine">listItemLine</H3>
  910. <P>
  911. This tag is emitted for each item in the list. It is emitted either
  912. right before or after <A HREF="#listItemOpen">listItemOpen</A> (see above).
  913. </P>
  914. <P>
  915. This is emitted a number of times equal to the depth level of the
  916. list. For example, if <CODE>listItemLine</CODE> is defined as '*', then
  917. each item in a list nested three levels deep would begin with
  918. '***'.
  919. </P>
  920. <P>
  921. Despite the name, this is only emitted at the beginning of each
  922. item, and not for every line of the item.
  923. </P>
  924. <DL>
  925. <DT>Macros:</DT><DD>
  926. None
  927. </DL>
  928. <H3 ID="listItemClose">listItemClose</H3>
  929. <P>
  930. This tag is emitted after each item in the list.
  931. </P>
  932. <DL>
  933. <DT>Macros:</DT><DD>
  934. None
  935. </DL>
  936. <H2 ID="section-NumberedLists">5.2. Numbered Lists</H2>
  937. <P>
  938. Numbered lists behave much like unordered lists, except (as their
  939. name implies) they have numbers instead of bullets.
  940. </P>
  941. <P>
  942. Each item in the list will have its own number, counting from '1'.
  943. By default, nested lists will use a dotted number format, as in
  944. '1.', '2.', and so on. This can vary between different
  945. targets, however.
  946. </P>
  947. <P>
  948. If the rule <A HREF="#blanksaroundnumlist">'blanksaroundnumlist'</A> is defined for a target, an extra
  949. blank line is emitted before and after the top level list. No
  950. additional lines are emitted for nested lists.
  951. </P>
  952. <P>
  953. If the rule <A HREF="#blanksaroundnestedlist">'blanksaroundnestedlist'</A> is defined for a target, an
  954. extra blank line is emitted before and after all lists, including
  955. nested lists.
  956. </P>
  957. <H3 ID="numlistOpen">numlistOpen</H3>
  958. <P>
  959. This tag is emitted to mark the start of a new numbered list.
  960. </P>
  961. <P>
  962. By default this tag is emitted on its own line. The rule
  963. <A HREF="#notbreaklistopen">'notbreaklistopen'</A> is intended to allow
  964. <CODE>numlistOpen</CODE> to be on the same line as its first item, however
  965. this rule is not yet supported and does not affect the output.
  966. </P>
  967. <P>
  968. By default, the indent of a nested list is added (in spaces) at the
  969. beginning of the line this tag is on. If the rule
  970. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  971. not defined, these spaces are removed.
  972. </P>
  973. <P>
  974. If the rule <A HREF="#compactlist">'compactlist'</A> is defined for a target, then this tag
  975. is only used for wide lists. Otherwise it is used for both.
  976. </P>
  977. <DL>
  978. <DT>Macros:</DT><DD>
  979. None
  980. </DL>
  981. <H3 ID="numlistCompactOpen">numlistCompactOpen</H3>
  982. <P>
  983. This tag marks the beginning of a new compact numbered list.
  984. </P>
  985. <P>
  986. This tag is only used if the rule <A HREF="#compactlist">'compactlist'</A> is defined.
  987. </P>
  988. <P>
  989. By default, the indent of a nested list is added (in spaces) at the
  990. beginning of the line this tag is on. If the rule
  991. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  992. not defined, these spaces are removed.
  993. </P>
  994. <DL>
  995. <DT>Macros:</DT><DD>
  996. None
  997. </DL>
  998. <H3 ID="numlistClose">numlistClose, numlistCompactClose</H3>
  999. <P>
  1000. These tags are emitted, on their own line, to close the list opened
  1001. by the previous tags.
  1002. </P>
  1003. <P>
  1004. By default, the indent of a nested list is added (in spaces) at the
  1005. beginning of the line this tag is on. If the rule
  1006. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  1007. not defined, these spaces are removed.
  1008. </P>
  1009. <DL>
  1010. <DT>Macros:</DT><DD>
  1011. None
  1012. </DL>
  1013. <H3 ID="numlistItemOpen">numlistItemOpen</H3>
  1014. <P>
  1015. This tag is emitted before each item within a numbered list.
  1016. </P>
  1017. <P>
  1018. If the rule <A HREF="#autonumberlist">'autonumberlist'</A> is defined, then the target is
  1019. assumed to put the numbers in itself. In this case Txt2Tags simply
  1020. emits this tag just like <A HREF="#listItemOpen">listItemOpen</A>. If it is not defined,
  1021. then the correct number is calculated and inserted by Txt2tags. It
  1022. uses the default number format given at the beginning of this
  1023. subsection above.
  1024. </P>
  1025. <P>
  1026. By default, the indent of a nested list is added (in spaces) at the
  1027. beginning of the line this tag is on. If the rule
  1028. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  1029. not defined, these spaces are removed.
  1030. </P>
  1031. <P>
  1032. If the tag <A HREF="#numlistItemLine">numlistItemLine</A> is defined, it will be emitted
  1033. immediately before <CODE>numlistItemOpen</CODE>. If the rule
  1034. <A HREF="#listlineafteropen">'listlineafteropen'</A> is defined, <A HREF="#numlistItemLine">numlistItemLine</A> will be emitted
  1035. after <CODE>numlistItemOpen</CODE>.
  1036. </P>
  1037. <P>
  1038. If the rule <A HREF="#spacednumlistitemopen">'spacednumlistitemopen'</A> is defined, then two spaces will
  1039. be emitted after <CODE>numlistItemOpen</CODE> and <A HREF="#numlistItemLine">numlistItemLine</A>, before the
  1040. list item text.
  1041. </P>
  1042. <DL>
  1043. <DT>Macros:</DT><DD>
  1044. <DL>
  1045. <DT><B>\a</B></DT><DD>
  1046. If the rule <A HREF="#autonumberlist">'autonumberlist'</A> is <I>not</I> defined, then this
  1047. mark is expanded into the correct number for this list item.
  1048. <DT><B>~D~</B></DT><DD>
  1049. If this macro is included in the tag, it will be expanded to the
  1050. value of the depth of that particular list. Top level lists
  1051. have depth '1', a nested list inside the top level would have
  1052. depth level '2', and so on.
  1053. <P></P>
  1054. If the rule <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A> is defined for the target,
  1055. the depth value will be multiplied by that amount before being
  1056. emitted. If the rule <A HREF="#depthmultiplyplus">'depthmultiplyplus'</A> is defined, then that
  1057. value will be added to the depth before multiplying by
  1058. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>, but only if used with
  1059. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>.
  1060. <DT><B>~V~</B></DT><DD>
  1061. This macro will be expanded to the nesting level of the list. It
  1062. is not affected by <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>, so the numbers will
  1063. always count one by one.
  1064. <P></P>
  1065. If the rule <A HREF="#listlevelzerobased">'listlevelzerobased'</A> is defined for a target, then
  1066. the top level lists will be level '0', the next level '1',
  1067. and so on. Otherwise, the top level is '1' and the next level
  1068. '2' and so on.
  1069. </DL>
  1070. </DL>
  1071. <H3 ID="numlistItemLine">numlistItemLine</H3>
  1072. <P>
  1073. This tag is emitted for each item in the list. It is emitted either
  1074. right before or after <A HREF="#numlistItemOpen">numlistItemOpen</A> (see above).
  1075. </P>
  1076. <P>
  1077. This is emitted a number of times equal to the depth level of the
  1078. list. For example, if <CODE>numlistItemLine</CODE> is defined as '+', then
  1079. each item in a list nested three levels deep would begin with
  1080. '+++'.
  1081. </P>
  1082. <P>
  1083. Despite the name, this is only emitted at the beginning of each
  1084. item, and not for every line of the item.
  1085. </P>
  1086. <DL>
  1087. <DT>Macros:</DT><DD>
  1088. None
  1089. </DL>
  1090. <H3 ID="numlistItemClose">numlistItemClose</H3>
  1091. <P>
  1092. This tag is emitted after each item in the list.
  1093. </P>
  1094. <DL>
  1095. <DT>Macros:</DT><DD>
  1096. None
  1097. </DL>
  1098. <H2 ID="section-DefinitionLists">5.3. Definition Lists</H2>
  1099. <P>
  1100. Definition lists work a little bit differently from standard lists.
  1101. Each list item has two parts: the item or word to be defined, and
  1102. the definition itself.
  1103. </P>
  1104. <P>
  1105. If the rule <A HREF="#deflisttextstrip">'deflisttextstrip'</A> is defined, then each line of the
  1106. definition will have extra spaces stripped off, even if
  1107. <A HREF="#keeplistindent">'keeplistindent'</A> is also defined.
  1108. </P>
  1109. <P>
  1110. If the rule <A HREF="#blanksarounddeflist">'blanksarounddeflist'</A> is defined for a target, an extra
  1111. blank line is emitted before and after the top level list. No
  1112. additional lines are emitted for nested lists.
  1113. </P>
  1114. <P>
  1115. If the rule <A HREF="#blanksaroundnestedlist">'blanksaroundnestedlist'</A> is defined for a target, an
  1116. extra blank line is emitted before and after all lists, including
  1117. nested lists.
  1118. </P>
  1119. <H3 ID="deflistOpen">deflistOpen</H3>
  1120. <P>
  1121. This tag is emitted to mark the start of a new definition list.
  1122. </P>
  1123. <P>
  1124. By default this tag is emitted on its own line. The rule
  1125. <A HREF="#notbreaklistopen">'notbreaklistopen'</A> is intended to allow <A HREF="#listOpen">listOpen</A> to be on the
  1126. same line as its first item, however this rule is not yet supported
  1127. and does not affect the output.
  1128. </P>
  1129. <P>
  1130. By default, the indent of a nested list is added (in spaces) at the
  1131. beginning of the line this tag is on. If the rule
  1132. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  1133. not defined, these spaces are removed.
  1134. </P>
  1135. <P>
  1136. If the rule <A HREF="#compactlist">'compactlist'</A> is defined for a target, then this tag
  1137. is only used for wide lists. Otherwise it is used for both.
  1138. </P>
  1139. <DL>
  1140. <DT>Macros:</DT><DD>
  1141. None
  1142. </DL>
  1143. <H3 ID="deflistCompactOpen">deflistCompactOpen</H3>
  1144. <P>
  1145. This tag marks the beginning of a new compact definition list.
  1146. </P>
  1147. <P>
  1148. This tag is only used if the rule <A HREF="#compactlist">'compactlist'</A> is defined.
  1149. </P>
  1150. <P>
  1151. By default, the indent of a nested list is added (in spaces) at the
  1152. beginning of the line this tag is on. If the rule
  1153. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  1154. not defined, these spaces are removed.
  1155. </P>
  1156. <DL>
  1157. <DT>Macros:</DT><DD>
  1158. None
  1159. </DL>
  1160. <H3 ID="deflistClose">deflistClose, deflistCompactClose</H3>
  1161. <P>
  1162. These tags are emitted, on their own line, to close the list opened
  1163. by the previous tags.
  1164. </P>
  1165. <P>
  1166. By default, the indent of a nested list is added (in spaces) at the
  1167. beginning of the line this tag is on. If the rule
  1168. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  1169. not defined, these spaces are removed.
  1170. </P>
  1171. <DL>
  1172. <DT>Macros:</DT><DD>
  1173. None
  1174. </DL>
  1175. <H3 ID="deflistItem1Open">deflistItem1Open</H3>
  1176. <P>
  1177. This tag is emitted before each item within a definition list. It is
  1178. specifically meant to go before the term to be defined.
  1179. </P>
  1180. <P>
  1181. By default, the indent of a nested list is added (in spaces) at the
  1182. beginning of the line this tag is on. If the rule
  1183. <A HREF="#tagnotindentable">'tagnotindentable'</A> is defined, or the rule <A HREF="#keeplistindent">'keeplistindent'</A> is
  1184. not defined, these spaces are removed.
  1185. </P>
  1186. <P>
  1187. If the rule <A HREF="#imgasdefterm">'imgasdefterm'</A> is defined, then a linked image is
  1188. allowed as the term to be defined. Otherwise, only text is allowed.
  1189. </P>
  1190. <DL>
  1191. <DT>Macros:</DT><DD>
  1192. <DL>
  1193. <DT><B>~D~</B></DT><DD>
  1194. If this macro is included in the tag, it will be expanded to the
  1195. value of the depth of that particular list. Top level lists
  1196. have depth '1', a nested list inside the top level would have
  1197. depth level '2', and so on.
  1198. <P></P>
  1199. If the rule <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A> is defined for the target,
  1200. the depth value will be multiplied by that amount before being
  1201. emitted. If the rule <A HREF="#depthmultiplyplus">'depthmultiplyplus'</A> is defined, then that
  1202. value will be added to the depth before multiplying by
  1203. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>, but only if used with
  1204. <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>.
  1205. <DT><B>~V~</B></DT><DD>
  1206. This macro will be expanded to the nesting level of the list. It
  1207. is not affected by <A HREF="#blockdepthmultiply">'blockdepthmultiply'</A>, so the numbers will
  1208. always count one by one.
  1209. <P></P>
  1210. If the rule <A HREF="#listlevelzerobased">'listlevelzerobased'</A> is defined for a target, then
  1211. the top level lists will be level '0', the next level '1',
  1212. and so on. Otherwise, the top level is '1' and the next level
  1213. '2' and so on.
  1214. </DL>
  1215. </DL>
  1216. <H3 ID="deflistItem1Close">deflistItem1Close</H3>
  1217. <P>
  1218. This tag is emitted after each definition term, but before the
  1219. definition itself, for each item in the list.
  1220. </P>
  1221. <DL>
  1222. <DT>Macros:</DT><DD>
  1223. None
  1224. </DL>
  1225. <H3 ID="deflistItem2Open">deflistItem2Open</H3>
  1226. <P>
  1227. This tag is emitted directly after <A HREF="#deflistItem1Close">deflistItem1Close</A>, and is
  1228. used right before the definition text of the item.
  1229. </P>
  1230. <DL>
  1231. <DT>Macros:</DT><DD>
  1232. None
  1233. </DL>
  1234. <H3 ID="deflistItem2LinePrefix">deflistItem2LinePrefix</H3>
  1235. <P>
  1236. This tag is emitted at the beginning of each line of the definition
  1237. text for each item.
  1238. </P>
  1239. <P>
  1240. Note that it is not multiplied for nexted lists. It is the same for
  1241. every level of a nested list.
  1242. </P>
  1243. <P>
  1244. If the rule <A HREF="#keeplistindent">'keeplistindent'</A> is defined and <A HREF="#deflisttextstrip">'deflisttextstrip'</A>
  1245. is not defined, then this is emitted after the indent for each line
  1246. of the list.
  1247. </P>
  1248. <DL>
  1249. <DT>Macros:</DT><DD>
  1250. None
  1251. </DL>
  1252. <H3 ID="deflistItem2Close">deflistItem2Close</H3>
  1253. <P>
  1254. This tag is emitted at the end of each definition, and therefor at
  1255. the end of each item of the definition list.
  1256. </P>
  1257. <P>
  1258. For examples, the tags for a definition list are emitted as follows:
  1259. <CODE>deflistOpen</CODE>, <CODE>deflistItem1Open</CODE>, <CODE>deflistItem1Close</CODE>,
  1260. <CODE>deflistItem2Open</CODE>, (<CODE>deflistItem2LinePrefix</CODE> for each line),
  1261. <CODE>deflistItem2Close</CODE>, <CODE>deflistItem1Open</CODE>, and so on for the
  1262. entire list.
  1263. </P>
  1264. <DL>
  1265. <DT>Macros:</DT><DD>
  1266. None
  1267. </DL>
  1268. <H1 ID="chapter-Tables">6. Tables</H1>
  1269. <P>
  1270. Tables allow the user to arrange data in rows and columns for better
  1271. organization. Some targets support very complicated tables, while
  1272. others only support limited options within tables or do not support
  1273. tables at all. Txt2tags is limited to the most basic and most common
  1274. table options usable by the greatest number of targets.
  1275. </P>
  1276. <P>
  1277. If the rule <A HREF="#tableable">'tableable'</A> is <I>not</I> defined, then the table markup
  1278. is emitted unchanged from the source document and put inside a
  1279. verbatim block.
  1280. </P>
  1281. <P>
  1282. If the rule <A HREF="#blanksaroundtable">'blanksaroundtable'</A> is defined, then an extra blank
  1283. line will be emitted before and after the table markup.
  1284. </P>
  1285. <H2 ID="section-Macros">6.1. Macros</H2>
  1286. <P>
  1287. Because of how complicated most table markup can be, there are
  1288. several macro tags that can be defined that may be expanded by
  1289. several other tags. These tags will all be defined here to be easier
  1290. to find in this reference.
  1291. </P>
  1292. <H3 ID="_tableBorder">_tableBorder</H3>
  1293. <P>
  1294. This tag may be inserted into the outer table and row tags to
  1295. designate that this table should have a border.
  1296. </P>
  1297. <P>
  1298. For tags that support it, it will replace the macro <B>~B~</B>.
  1299. </P>
  1300. <H3 ID="_tableCellBorder">_tableCellBorder</H3>
  1301. <P>
  1302. This tag may be inserted into the markup of each individual cell to
  1303. designate that this table should have a border.
  1304. </P>
  1305. <P>
  1306. It will replace the macro <B>~B~</B>.
  1307. </P>
  1308. <H3 ID="_tableAlign">_tableAlignLeft, _tableAlignCenter</H3>
  1309. <P>
  1310. These tags may be inserted into the outer table and row tags to
  1311. designate how the entire table should be aligned within the
  1312. document, if the target supports table alignment.
  1313. </P>
  1314. <P>
  1315. Note that Txt2tags does not currently allow right-aligned tables.
  1316. </P>
  1317. <P>
  1318. Whichever tag is appropriate will replace the macro <B>~A~</B>.
  1319. </P>
  1320. <H3 ID="_tableColAlign">_tableColAlignLeft, _tableColAlignRight, _tableColAlignCenter</H3>
  1321. <P>
  1322. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to the value <A HREF="#column">'column'</A>
  1323. for the target, then these tags may be inserted into the outer table
  1324. or row tags for that table.
  1325. </P>
  1326. <P>
  1327. These alignment settings will be used for each cell in the column,
  1328. for targets that do not support per-cell alignment.
  1329. </P>
  1330. <P>
  1331. The column alignment 'group' is made out of several copies of these
  1332. tags, one for each column in the table. They may be separated by
  1333. <A HREF="#tableColAlignSep">tableColAlignSep</A>. Then the entire group is inserted into the
  1334. appropriate opening tags of the table.
  1335. </P>
  1336. <P>
  1337. The column alignment group will replace the macro <B>~C~</B>.
  1338. </P>
  1339. <H3 ID="tableColAlignSep">tableColAlignSep</H3>
  1340. <P>
  1341. If the table has a border, then each item in the column alignment
  1342. group (see above) will be separated by this tag. It is also used in
  1343. multicolumn cells (see below) for the same purpose.
  1344. </P>
  1345. <P>
  1346. Note that, if the table does not have a border, then not only will
  1347. this tag not be inserted into the alignment group, but any copies of
  1348. the tag already in the relevant tags of the table will also be
  1349. removed.
  1350. </P>
  1351. <H3 ID="_tableCellAlign">_tableCellAlignLeft, _tableCellAlignRight, _tableCellAlignCenter</H3>
  1352. <P>
  1353. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to the value <A HREF="#cell">'cell'</A>
  1354. for the target, then these tags may be inserted into the cell tags
  1355. for the table. This is for targets that support per-cell alignment.
  1356. </P>
  1357. <P>
  1358. The alignment tag will replace the macro <B>~A~</B>.
  1359. </P>
  1360. <H3 ID="_tableCellColSpan">_tableCellColSpan</H3>
  1361. <P>
  1362. If the rule <A HREF="#tablecellspannable">'tablecellspannable'</A> is defined for a target, then
  1363. this tag will be inserted into cells that span more than one column.
  1364. </P>
  1365. <P>
  1366. It replaces the macro <B>~S~</B>.
  1367. </P>
  1368. <DL>
  1369. <DT>Macros:</DT><DD>
  1370. <DL>
  1371. <DT><B>\a</B></DT><DD>
  1372. This mark is used inside the tag to give the span of the cell.
  1373. It is replaced with the numeric value of the number of columns
  1374. that this cell spans.
  1375. <P></P>
  1376. <CODE>_tableCellColSpan</CODE> will only be emitted for cells that have a
  1377. span value greater than '1'.
  1378. <P></P>
  1379. If the rule <A HREF="#cellspancumulative">'cellspancumulative'</A> is defined for a target, then
  1380. this value will grow for each cell in a row. That is, cell '1'
  1381. will have a span value of '1', cell '2' will have a span value of
  1382. '2', and so on, with spanned cells increasing the value more.
  1383. <P></P>
  1384. If the rule <A HREF="#cellspanmultiplier">'cellspanmultiplier'</A> is defined for a target, then
  1385. the span value will be multiplied by this value, after
  1386. accumulation if appropriate.
  1387. </DL>
  1388. </DL>
  1389. <H3 ID="_tableCellColSpanChar">_tableCellColSpanChar</H3>
  1390. <P>
  1391. If the rule <A HREF="#tablecellspannable">'tablecellspannable'</A> is defined for a target and this
  1392. tag is also defined, it will be used instead of
  1393. <A HREF="#_tableCellColSpan">_tableCellColSpan</A>.
  1394. </P>
  1395. <P>
  1396. This tag will be emitted the same number of times as columns that
  1397. the cell spans, <I>minus 1</I>. For example, if the tag is defined as
  1398. '|', and a cell spans three columns, then '||' will be emitted.
  1399. </P>
  1400. <P>
  1401. The tag, however many need to be emitted, will replace the macro
  1402. <B>~S~</B>.
  1403. </P>
  1404. <H3 ID="_tableAttrDelimiter">_tableAttrDelimiter</H3>
  1405. <P>
  1406. This tag may be inserted into cells that have either a cell
  1407. alignment or a cell span to insert. This may be used to separate the
  1408. cell attributes from the body of the cell itself.
  1409. </P>
  1410. <P>
  1411. If the cell has neither an alignment or span to insert, then the
  1412. macro for this tag is removed.
  1413. </P>
  1414. <P>
  1415. This tag will replace the macro <B>~Z~</B>.
  1416. </P>
  1417. <H2 ID="section-TableStructure">6.2. Table Structure</H2>
  1418. <H3 ID="tableOpen">tableOpen, tableClose</H3>
  1419. <P>
  1420. These tags are the first and last tag emitted for a table. They are
  1421. emitted on lines of their own, and are emitted only once for each table.
  1422. </P>
  1423. <DL>
  1424. <DT>Macros:</DT><DD>
  1425. <DL>
  1426. <DT><B>~A~</B></DT><DD>
  1427. This will be replaced with <A HREF="#_tableAlign">_tableAlign*</A> for a left or center
  1428. aligned table.
  1429. <DT><B>~B~</B></DT><DD>
  1430. This will be replaced with the <A HREF="#_tableBorder">_tableBorder</A> tag for tables
  1431. that have a border, or removed otherwise.
  1432. <DT><B>~C~</B></DT><DD>
  1433. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to <A HREF="#column">'column'</A>, then
  1434. this will be replaced with the column alignment group for the
  1435. table. (See <A HREF="#_tableColAlign">_tableColAlign*</A> above.)
  1436. </DL>
  1437. </DL>
  1438. <H3 ID="tableRowOpen">tableRowOpen</H3>
  1439. <P>
  1440. This tag is emitted at the beginning of each row of cells.
  1441. </P>
  1442. <P>
  1443. By default each row is emitted on a single line. If the rule
  1444. <A HREF="#breaktablelineopen">'breaktablelineopen'</A> is defined, then a linebreak will be emitted
  1445. after this tag before the cells.
  1446. </P>
  1447. <DL>
  1448. <DT>Macros:</DT><DD>
  1449. <DL>
  1450. <DT><B>~A~</B></DT><DD>
  1451. This will be replaced with <A HREF="#_tableAlign">_tableAlign*</A> for a left or center
  1452. aligned table.
  1453. <DT><B>~B~</B></DT><DD>
  1454. This will be replaced with the <A HREF="#_tableBorder">_tableBorder</A> tag for tables
  1455. that have a border, or removed otherwise.
  1456. <DT><B>~C~</B></DT><DD>
  1457. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to <A HREF="#column">'column'</A>, then
  1458. this will be replaced with the column alignment group for the
  1459. table. (See <A HREF="#_tableColAlign">_tableColAlign*</A> above.)
  1460. </DL>
  1461. </DL>
  1462. <H3 ID="tableTitleRowOpen">tableTitleRowOpen</H3>
  1463. <P>
  1464. This tag, if defined, will be used instead of <A HREF="#tableRowOpen">tableRowOpen</A> for
  1465. title rows. If it is not defined, <A HREF="#tableRowOpen">tableRowOpen</A> will be used for
  1466. all rows.
  1467. </P>
  1468. <P>
  1469. Note that title rows are not required, and do not need to be the
  1470. first row of a table.
  1471. </P>
  1472. <P>
  1473. If the rule <A HREF="#breaktablelineopen">'breaktablelineopen'</A> is defined, then a linebreak will
  1474. be emitted after this tag before the cells.
  1475. </P>
  1476. <DL>
  1477. <DT>Macros:</DT><DD>
  1478. <DL>
  1479. <DT><B>~A~</B></DT><DD>
  1480. This will be replaced with <A HREF="#_tableAlign">_tableAlign*</A> for a left or center
  1481. aligned table.
  1482. <DT><B>~B~</B></DT><DD>
  1483. This will be replaced with the <A HREF="#_tableBorder">_tableBorder</A> tag for tables
  1484. that have a border, or removed otherwise.
  1485. <DT><B>~C~</B></DT><DD>
  1486. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to <A HREF="#column">'column'</A>, then
  1487. this will be replaced with the column alignment group for the
  1488. table. (See <A HREF="#_tableColAlign">_tableColAlign*</A> above.)
  1489. </DL>
  1490. </DL>
  1491. <H3 ID="tableRowClose">tableRowClose, tableTitleRowClose</H3>
  1492. <P>
  1493. These tags are emitted at the end of each row begun by the tags
  1494. above.
  1495. </P>
  1496. <P>
  1497. If <CODE>tableTitleRowClose</CODE> is not defined, <CODE>tableRowClose</CODE> will be
  1498. used instead.
  1499. </P>
  1500. <DL>
  1501. <DT>Macros:</DT><DD>
  1502. <DL>
  1503. <DT><B>~A~</B></DT><DD>
  1504. This will be replaced with <A HREF="#_tableAlign">_tableAlign*</A> for a left or center
  1505. aligned table.
  1506. <DT><B>~B~</B></DT><DD>
  1507. This will be replaced with the <A HREF="#_tableBorder">_tableBorder</A> tag for tables
  1508. that have a border, or removed otherwise.
  1509. <DT><B>~C~</B></DT><DD>
  1510. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to <A HREF="#column">'column'</A>, then
  1511. this will be replaced with the column alignment group for the
  1512. table. (See <A HREF="#_tableColAlign">_tableColAlign*</A> above.)
  1513. </DL>
  1514. </DL>
  1515. <H3 ID="tableRowSep">tableRowSep</H3>
  1516. <P>
  1517. This tag will be emitted in between each row of cells.
  1518. </P>
  1519. <P>
  1520. Note that if this tag is defined, then <A HREF="#tableRowOpen">tableRowOpen</A> and
  1521. <A HREF="#tableRowClose">tableRowClose</A> will not be used at all.
  1522. </P>
  1523. <DL>
  1524. <DT>Macros:</DT><DD>
  1525. <DL>
  1526. <DT><B>~A~</B></DT><DD>
  1527. This will be replaced with <A HREF="#_tableAlign">_tableAlign*</A> for a left or center
  1528. aligned table.
  1529. <DT><B>~B~</B></DT><DD>
  1530. This will be replaced with the <A HREF="#_tableBorder">_tableBorder</A> tag for tables
  1531. that have a border, or removed otherwise.
  1532. <DT><B>~C~</B></DT><DD>
  1533. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to <A HREF="#column">'column'</A>, then
  1534. this will be replaced with the column alignment group for the
  1535. table. (See <A HREF="#_tableColAlign">_tableColAlign*</A> above.)
  1536. </DL>
  1537. </DL>
  1538. <H2 ID="section-Cells">6.3. Cells</H2>
  1539. <P>
  1540. Each cell of data for a table may be marked up separately.
  1541. </P>
  1542. <P>
  1543. By default, each row of cells is emitted on a single line. If the
  1544. rule <A HREF="#breaktablecell">'breaktablecell'</A> is defined for a target, then a linebreak
  1545. will be emitted after each cell.
  1546. </P>
  1547. <P>
  1548. If the rule <A HREF="#tablecellstrip">'tablecellstrip'</A> is defined for a target, then any
  1549. extra spaces will be stripped from each cell before it is emitted.
  1550. Otherwise, all spaces from the source document (including that used
  1551. to determine cell alignment) will be included in the final output.
  1552. </P>
  1553. <P>
  1554. If the rule <A HREF="#tabletitlerowinbold">'tabletitlerowinbold'</A> is defined, then all cells
  1555. considered part of a title row will have their contents wrapped in
  1556. <A HREF="#fontBold">fontBoldOpen and fontBoldClose</A> tags.
  1557. </P>
  1558. <H3 ID="tableCellOpen">tableCellOpen, tableTitleCellOpen</H3>
  1559. <P>
  1560. These tags are emitted at the beginning of each cell within the
  1561. table. If <CODE>tableTitleCellOpen</CODE> is defined, then it will be used
  1562. for the cells on a title row. Otherwise, <CODE>tableCellOpen</CODE> will be
  1563. used for all cells.
  1564. </P>
  1565. <DL>
  1566. <DT>Macros:</DT><DD>
  1567. <DL>
  1568. <DT><B>~A~</B></DT><DD>
  1569. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to the value
  1570. <A HREF="#cell">'cell'</A> for a target, then this will be replaced with the
  1571. appropriate <A HREF="#_tableCellAlign">_tableCellAlign*</A> tag.
  1572. <DT><B>~B~</B></DT><DD>
  1573. If the table has a border, this will be replaced with the
  1574. <A HREF="#_tableCellBorder">_tableCellBorder</A> tag, or removed if not.
  1575. <DT><B>~S~</B></DT><DD>
  1576. If the rule <A HREF="#tablecellspannable">'tablecellspannable'</A> is defined, and the cell
  1577. spans multiple columns, then this tag will be replaced with the
  1578. value of either <A HREF="#_tableCellColSpanChar">_tableCellColSpanChar</A> or
  1579. <A HREF="#_tableCellColSpan">_tableCellColSpan</A> as appropriate.
  1580. <DT><B>~Z~</B></DT><DD>
  1581. If the cell has and alignment or column span to be inserted,
  1582. then this tag will be replaced with <A HREF="#_tableAttrDelimiter">_tableAttrDelimiter</A>. If
  1583. the cell has neither, then it will be removed.
  1584. </DL>
  1585. </DL>
  1586. <H3 ID="tableCellClose">tableCellClose, tableTitleCellClose</H3>
  1587. <P>
  1588. These tags are emitted at the end of each cell within the table. If
  1589. <CODE>tableTitleCellClose</CODE> is defined, then it will be used for the
  1590. cells on a title row. Otherwise, <CODE>tableCellClose</CODE> will be used for
  1591. all cells.
  1592. </P>
  1593. <DL>
  1594. <DT>Macros:</DT><DD>
  1595. <DL>
  1596. <DT><B>~A~</B></DT><DD>
  1597. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to the value
  1598. <A HREF="#cell">'cell'</A> for a target, then this will be replaced with the
  1599. appropriate <A HREF="#_tableCellAlign">_tableCellAlign*</A> tag.
  1600. <DT><B>~B~</B></DT><DD>
  1601. If the table has a border, this will be replaced with the
  1602. <A HREF="#_tableCellBorder">_tableCellBorder</A> tag, or removed if not.
  1603. <DT><B>~S~</B></DT><DD>
  1604. If the rule <A HREF="#tablecellspannable">'tablecellspannable'</A> is defined, and the cell
  1605. spans multiple columns, then this tag will be replaced with the
  1606. value of either <A HREF="#_tableCellColSpanChar">_tableCellColSpanChar</A> or
  1607. <A HREF="#_tableCellColSpan">_tableCellColSpan</A> as appropriate.
  1608. </DL>
  1609. </DL>
  1610. <H3 ID="tableCellSep">tableCellSep, tableTitleCellSep</H3>
  1611. <P>
  1612. These tags are emitted in between each cell of a row. If
  1613. <CODE>tableTitleCellSep</CODE> is defined, then it will be used for the cells
  1614. on a title row. Otherwise, <CODE>tableCellSep</CODE> will be used for all
  1615. cells.
  1616. </P>
  1617. <P>
  1618. These tags are only emited between cells. They do not appear before
  1619. the first cell of a row or after the last cell of a row.
  1620. </P>
  1621. <P>
  1622. Note that, unlike <A HREF="#tableRowSep">tableRowSep</A>, these tags are used as well as
  1623. <A HREF="#tableCellOpen">tableCellOpen</A> and <A HREF="#tableCellClose">tableCellClose</A>. If all are defined, then
  1624. <CODE>tableCellSep</CODE> will be emitted after <CODE>tableCellClose</CODE> and before
  1625. the next <CODE>tableCellOpen</CODE>.
  1626. </P>
  1627. <DL>
  1628. <DT>Macros:</DT><DD>
  1629. None
  1630. </DL>
  1631. <H3 ID="_tableCellMulticolOpen">_tableCellMulticolOpen</H3>
  1632. <P>
  1633. If the rule <A HREF="#tablecellmulticol">'tablecellmulticol'</A> is defined for a target, and a
  1634. cell spans more than one column, then this tag will be used instead
  1635. of <A HREF="#tableCellOpen">tableCellOpen</A>.
  1636. </P>
  1637. <DL>
  1638. <DT>Macros:</DT><DD>
  1639. <DL>
  1640. <DT><B>\a</B></DT><DD>
  1641. This will be replaced with the current cell's column span value.
  1642. See <A HREF="#_tableCellColSpan">_tableCellColSpan</A> above for an explanation of this
  1643. value.
  1644. <DT><B>~A~</B></DT><DD>
  1645. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to the value
  1646. <A HREF="#cell">'cell'</A> for a target, then this will be replaced with the
  1647. appropriate <A HREF="#_tableCellAlign">_tableCellAlign*</A> tag.
  1648. <DT><B>~Z~</B></DT><DD>
  1649. If the cell has an alignment or column span to be inserted,
  1650. then this tag will be replaced with <A HREF="#_tableAttrDelimiter">_tableAttrDelimiter</A>. If
  1651. the cell has neither, then it will be removed.
  1652. </DL>
  1653. </DL>
  1654. <H3 ID="_tableCellMulticolClose">_tableCellMulticolClose</H3>
  1655. <P>
  1656. If the rule <A HREF="#tablecellmulticol">'tablecellmulticol'</A> is defined for a target, and a
  1657. cell spans more than one column, then this tag will be used instead
  1658. of <A HREF="#tableCellClose">tableCellClose</A>.
  1659. </P>
  1660. <DL>
  1661. <DT>Macros:</DT><DD>
  1662. None
  1663. </DL>
  1664. <H3 ID="tableCellHead">tableCellHead, tableTitleCellHead</H3>
  1665. <P>
  1666. These tags are use to define 'headers', one for each cell, that are
  1667. inserted at the beginning of a row before the cell data itself.
  1668. </P>
  1669. <P>
  1670. For example, the order of tags for a row with three cells may be
  1671. <CODE>tableRowOpen</CODE>, <CODE>tableCellHead</CODE>, <CODE>tableCellHead</CODE>,
  1672. <CODE>tableCellHead</CODE>, <CODE>tableCellOpen</CODE>, and so on.
  1673. </P>
  1674. <P>
  1675. If <CODE>tableTitleCellHead</CODE> is defined, it will be used for cells in a
  1676. title row, otherwise <CODE>tableCellHead</CODE> will be used for all rows.
  1677. </P>
  1678. <DL>
  1679. <DT>Macros:</DT><DD>
  1680. <DL>
  1681. <DT><B>~A~</B></DT><DD>
  1682. If the rule <A HREF="#tablecellaligntype">'tablecellaligntype'</A> is set to the value
  1683. <A HREF="#cell">'cell'</A> for a target, then this will be replaced with the
  1684. appropriate <A HREF="#_tableCellAlign">_tableCellAlign*</A> tag.
  1685. <DT><B>~B~</B></DT><DD>
  1686. If the table has a border, this will be replaced with the
  1687. <A HREF="#_tableCellBorder">_tableCellBorder</A> tag, or removed if not.
  1688. <DT><B>~S~</B></DT><DD>
  1689. If the rule <A HREF="#tablecellspannable">'tablecellspannable'</A> is defined, and the cell
  1690. spans multiple columns, then this tag will be replaced with the
  1691. value of either <A HREF="#_tableCellColSpanChar">_tableCellColSpanChar</A> or
  1692. <A HREF="#_tableCellColSpan">_tableCellColSpan</A> as appropriate.
  1693. </DL>
  1694. </DL>
  1695. <H3 ID="tableCellAlign">tableCellAlignLeft, tableCellAlignRight, tableCellAlignCenter</H3>
  1696. <P>
  1697. If these tags are defined and a cell has an alignment attribute,
  1698. then the cell text will be wrapped by the appropriate tag before it
  1699. is emitted.
  1700. </P>
  1701. <P>
  1702. Note that these cells do not begin with an underscore. Do not get
  1703. them confused with the <A HREF="#_tableCellAlign">_tableCellAlign*</A> tags, which replace
  1704. macros within the other cell tags.
  1705. </P>
  1706. <DL>
  1707. <DT>Macros:</DT><DD>
  1708. <DL>
  1709. <DT><B>\a</B></DT><DD>
  1710. This will be replaced by the text of the cell itself.
  1711. </DL>
  1712. </DL>
  1713. <H1 ID="chapter-Miscellaneous">7. Miscellaneous</H1>
  1714. <P>
  1715. These tags are useful or necessary for a fully implemented target,
  1716. but did not fit well within the other categories.
  1717. </P>
  1718. <H2 ID="section-DocumentStructureandFormatting">7.1. Document Structure and Formatting</H2>
  1719. <H3 ID="pageBreak">pageBreak</H3>
  1720. <P>
  1721. For targets that support separation into pages, this tag is used to
  1722. force a page break in the output.
  1723. </P>
  1724. <H3 ID="bar1">bar1, bar2</H3>
  1725. <P>
  1726. These tags are used to insert a horizontal line in the output,
  1727. usually used as a lesser section break without beginning a new
  1728. section.
  1729. </P>
  1730. <P>
  1731. <CODE>bar1</CODE> is considered a normal line, and <CODE>bar2</CODE> is considered a
  1732. strong or thick line.
  1733. </P>
  1734. <P>
  1735. If the rule <A HREF="#barinsidequote">'barinsidequote'</A> is defined, then a bar is allowed
  1736. inside a block quote. Otherwise the block quote must be closed and
  1737. reopened around the bar.
  1738. </P>
  1739. <P>
  1740. If the rule <A HREF="#mapbar2pagebreak">'mapbar2pagebreak'</A> is defined, then the value of
  1741. <CODE>bar2</CODE> is ignored and a <A HREF="#pageBreak">pageBreak</A> is emitted instead.
  1742. </P>
  1743. <DL>
  1744. <DT>Macros:</DT><DD>
  1745. <DL>
  1746. <DT><B>\a</B></DT><DD>
  1747. If this mark is present, it will be replaced with the text of
  1748. the actual marks used for the bar in the source document.
  1749. </DL>
  1750. </DL>
  1751. <H3 ID="EOD">EOD</H3>
  1752. <P>
  1753. This is the End Of Document tag, and is the very last thing emitted
  1754. to the output.
  1755. </P>
  1756. <P>
  1757. Any tags that were opened in the default <I>HEADER_TEMPLATE</I> should be
  1758. closed in this tag.
  1759. </P>
  1760. <P>
  1761. If the command line option <I>--template</I> is used, then this tag is
  1762. not emitted. Anything necessary for a complete document should be
  1763. included in the template.
  1764. </P>
  1765. <P>
  1766. The default template can thus be considered: <I>HEADER_TEMPLATE</I> +
  1767. <B>%%body</B> + <CODE>EOD</CODE>.
  1768. </P>
  1769. <H3 ID="bodyOpen">bodyOpen, bodyClose</H3>
  1770. <P>
  1771. These are the first and last tags emitted for the document body text
  1772. itself. <CODE>bodyOpen</CODE> is emitted immediately after
  1773. <I>HEADER_TEMPLATE</I> and <CODE>bodyClose</CODE> is immediately before <A HREF="#EOD">EOD</A>.
  1774. </P>
  1775. <H2 ID="section-HTML">7.2. HTML</H2>
  1776. <H3 ID="cssOpen">cssOpen, cssClose</H3>
  1777. <P>
  1778. These tags are used to insert a stylesheet directly into the text of
  1779. the output document itself.
  1780. </P>
  1781. <P>
  1782. If the command line option <I>--css-inside</I> is used, then the
  1783. contents of external stylesheets will be inserted into the document
  1784. header. Each stylesheet will be wrapped in these tags before being
  1785. emitted.
  1786. </P>
  1787. <P>
  1788. Currently this option, and these tags, are only used by the HTML
  1789. family of targets, are have no effect on any other target.
  1790. </P>
  1791. <H2 ID="section-Comments">7.3. Comments</H2>
  1792. <H3 ID="comment">comment</H3>
  1793. <P>
  1794. This tag is used to insert a single line comment into the output. It
  1795. should be such that it will not appear to readers in the final
  1796. document, only in the tagged source of the document.
  1797. </P>
  1798. <P>
  1799. It is used, if available, to insert a comment at the end of the
  1800. docment stating the date and version of Txt2tags used to generate
  1801. the output document.
  1802. </P>
  1803. <DL>
  1804. <DT>Macros:</DT><DD>
  1805. <DL>
  1806. <DT><B>\a</B></DT><DD>
  1807. This is replaced with the text of the comment generated by
  1808. Txt2tags.
  1809. </DL>
  1810. </DL>
  1811. <H3 ID="blockComment">blockCommentOpen, blockCommentClose</H3>
  1812. <P>
  1813. These are intended to be used before and after multiline comments in
  1814. the output.
  1815. </P>
  1816. <P>
  1817. Currently, all comments in the source are ignored, so these tags are
  1818. unused.
  1819. </P>
  1820. <H2 ID="section-TableOfContents">7.4. Table Of Contents</H2>
  1821. <P>
  1822. The automatic table of contents is emitted as a <A HREF="#chapter-Lists">list</A>, with each
  1823. list item corresponding to a <A HREF="#title1">title*</A> within the document. Lower
  1824. level titles will be emitted as nested lists.
  1825. </P>
  1826. <P>
  1827. If the target supports them, each list item in the list will be a
  1828. link to the corresponding title. Each title will have an anchor
  1829. added automatically if they do not have one already.
  1830. </P>
  1831. <P>
  1832. If the rule <A HREF="#autotocwithbars">'autotocwithbars'</A> is defined, then a <A HREF="#bar1">bar1</A> will be
  1833. added before and after the table of contents.
  1834. </P>
  1835. <P>
  1836. If the rule <A HREF="#blankendautotoc">'blankendautotoc'</A> is defined, then an extra blank line
  1837. will be added after the table of contents.
  1838. </P>
  1839. <P>
  1840. If the rule <A HREF="#autotocnewpagebefore">'autotocnewpagebefore'</A> is defined, then a
  1841. <A HREF="#pageBreak">pageBreak</A> will be emitted before the table of contents.
  1842. </P>
  1843. <P>
  1844. If the rule <A HREF="#autotocnewpageafter">'autotocnewpageafter'</A> is defined, then a
  1845. <A HREF="#pageBreak">pageBreak</A> will be emitted after the table of contents.
  1846. </P>
  1847. <H3 ID="tocOpen">tocOpen, tocClose</H3>
  1848. <P>
  1849. These tags will be emitted directly before and after the
  1850. automatically generated table of contents.
  1851. </P>
  1852. <H3 ID="TOC">TOC</H3>
  1853. <P>
  1854. This tag is used for targets that support their own table of
  1855. contents. If this tag is defined, then it will be emitted, on its
  1856. own, instead of the automatically generated table of contents. No
  1857. other processing will be done and all of the rules pretaining to the
  1858. automatic table of contents will be ignored.
  1859. </P>
  1860. <H1 ID="Appendix">Appendix: Rules</H1>
  1861. <H3 ID="linkable">linkable</H3>
  1862. <P>
  1863. This target supports external links.
  1864. </P>
  1865. <P>
  1866. It affects the output of <A HREF="#url">url</A>, <A HREF="#urlMark">urlMark</A>, <A HREF="#urlMarkAnchor">urlMarkAnchor</A>,
  1867. <A HREF="#email">email</A>, <A HREF="#emailMark">emailMark</A>.
  1868. </P>
  1869. <H3 ID="tableable">tableable</H3>
  1870. <P>
  1871. This target supports tables. If this is not defined, then all tags
  1872. in the <A HREF="#chapter-Tables">Table</A> section are ignored.
  1873. </P>
  1874. <H3 ID="imglinkable">imglinkable</H3>
  1875. <P>
  1876. This target supports images as links.
  1877. </P>
  1878. <P>
  1879. It may affect the output of <A HREF="#url">url</A> and <A HREF="#img">img</A>.
  1880. </P>
  1881. <H3 ID="imgalignable">imgalignable</H3>
  1882. <P>
  1883. This target supports image alignment. If it is not defined, then all
  1884. <A HREF="#_imgAlign">_imgAlign</A> and <A HREF="#imgAlign">imgAlign</A> tags are ignored.
  1885. </P>
  1886. <P>
  1887. It affects the output of <A HREF="#img">img</A>.
  1888. </P>
  1889. <H3 ID="imgasdefterm">imgasdefterm</H3>
  1890. <P>
  1891. This target supports images as definition terms.
  1892. </P>
  1893. <P>
  1894. It may affect the output of <A HREF="#deflistItem1Open">deflistItem1Open</A>.
  1895. </P>
  1896. <H3 ID="autonumberlist">autonumberlist</H3>
  1897. <P>
  1898. This target supports numbered lists natively. If this is defined,
  1899. then numbers will not be generated by Txt2tags for numbered lists.
  1900. </P>
  1901. <P>
  1902. It affects the output of <A HREF="#numlistItemOpen">numlistItemOpen</A>.
  1903. </P>
  1904. <H3 ID="autonumbertitle">autonumbertitle</H3>
  1905. <P>
  1906. This target supports numbered titles natively. If this is defined,
  1907. then numbers will not be generated by Txt2tags for numbered titles.
  1908. </P>
  1909. <P>
  1910. It affects the output of <A HREF="#numtitle1">numtitle*</A>.
  1911. </P>
  1912. <H3 ID="stylable">stylable</H3>
  1913. <P>
  1914. This target supports external style files. If this is defined, then
  1915. the <B>%(STYLE)s</B> macros may be expanded. Otherwise style
  1916. definitions are ignored.
  1917. </P>
  1918. <P>
  1919. It affects the output of the <A HREF="#section-Template">Template</A>
  1920. </P>
  1921. <H3 ID="parainsidelist">parainsidelist</H3>
  1922. <P>
  1923. This target supports paragraph tags inside lists. If this is
  1924. defined, then <A HREF="#paragraphOpen">paragraphOpen</A> and <A HREF="#paragraphClose">paragraphClose</A> tags may be
  1925. inserted into <A HREF="#chapter-Lists">lists</A>.
  1926. </P>
  1927. <H3 ID="compactlist">compactlist</H3>
  1928. <P>
  1929. This target has separate enclosing tags for compact lists. If this
  1930. is not defined, then <A HREF="#listCompactOpen">listCompactOpen</A>, <A HREF="#numlistCompactOpen">numlistCompactOpen</A>,
  1931. and <A HREF="#deflistCompactOpen">deflistCompactOpen</A> are ignored.
  1932. </P>
  1933. <H3 ID="spacedlistitem">spacedlistitem</H3>
  1934. <P>
  1935. This target supports blank lines between items in lists.
  1936. </P>
  1937. <P>
  1938. This rule is currently unused and ignored.
  1939. </P>
  1940. <H3 ID="listnotnested">listnotnested</H3>
  1941. <P>
  1942. This target does not support nested lists.
  1943. </P>
  1944. <P>
  1945. If this is defined, then all lists are emitted as a single,
  1946. top-level list. It affects the output of <A HREF="#chapter-Lists">lists</A>.
  1947. </P>
  1948. <H3 ID="listitemnotnested">listitemnotnested</H3>
  1949. <P>
  1950. This target does not allow nested lists to be inside a list
  1951. item.
  1952. </P>
  1953. <P>
  1954. If this is defined, then list items are closed before sublists
  1955. are emitted. If it is not defined, then list items are closed
  1956. after the sublists they contain. It affects the output of
  1957. <A HREF="#chapter-Lists">lists</A>.
  1958. </P>
  1959. <H3 ID="quotenotnested">quotenotnested</H3>
  1960. <P>
  1961. This target does not support nested quotes.
  1962. </P>
  1963. <P>
  1964. If this is defines, all block quotations are emitted at the same,
  1965. top level. If affects the output of <A HREF="#section-BlockQuotations">block quotes</A>.
  1966. </P>
  1967. <H3 ID="verbblocknotescaped">verbblocknotescaped</H3>
  1968. <P>
  1969. This target should not run verbatim blocks through <I>doEscape()</I>.
  1970. </P>
  1971. <P>
  1972. It affects the output of <A HREF="#section-VerbatimBlocks">verbatim blocks</A>.
  1973. </P>
  1974. <H3 ID="verbblockfinalescape">verbblockfinalescape</H3>
  1975. <P>
  1976. This target <I>should</I> run verbatim blocks through
  1977. <I>doFinalEscape()</I>.
  1978. </P>
  1979. <P>
  1980. It affects the output of <A HREF="#section-VerbatimBlocks">verbatim blocks</A>.
  1981. </P>
  1982. <H3 ID="escapeurl">escapeurl</H3>
  1983. <P>
  1984. This target should run <B>URLs</B> through <I>doEscape()</I>.
  1985. </P>
  1986. <P>
  1987. It affects the output of <A HREF="#url">url</A>, <A HREF="#urlMark">urlMark</A>, <A HREF="#urlMarkAnchor">urlMarkAnchor</A>,
  1988. <A HREF="#email">email</A>, and <A HREF="#emailMark">emailMark</A>.
  1989. </P>
  1990. <H3 ID="labelbeforelink">labelbeforelink</H3>
  1991. <P>
  1992. For this target, labels should come before the link in a <B>URL</B>.
  1993. </P>
  1994. <P>
  1995. It affects the output of <A HREF="#urlMark">urlMark</A>, <A HREF="#urlMarkAnchor">urlMarkAnchor</A>, and
  1996. <A HREF="#emailMark">emailMark</A>.
  1997. </P>
  1998. <H3 ID="onelinepara">onelinepara</H3>
  1999. <P>
  2000. This target should emit paragraphs as a single long line.
  2001. </P>
  2002. <P>
  2003. It affects the output of <A HREF="#section-Paragraphs">paragraphs</A>.
  2004. </P>
  2005. <H3 ID="tabletitlerowinbold">tabletitlerowinbold</H3>
  2006. <P>
  2007. This target should manually emit table title rows in bold face.
  2008. </P>
  2009. <P>
  2010. It affects the output of <A HREF="#section-Cells">table cells</A>.
  2011. </P>
  2012. <H3 ID="tablecellstrip">tablecellstrip</H3>
  2013. <P>
  2014. This target should strip extra spaces from each table cell.
  2015. </P>
  2016. <P>
  2017. It affects the output of <A HREF="#section-Cells">table cells</A>.
  2018. </P>
  2019. <H3 ID="tablecellspannable">tablecellspannable</H3>
  2020. <P>
  2021. This target supports the span attribute in table cells.
  2022. </P>
  2023. <P>
  2024. It may affect the output of <A HREF="#tableCellOpen">tableCellOpen</A>, <A HREF="#tableCellClose">tableCellClose</A>,
  2025. and <A HREF="#tableCellHead">tableCellHead</A>.
  2026. </P>
  2027. <H3 ID="tablecellmulticol">tablecellmulticol</H3>
  2028. <P>
  2029. This target has separate open and close tags for multicolumn cells.
  2030. </P>
  2031. <P>
  2032. If it is defined, then <A HREF="#_tableCellMulticolOpen">_tableCellMulticolOpen</A> will be used for
  2033. multicolumn cells instead of <A HREF="#tableCellOpen">tableCellOpen</A>.
  2034. </P>
  2035. <H3 ID="barinsidequote">barinsidequote</H3>
  2036. <P>
  2037. This target allows horizontal bars inside block quotes.
  2038. </P>
  2039. <P>
  2040. It affects the output of <A HREF="#section-BlockQuotations">block quotes</A>,
  2041. and uses <A HREF="#bar1">bar1</A>.
  2042. </P>
  2043. <H3 ID="finalescapetitle">finalescapetitle</H3>
  2044. <P>
  2045. This target should run the text of titles through
  2046. <I>doFinalEscape()</I>
  2047. </P>
  2048. <P>
  2049. It affects the output of <A HREF="#chapter-TitlesandSections">titles</A>.
  2050. </P>
  2051. <H3 ID="autotocnewpagebefore">autotocnewpagebefore</H3>
  2052. <P>
  2053. This target should emit a <A HREF="#pageBreak">pageBreak</A> before the automatic Table
  2054. of Contents.
  2055. </P>
  2056. <H3 ID="autotocnewpageafter">autotocnewpageafter</H3>
  2057. <P>
  2058. This target should emit a <A HREF="#pageBreak">pageBreak</A> after the automatic Table
  2059. of Contents.
  2060. </P>
  2061. <H3 ID="autotocwithbars">autotocwithbars</H3>
  2062. <P>
  2063. This target should emit a <A HREF="#bar1">bar1</A> before and after the automatic
  2064. Table of Contents.
  2065. </P>
  2066. <H3 ID="mapbar2pagebreak">mapbar2pagebreak</H3>
  2067. <P>
  2068. This target should use a <A HREF="#pageBreak">pageBreak</A> instead of <A HREF="#bar1">bar2</A>. If
  2069. it is defined, the anything defined for <CODE>bar2</CODE> is ignored.
  2070. </P>
  2071. <H3 ID="titleblocks">titleblocks</H3>
  2072. <P>
  2073. This target uses title and section blocks.
  2074. </P>
  2075. <P>
  2076. If it is defined, then <A HREF="#title1">title*</A> tags are ignored. Instead
  2077. <A HREF="#title1open">title*Open</A> and <A HREF="#blockTitle1Open">blockTitle*Open</A> tags
  2078. will be used to set off titles and sections.
  2079. </P>
  2080. <P>
  2081. This affects the output of <A HREF="#chapter-TitlesandSections">titles</A>.
  2082. </P>
  2083. <H3 ID="listlineafteropen">listlineafteropen</H3>
  2084. <P>
  2085. This target should emit <A HREF="#listItemLine">listItemLine</A> after <A HREF="#listItemOpen">listItemOpen</A>.
  2086. </P>
  2087. <H3 ID="escapexmlchars">escapexmlchars</H3>
  2088. <P>
  2089. This target should escape the XML special characters: &lt; &gt; &amp;
  2090. </P>
  2091. <H3 ID="listlevelzerobased">listlevelzerobased</H3>
  2092. <P>
  2093. This target should start list levels at 0 when encoding the level
  2094. into list tags.
  2095. </P>
  2096. <P>
  2097. It affects the output of <A HREF="#listItemOpen">listItemOpen</A>, <A HREF="#numlistItemOpen">numlistItemOpen</A>, and
  2098. <A HREF="#deflistItemOpen">deflistItemOpen</A>.
  2099. </P>
  2100. <H3 ID="zerodepthparagraph">zerodepthparagraph</H3>
  2101. <P>
  2102. For this target, non-nested paragraphs should have block depth of 0
  2103. instead of 1 when the block depth is encoded into the output.
  2104. </P>
  2105. <P>
  2106. This affects the output of <A HREF="#paragraphOpen">paragraphOpen</A>.
  2107. </P>
  2108. <H3 ID="cellspancumulative">cellspancumulative</H3>
  2109. <P>
  2110. For this target, cell span values add up for each cell of a row.
  2111. </P>
  2112. <P>
  2113. It affects the output of <A HREF="#_tableCellColSpan">_tableCellColSpan</A>, and from that it may
  2114. affect the output of <A HREF="#tableCellOpen">tableCellOpen</A>, <A HREF="#tableCellClose">tableCellClose</A>,
  2115. <A HREF="#tableCellHead">tableCellHead</A>, and <A HREF="#_tableCellMulticolOpen">_tableCellMulticolOpen</A>.
  2116. </P>
  2117. <H3 ID="keepblankheaderline">keepblankheaderline</H3>
  2118. <P>
  2119. For this target, template lines are not removed if the macros being
  2120. inserted are blank.
  2121. </P>
  2122. <P>
  2123. This affects the output of <A HREF="#section-Template">the template</A>.
  2124. </P>
  2125. <H3 ID="indentverbblock">indentverbblock</H3>
  2126. <P>
  2127. This target should add leading spaces to verb block lines.
  2128. </P>
  2129. <P>
  2130. It affects the output of <A HREF="#section-VerbatimBlocks">verbatim blocks</A>.
  2131. </P>
  2132. <H3 ID="breaktablecell">breaktablecell</H3>
  2133. <P>
  2134. This target should insert line breaks after every table cell.
  2135. </P>
  2136. <P>
  2137. If affects the output of <A HREF="#section-Cells">table cells</A>.
  2138. </P>
  2139. <H3 ID="breaktablelineopen">breaktablelineopen</H3>
  2140. <P>
  2141. This target should insert a line break after <A HREF="#tableRowOpen">tableRowOpen</A> and
  2142. <A HREF="#tableTitleRowOpen">tableTitleRowOpen</A>.
  2143. </P>
  2144. <H3 ID="notbreaklistopen">notbreaklistopen</H3>
  2145. <P>
  2146. This target should <I>not</I> insert a line break after <A HREF="#listOpen">listOpen</A>,
  2147. <A HREF="#numlistOpen">numlistOpen</A> or <A HREF="#deflistOpen">deflistOpen</A>.
  2148. </P>
  2149. <H3 ID="keepquoteindent">keepquoteindent</H3>
  2150. <P>
  2151. This target should not remove the leading TABs in block quotes.
  2152. </P>
  2153. <P>
  2154. It affects the output of <A HREF="#section-BlockQuotations">block quotations</A>.
  2155. </P>
  2156. <H3 ID="keeplistindent">keeplistindent</H3>
  2157. <P>
  2158. This target should not remove the leading spaces on list tags.
  2159. </P>
  2160. <P>
  2161. It affects the output of all tags for <A HREF="#chapter-Lists">lists</A>.
  2162. </P>
  2163. <H3 ID="blankendautotoc">blankendautotoc</H3>
  2164. <P>
  2165. This target should append a blank line at the end of the automatic
  2166. Table of Contents.
  2167. </P>
  2168. <H3 ID="tagnotindentable">tagnotindentable</H3>
  2169. <P>
  2170. For this target, tags must be placed at the line beginning.
  2171. </P>
  2172. <P>
  2173. If affects the tags for <A HREF="#section-BlockQuotations">block quotes</A> and
  2174. <A HREF="#chapter-Lists">lists</A>.
  2175. </P>
  2176. <H3 ID="spacedlistitemopen">spacedlistitemopen</H3>
  2177. <P>
  2178. This target should append a space after <A HREF="#listItemOpen">listItemOpen</A>.
  2179. </P>
  2180. <H3 ID="spacednumlistitemopen">spacednumlistitemopen</H3>
  2181. <P>
  2182. This target should append a space after <A HREF="#numlistItemOpen">numlistItemOpen</A>.
  2183. </P>
  2184. <H3 ID="deflisttextstrip">deflisttextstrip</H3>
  2185. <P>
  2186. This target should strip the whitespace off of the definition list
  2187. text.
  2188. </P>
  2189. <P>
  2190. It affects the output of <A HREF="#section-DefinitionLists">definition lists</A>.
  2191. </P>
  2192. <H3 ID="blanksaroundpara">blanksaroundpara</H3>
  2193. <P>
  2194. This target should put a blank line before and after paragraphs.
  2195. </P>
  2196. <P>
  2197. It affects the output of <A HREF="#section-Paragraphs">paragraphs</A>.
  2198. </P>
  2199. <H3 ID="blanksaroundverb">blanksaroundverb</H3>
  2200. <P>
  2201. This target should put a blank line before and after verb blocks.
  2202. </P>
  2203. <P>
  2204. It affects the output of <A HREF="#section-VerbatimBlocks">verbatim blocks</A>.
  2205. </P>
  2206. <H3 ID="blanksaroundquote">blanksaroundquote</H3>
  2207. <P>
  2208. This target should put a blank line before and after quotes.
  2209. </P>
  2210. <P>
  2211. It affects the output of <A HREF="#section-BlockQuotations">block quotations</A>.
  2212. </P>
  2213. <H3 ID="blanksaroundlist">blanksaroundlist</H3>
  2214. <P>
  2215. This target should put a blank line before and after lists.
  2216. </P>
  2217. <P>
  2218. It affects the output of <A HREF="#section-UnorderedLists">regular lists</A>.
  2219. </P>
  2220. <H3 ID="blanksaroundnumlist">blanksaroundnumlist</H3>
  2221. <P>
  2222. This target should put a blank line before and after numbered lists.
  2223. </P>
  2224. <P>
  2225. It affects the output of [numbered lists [#section-NumberedLists].
  2226. </P>
  2227. <H3 ID="blanksarounddeflist">blanksarounddeflist</H3>
  2228. <P>
  2229. This target should put a blank line before and after definition
  2230. lists.
  2231. </P>
  2232. <P>
  2233. It affects the output of [definition lists [#section-DefinitionLists].
  2234. </P>
  2235. <H3 ID="blanksaroundnestedlist">blanksaroundnestedlist</H3>
  2236. <P>
  2237. This target should put a blank line before and after all types of
  2238. nested lists.
  2239. </P>
  2240. <P>
  2241. It affects the output of all <A HREF="#chapter-Lists">lists</A>.
  2242. </P>
  2243. <H3 ID="blanksaroundtable">blanksaroundtable</H3>
  2244. <P>
  2245. This target should put a blank line before and after tables.
  2246. </P>
  2247. <P>
  2248. It affects the output of <A HREF="#chapter-Tables">tables</A>.
  2249. </P>
  2250. <H3 ID="blanksaroundbar">blanksaroundbar</H3>
  2251. <P>
  2252. This target should put a blank line before and after horizontal
  2253. lines.
  2254. </P>
  2255. <P>
  2256. It affects the output of <A HREF="#bar1">bar1 and bar2</A>.
  2257. </P>
  2258. <H3 ID="blanksaroundtitle">blanksaroundtitle</H3>
  2259. <P>
  2260. This target should put a blank line before and after titles.
  2261. </P>
  2262. <P>
  2263. It affects the output of <A HREF="#title1">title*</A> and <A HREF="#title1open">title*Open</A>.
  2264. </P>
  2265. <H3 ID="blanksaroundnumtitle">blanksaroundnumtitle</H3>
  2266. <P>
  2267. This target should put a blank line before and after numbered
  2268. titles.
  2269. </P>
  2270. <P>
  2271. If affects the output of <A HREF="#numtitle1">numtitle*</A>.
  2272. </P>
  2273. <H3 ID="listmaxdepth">listmaxdepth</H3>
  2274. <P>
  2275. This is a value rule defining the maximum nesting depth for lists.
  2276. </P>
  2277. <P>
  2278. It affects the output of <A HREF="#chapter-Lists">lists</A>.
  2279. </P>
  2280. <H3 ID="quotemaxdepth">quotemaxdepth</H3>
  2281. <P>
  2282. This is a value rule defining the maximum nesting depth for block
  2283. quotes.
  2284. </P>
  2285. <P>
  2286. It affects the output of <A HREF="#section-BlockQuotations">block quotations</A>.
  2287. </P>
  2288. <H3 ID="tablecellaligntype">tablecellaligntype</H3>
  2289. <P>
  2290. This is a value rule defining the type of alignment allowed for
  2291. tables cells. The legal values are 'cell' or 'column'.
  2292. </P>
  2293. <P>
  2294. Its value affects whether <A HREF="#_tableColAlign">_tableColAlign*</A> or
  2295. <A HREF="#_tableCellAlign">_tableCellAlign*</A> tags are used.
  2296. </P>
  2297. <P>
  2298. It may affect the output of <A HREF="#tableOpen">tableOpen</A>, <A HREF="#tableRowOpen">tableRowOpen</A>,
  2299. <A HREF="#tableRowSep">tableRowSep</A>, <A HREF="#tableCellOpen">tableCellOpen</A>, <A HREF="#_tableCellMulticolOpen">_tableCellMulticolOpen</A>,
  2300. <A HREF="#tableCellHead">tableCellHead</A>, and other related tags.
  2301. </P>
  2302. <H3 ID="blockdepthmultiply">blockdepthmultiply</H3>
  2303. <P>
  2304. This value rule changes the value of a blocks depth value, for
  2305. targets that encode depth into the output tags.
  2306. </P>
  2307. <P>
  2308. It may affect the output of <A HREF="#paragraphOpen">paragraphOpen</A>, <A HREF="#blockQuoteOpen">blockQuoteOpen</A>,
  2309. <A HREF="#listItemOpen">listItemOpen</A>, <A HREF="#numlistItemOpen">numlistItemOpen</A>, and <A HREF="#deflistItemOpen">deflistItemOpen</A>.
  2310. </P>
  2311. <H3 ID="depthmultiplyplus">depthmultiplyplus</H3>
  2312. <P>
  2313. This value rule is added to add to the block depth before
  2314. multiplying by 'blockdepthmultiply'.
  2315. </P>
  2316. <P>
  2317. It may affect the output of <A HREF="#paragraphOpen">paragraphOpen</A>, <A HREF="#blockQuoteOpen">blockQuoteOpen</A>,
  2318. <A HREF="#listItemOpen">listItemOpen</A>, <A HREF="#numlistItemOpen">numlistItemOpen</A>, and <A HREF="#deflistItemOpen">deflistItemOpen</A>.
  2319. </P>
  2320. <H3 ID="cellspanmultiplier">cellspanmultiplier</H3>
  2321. <P>
  2322. This value rule changes the value of a table cell span.
  2323. </P>
  2324. <P>
  2325. It affects the output of <A HREF="#_tableCellColSpan">_tableCellColSpan</A>, and from that may
  2326. affect the output of <A HREF="#tableCellOpen">tableCellOpen</A>, <A HREF="#tableCellClose">tableCellClose</A>,
  2327. <A HREF="#_tableCellMulticolOpen">_tableCellMulticolOpen</A> and <A HREF="#tableCellHead">tableCellHead</A>.
  2328. </P>
  2329. <!-- html code generated by txt2tags 2.6.668 (http://txt2tags.org) -->
  2330. <!-- cmdline: txt2tags -t html doc/English/tags-reference.t2t -->
  2331. </BODY></HTML>