using-dita-command.html 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. <!DOCTYPE html
  2. SYSTEM "about:legacy-compat">
  3. <html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="UTF-8"><meta name="copyright" content="(C) Copyright 2020"><meta name="DC.rights.owner" content="(C) Copyright 2020"><meta name="DC.type" content="task"><meta name="description" content="You can generate output using the dita command-line tool. Build parameters can be specified on the command line or with .properties files."><meta name="DC.subject" content="macOS, command, dita, Linux, Windows, command, using"><meta name="keywords" content="macOS, command, dita, Linux, Windows, command, using"><meta name="DC.format" content="HTML5"><meta name="DC.identifier" content="using-command-line-tool"><link rel="stylesheet" type="text/css" href="../css/commonltr.css"><link rel="stylesheet" type="text/css" href="../css/dita-ot-doc.css"><title>Building output using the dita command</title></head><body id="using-command-line-tool"><header role="banner"><div class="header">
  4. <p>DITA Open Toolkit</p>
  5. <hr>
  6. </div></header><nav role="toc"><ul></ul></nav><main role="main"><article role="article" aria-labelledby="ariaid-title1">
  7. <h1 class="title topictitle1" id="ariaid-title1">Building output using the <span class="keyword cmdname">dita</span> command</h1>
  8. <div class="body taskbody"><p class="shortdesc">You can generate output using the <span class="keyword cmdname">dita</span> command-line tool. Build parameters can be
  9. specified on the command line or with <span class="ph filepath">.properties</span> files.</p>
  10. <section class="section context"><div class="tasklabel"><h2 class="sectiontitle tasklabel">About this task</h2></div>The DITA-OT client is a command-line tool with no graphical user interface. To verify
  11. that your installation works correctly, you can build output using the sample files included in the distribution
  12. package.</section>
  13. <section><div class="tasklabel"><h2 class="sectiontitle tasklabel">Procedure</h2></div><ol class="ol steps"><li class="li step stepexpand">
  14. <span class="ph cmd">Open a terminal window by typing the following in the search bar:</span>
  15. <div class="itemgroup info">
  16. <ul class="ul">
  17. <li class="li">On Linux and macOS, type <kbd class="ph userinput">Terminal</kbd>.</li>
  18. <li class="li">On Windows, type <kbd class="ph userinput">Command Prompt</kbd>.</li>
  19. </ul>
  20. </div>
  21. </li><li class="li step stepexpand">
  22. <span class="ph cmd">At the command-line prompt, enter the following command:</span>
  23. <div class="itemgroup info"><pre class="pre codeblock"><code><span class="ph filepath"><var class="keyword varname">dita-ot-dir</var>/bin/<span class="keyword cmdname">dita</span></span> <span class="keyword parmname">--input</span>=<var class="keyword varname">input-file</var> <span class="keyword parmname">--format</span>=<var class="keyword varname">format</var> <span class="ph">[<var class="keyword varname">options</var>]</span></code></pre>
  24. <p class="p">where:</p>
  25. <ul class="ul">
  26. <li class="li"><span class="ph filepath"><var class="keyword varname">dita-ot-dir</var></span> is the DITA-OT installation directory.</li><li class="li"><var class="keyword varname">input-file</var> is the DITA map or DITA file that you want to
  27. process.</li><li class="li">
  28. <p class="p" id="using-command-line-tool__d652e253">
  29. <var class="keyword varname">format</var> is the output format (transformation type). This argument corresponds to the
  30. common parameter <span class="keyword parmname">transtype</span>. Use the same values as for the
  31. <span class="keyword parmname">transtype</span> build parameter, for example <span class="keyword option">html5</span> or
  32. <span class="keyword option">pdf</span>. </p>
  33. </li>
  34. <li class="li"><span class="ph filepath"><var class="keyword varname">dita-ot-dir</var></span> is the DITA-OT installation directory.</li><li class="li"><var class="keyword varname">input-file</var> is the DITA map or DITA file that you want to
  35. process.</li>
  36. <li class="li">
  37. <p class="p">
  38. <var class="keyword varname">format</var> is the output format (transformation type). This argument corresponds to the
  39. common parameter <span class="keyword parmname">transtype</span>. Use the same values as for the
  40. <span class="keyword parmname">transtype</span> build parameter, for example <span class="keyword option">html5</span> or
  41. <span class="keyword option">pdf</span>. </p>
  42. <div class="p" id="using-command-line-tool__d652e292">You can create plug-ins to add new output formats; by default, the following values are
  43. available:
  44. <ul class="ul">
  45. <li class="li"><span class="keyword option">dita</span></li>
  46. <li class="li"><span class="keyword option">eclipsehelp</span></li>
  47. <li class="li"><span class="keyword option">html5</span></li>
  48. <li class="li"><span class="keyword option">htmlhelp</span></li>
  49. <li class="li"><span class="keyword option">markdown</span>, <span class="keyword option">markdown_gitbook</span>, and
  50. <span class="keyword option">markdown_github</span></li>
  51. <li class="li"><span class="keyword option">pdf</span></li>
  52. <li class="li"><span class="keyword option">xhtml</span></li>
  53. </ul>
  54. <div class="note tip note_tip"><span class="note__title">Tip:</span> See
  55. <a class="xref" href="output-formats.html" title="DITA Open Toolkit ships with several core transformations that convert DITA content to different output formats. Additional formats are available from the plug-in registry at dita-ot.org/plugins.">DITA-OT transformations (output formats)</a> for sample command line syntax and more information on each
  56. transformation. </div>
  57. </div>
  58. </li>
  59. <li class="li">[<var class="keyword varname">options</var>] include the following optional build parameters:
  60. <dl class="dl parml">
  61. <dt class="dt pt dlterm">
  62. <span class="keyword parmname">--debug</span></dt>
  63. <dt class="dt pt dlterm">
  64. <span class="keyword parmname">-d</span>
  65. </dt>
  66. <dd class="dd pd">Debug logging prints considerably more additional information. The debug log includes all information from
  67. the verbose log, plus details on Java classes, additional Ant properties and overrides, preprocessing
  68. filters, parameters, and stages, and the complete build sequence. Debug logging requires additional
  69. resources and can slow down the build process, so it should only be enabled when further details are
  70. required to diagnose problems.</dd>
  71. <dt class="dt pt dlterm">
  72. <span class="keyword parmname">--output</span>=<var class="keyword varname">dir</var></dt>
  73. <dt class="dt pt dlterm">
  74. <span class="keyword parmname">-o</span>
  75. <var class="keyword varname">dir</var>
  76. </dt>
  77. <dd class="dd pd" id="using-command-line-tool__d652e387">
  78. <p class="p">Specifies the path of the output directory; the path can be absolute or relative to the current
  79. directory.</p>
  80. <p class="p">This argument corresponds to the common parameter <span class="keyword parmname">output.dir</span>. By default, the output
  81. is written to the <span class="ph filepath">out</span> subdirectory of the current directory.</p>
  82. </dd>
  83. <dt class="dt pt dlterm">
  84. <span class="keyword parmname">--filter</span>=<var class="keyword varname">files</var>
  85. </dt>
  86. <dd class="dd pd">Specifies filter file(s) used to include, exclude, or flag content. </dd>
  87. <dd class="dd pd ddexpand">
  88. <p class="p">This argument corresponds to the common parameter <span class="keyword parmname">args.filter</span>. Relative paths are
  89. resolved against the current directory and internally converted to absolute paths.</p>
  90. <div class="note note note_note"><span class="note__title">Note:</span>
  91. <p class="p">To specify multiple filter files, use the system path separator character to delimit individual file
  92. paths (semicolon ‘<code class="ph codeph">;</code>’ on Windows, and colon ‘<code class="ph codeph">:</code>’ on macOS and Linux) and
  93. wrap the value in quotes:</p>
  94. <p class="p"><code class="ph codeph">--filter="filter1.ditaval;filter2.ditaval;filter3.ditaval"</code></p>
  95. <p class="p">DITAVAL files are evaluated in the order specified, so conditions specified in the first file take
  96. precedence over matching conditions specified in later files, just as conditions at the start of a
  97. DITAVAL document take precedence over matching conditions later in the same document.</p>
  98. </div>
  99. </dd>
  100. <dt class="dt pt dlterm">
  101. <span class="keyword parmname">--force</span>
  102. </dt>
  103. <dd class="dd pd">Force-install an existing plug-in.</dd>
  104. <dd class="dd pd ddexpand">Passed as an additional option to the installation subcommand: <span class="keyword cmdname">dita
  105. install</span>&nbsp;<var class="keyword varname">plug-in-zip</var>&nbsp;<span class="keyword parmname">--force</span></dd>
  106. <dt class="dt pt dlterm">
  107. <span class="keyword parmname">--help</span></dt>
  108. <dt class="dt pt dlterm">
  109. <span class="keyword parmname">-h</span>
  110. </dt>
  111. <dd class="dd pd">Print a list of available arguments, options, and subcommands.</dd>
  112. <dt class="dt pt dlterm">
  113. <span class="keyword parmname">--logfile</span>=<var class="keyword varname">file</var></dt>
  114. <dt class="dt pt dlterm">
  115. <span class="keyword parmname">-l</span>
  116. <var class="keyword varname">file</var>
  117. </dt>
  118. <dd class="dd pd">Write logging messages to a file.</dd>
  119. <dt class="dt pt dlterm">
  120. <span class="keyword parmname">--parameter</span>=<var class="keyword varname">value</var></dt>
  121. <dt class="dt pt dlterm">
  122. <span class="keyword parmname">-D</span><var class="keyword varname">parameter</var>=<var class="keyword varname">value</var>
  123. </dt>
  124. <dd class="dd pd">Specify a value for a DITA-OT or Ant build parameter.
  125. <p class="p">The GNU-style <span class="keyword parmname">--parameter</span>=<var class="keyword varname">value</var> form is only available for
  126. parameters that are configured in the plug-in configuration file; the Java-style <span class="keyword parmname">-D</span>
  127. form can also be used to specify additional non-configured parameters or set system properties.</p>
  128. <p class="p">Parameters not implemented by the specified transformation type or referenced in a
  129. <span class="ph filepath">.properties</span> file are ignored.</p>
  130. <div class="note tip note_tip"><span class="note__title">Tip:</span> If you are building in different environments where the location of the input
  131. files is not consistent, set <span class="keyword option">args.input.dir</span> with the <span class="keyword cmdname">dita</span> command and
  132. reference its value with <code class="ph codeph">${args.input.dir}</code> in your <span class="ph filepath">.properties</span> file.
  133. </div></dd>
  134. <dt class="dt pt dlterm">
  135. <span class="keyword parmname">--propertyfile</span>=<var class="keyword varname">file</var>
  136. </dt>
  137. <dd class="dd pd">Use build parameters defined in the referenced <span class="ph filepath">.properties</span> file.
  138. <p class="p">Build parameters specified on the command line override those set in the <span class="ph filepath">.properties</span>
  139. file.</p></dd>
  140. <dt class="dt pt dlterm">
  141. <span class="keyword parmname">--resource</span>=<var class="keyword varname">file</var>
  142. </dt>
  143. <dt class="dt pt dlterm">
  144. <span class="keyword parmname">-r</span>
  145. <var class="keyword varname">file</var>
  146. </dt>
  147. <dd class="dd pd">Process input with additional resources.
  148. <div class="p">For example, to process a single topic file with a map that contains key definitions, use a command like
  149. this:
  150. <pre class="pre codeblock"><code><span class="keyword cmdname">dita</span> <span class="keyword parmname">--input</span>=<span class="ph filepath">topic.dita</span> <span class="keyword parmname">--resource</span>=<span class="ph filepath">keys.ditamap</span> <span class="keyword parmname">--format</span>=<span class="keyword option">html5</span></code></pre>
  151. </div></dd>
  152. <dt class="dt pt dlterm">
  153. <span class="keyword parmname">--temp</span>=<var class="keyword varname">dir</var></dt>
  154. <dt class="dt pt dlterm">
  155. <span class="keyword parmname">-t</span>
  156. <var class="keyword varname">dir</var>
  157. </dt>
  158. <dd class="dd pd">Specifies the location of the temporary directory.</dd>
  159. <dd class="dd pd ddexpand">This argument corresponds to the common parameter <span class="keyword parmname">dita.temp.dir</span>.</dd>
  160. <dt class="dt pt dlterm">
  161. <span class="keyword parmname">--verbose</span></dt>
  162. <dt class="dt pt dlterm">
  163. <span class="keyword parmname">-v</span>
  164. </dt>
  165. <dd class="dd pd">Verbose logging prints additional information to the console, including directory settings, effective
  166. values for Ant properties, input/output files, and informational messages to assist in troubleshooting.</dd>
  167. </dl></li>
  168. </ul></div>
  169. <div class="itemgroup stepresult">
  170. <p class="p">If processing is successful, nothing is printed in the terminal window. The built output is written to the
  171. specified output directory (by default, in the <span class="ph filepath">out</span> subdirectory of the current
  172. directory).</p>
  173. <div class="note tip note_tip" id="using-command-line-tool__d652e711"><span class="note__title">Tip:</span> Add the absolute path for <span class="ph filepath"><var class="keyword varname">dita-ot-dir</var></span><span class="ph filepath">/bin</span> to the <var class="keyword varname">PATH</var> environment variable to run the
  174. <span class="keyword cmdname">dita</span> command from any location on the file system without typing the path.
  175. </div>
  176. </div>
  177. </li></ol></section>
  178. <section class="example"><div class="tasklabel"><h2 class="sectiontitle tasklabel">Example</h2></div>
  179. <p class="p">Run from <span class="ph filepath"><var class="keyword varname">dita-ot-dir</var>/docsrc/samples</span>, the following command generates
  180. HTML5 output for the <span class="ph filepath">sequence.ditamap</span> file:</p>
  181. <pre class="pre codeblock"><code><span class="ph filepath"><var class="keyword varname">dita-ot-dir</var>/bin/<span class="keyword cmdname">dita</span></span> <span class="keyword parmname">--input</span>=<span class="ph filepath">sequence.ditamap</span> <span class="keyword parmname">--format</span>=<span class="keyword option">html5</span></code></pre>
  182. </section>
  183. <section class="example"><div class="tasklabel"><h2 class="sectiontitle tasklabel">Example</h2></div>
  184. <p class="p">For example, from <span class="ph filepath"><var class="keyword varname">dita-ot-dir</var>/docsrc/samples</span>, run:</p>
  185. <div class="p">
  186. <pre class="pre codeblock"><code><span class="keyword cmdname">dita</span> <span class="keyword parmname">--input</span>=<span class="ph filepath">sequence.ditamap</span> <span class="keyword parmname">--format</span>=<span class="keyword option">html5</span> \
  187. <span class="keyword parmname">--output</span>=<span class="ph filepath">output/sequence</span> \
  188. <span class="keyword parmname">--args.input.dir</span>=<span class="ph filepath"><var class="keyword varname">/absolute/path/to/dita-ot-dir</var>/docsrc/samples</span> \
  189. <span class="keyword parmname">--propertyfile</span>=<span class="ph filepath">properties/sequence-html5.properties</span></code></pre>
  190. </div>
  191. <p class="p">This builds <span class="ph filepath">sequence.ditamap</span> to HTML5 output in <span class="ph filepath">output/sequence</span> using
  192. the following additional parameters specified in the <span class="ph filepath">properties/sequence-html5.properties</span>
  193. file:</p>
  194. <div class="p">
  195. <pre class="pre codeblock language-properties normalize-space show-line-numbers show-whitespace"><code># Directory that contains the custom .css file:
  196. args.cssroot = ${args.input.dir}/css/
  197. # Custom .css file used to style output:
  198. args.css = style.css
  199. # Copy the custom .css file to the output directory:
  200. args.copycss = yes
  201. # Location of the copied .css file relative to the output:
  202. args.csspath = branding
  203. # Generate a full navigation TOC in topic pages:
  204. nav-toc = full</code></pre>
  205. </div>
  206. </section>
  207. <section class="section postreq"><div class="tasklabel"><h2 class="sectiontitle tasklabel">What to do next</h2></div>
  208. <p class="p">Most builds require you to specify more options than are described in this topic.</p>
  209. <p class="p">Usually, you will want to specify a set of reusable build parameters in a
  210. <span class="ph filepath">.properties</span> file.</p>
  211. </section>
  212. </div>
  213. </article></main></body></html>