Coder Social home page Coder Social logo

dita-ot / registry Goto Github PK

View Code? Open in Web Editor NEW
10.0 10.0 16.0 319 KB

DITA Open Toolkit plug-in registry

Home Page: https://www.dita-ot.org/plugins

License: Apache License 2.0

JavaScript 100.00%
dita dita-ot dita-ot-html-plugin dita-ot-pdf-plugin dita-ot-plugin hacktoberfest publishing xml

registry's Introduction

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.

registry's People

Contributors

actions-user avatar chrispy-snps avatar contrext avatar dita-ot-bot avatar infotexture avatar jason-fox avatar jelovirt avatar martinkreutzer avatar nico-amplexor avatar pstellmann avatar raducoravu avatar robander avatar stefan-jung avatar toshihikomakita avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

registry's Issues

org.doctales.xmltask can't be installed through registry

The sources of org.doctales.xmltask have been moved and the checksum changed. An install command gives the following output which shows the changes that need to be made to fix the bug:

install:
  [install] Reading registries for org.doctales.xmltask@null
  [install] Read registry https://plugins.dita-ot.org/
  [install] Parse registry
  [install] Plugin found at https://plugins.dita-ot.org/[email protected]
      [get] Getting: https://github.com/doctales/org.doctales.xmltask/archive/1.16.1.zip
      [get] To: /tmp/4788761146551753050/plugin.zip
      [get] https://github.com/doctales/org.doctales.xmltask/archive/1.16.1.zip permanently moved to https://github.com/stefan-jung/org.jung.xmltask/archive/1.16.1.zip
      [get] https://github.com/stefan-jung/org.jung.xmltask/archive/1.16.1.zip moved to https://codeload.github.com/stefan-jung/org.jung.xmltask/zip/refs/tags/1.16.1
Error: Downloaded plugin file checksum 97b632928b74c37c6b55a45d9d26a636ffb355371286a66de54923fea134f866 does not match expected value 37c6508eeaabc09b87a44a9e50d6ac854da21b2df41508dfc21ed4db7b756469

I would fix it myself but I think this should be done by the maintainers or the plugin creator. @stefan-jung maybe you can have a look at that.

Github action for publishing to DITA-OT registry

Description

When releasing a new version of a plugin I want to automatically add it to the DITA-OT registry. It would be nice if this could be done automatically. If this would be possible, it would be even nicer to read in the docs how this works. Currently, this takes some effort (cloning, hashing, pull request, ...).

Possible Solution

It would be nice if this could be done automatically using Github Actions. If this would be possible, it would be even nicer to read in the docs how this works.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.