/dita-ot

DITA Open Toolkit — the open-source publishing engine for content authored in the Darwin Information Typing Architecture.

Primary LanguageJavaApache License 2.0Apache-2.0

DITA Open Toolkit DITA-OT Discussions

DITA Open Toolkit, or DITA-OT for short, is an open-source publishing engine for content authored in the Darwin Information Typing Architecture.

Visit the project website at dita-ot.org for documentation, information about releases, and download packages.

For information on additional DITA and DITA-OT resources, see SUPPORT. To report a bug or suggest a feature, create an issue. For more information on how you can help contribute to the project, see CONTRIBUTING.

Prerequisites: Java 17

To build and run DITA-OT, you’ll need Java Development Kit (JDK), version 17 or newer.

You can download the OpenJDK from AdoptOpenJDK.

Installing

  1. Download the distribution package from dita-ot.org/download.
  2. Extract the contents of the package to the directory where you want to install DITA-OT.
Installing via Homebrew

On macOS and Linux, you can also install DITA-OT using the Homebrew package manager:

brew install dita-ot

Homebrew will automatically download the latest version of the toolkit, install it in a subfolder of the local package Cellar and symlink the dita command to the bin subfolder of the Homebrew installation directory.

Note

Homebrew’s default installation location depends on the operating system architecture:

  • /usr/local on macOS Intel
  • /opt/homebrew on macOS ARM
  • /home/linuxbrew/.linuxbrew on Linux

Building output

You can generate output using the dita command-line tool included with DITA Open Toolkit.

  1. On the command line, change to the bin folder of the DITA-OT installation directory:

    cd path/to/dita-ot-dir/bin
  2. Run the dita command to generate output:

    dita --input=input-file --format=format [options]

    where:

    • input-file is the DITA map or DITA file that you want to process
    • format is the output format (or “transformation type”)

See the documentation for arguments and options.

Development

Building the toolkit from source code and compiling the distribution package

  1. Clone the DITA-OT Git repository, including submodules:
    git clone --recurse-submodules git://github.com/dita-ot/dita-ot.git
  2. Change to the DITA-OT directory:
    cd dita-ot
  3. In the root directory, run Gradle to compile the Java code and install plugins:
    ./gradlew

Running tests

./gradlew check

All tests are run by GitHub Actions test workflow on each push and for every pull request.

Formatting code

Requirements:

  • Node.js

Prettier is used retain consistent Java formatting.

  1. Run Prettier:
    npm run fmt

Distribution builds

  1. In the root directory, set up the build environment:

    ./gradlew
  2. Build the distribution packages:

    ./gradlew dist

    Distribution packages are built in the build/distributions directory.

    If Gradle throws an error like java.lang.OutOfMemoryError: Java heap space, you probably need to increase the maximum Java heap size. One way to do this is to set the GRADLE_OPTS environment variable to a value like -Xmx1024m.

    For more information on the -Xmx option, see the Java SE Documentation.

License

DITA Open Toolkit is licensed for use under the Apache License 2.0.