AsciiDoc plugin for products on the IntelliJ platform (IDEA, RubyMine, etc)
Java CSS Lex JavaScript Ruby
Latest commit f26dd6d Dec 22, 2016 @ahus1 ahus1 docs updated

README.adoc

IntelliJ AsciiDoc Plugin

A plugin for the IntelliJ platform (IntelliJ IDEA, RubyMine, etc) that provides support for the AsciiDoc markup language. You can install the plugin (named "AsciiDoc") from the plugins section inside your Jetbrains IDE or download it from the Jetbrains Plugin Repository.

If you want to use the JavaFX instead of the Swing preview, you’ll need to run IntelliJ with 64bit Java. If your IntelliJ distribution doesn’t come with 64bit Java, you’ll need to have an environment variable IDEA_JDK or IDEA_JDK64 pointing to the installation folder of a 64bit Java. See Jetbrains support database for more information.

Release notes

0.17.3

  • Make click-on-link-to-open and click-on-preview-to-set-cursor in JavaFX preview compatible with Java 8 u111+

  • Formatting actions from the toolbar should not throw exceptions when triggered at the beginning or end of the document

0.17.2

  • Plugin is now build using the Gradle and gradle-intellij-plugin This should make contributing and releasing easier. Thanks Jiawen Geng!

  • Asciidoctor’s temporary files are now created in a temporary folder per opened document. Thanks @agorges!

0.17.1 (preview, available from Github releases)

  • Improved handling of trailing spaces in syntax highlighting.

  • Fixed code/preview sync for nested HTML (i.e. NOTE)

0.17.0 (preview, available from Github releases)

  • Updated block parsing to support two styles of headings.

  • Block starts and ends are need to be aligned in length and shape when parsed.

0.16.4

  • Improved darcula support for JavaFX. More block types are using proper dark background and light text colors.

0.16.3

  • Theme in preview can be switched from light to darcula independent of IDE theme

0.16.2

  • Handling of Linux and MacOS file names for image preview in JavaFX

0.16.1

  • Added darcula theme for JavaFX preview

  • Clicking on JavaFX preview will set cursor position in editor (thanks to @kastork for the idea)

0.15.4

  • setScene now called from FxThread instead of AWT thread to avoid blocking GUI on MacOS

0.15.3

  • Initialization message appears only during initialization

  • No error message if user switches to a setup where JavaFX preview is no longer available.

0.15.2 (preview, available from Github releases)

  • fixed detection of Mac 64 JVM to be able to activate JavaFX preview

  • click-on-url for JavaFX improved, when slow-loading external images are referenced

0.15.1 (preview, available from Github releases)

  • revised constrained/unconstrained detection

  • Fix problem in syntax highlighting leading to PSI Parser Exceptions

  • refreshing images on JavaFX only if their content has changed to save memory consumption

  • Limiting JavaFX preview to 64bit platforms due to problems especially with Windows OpenJDK 32bit (as default on Windows).

0.15.0 (preview, available from Github releases)

  • correct usage of constrained/unconstrained AsciiDoc formatting

  • JavaFX Preview will automatically scroll to the cursor position of the editor

  • JavaFX preview will automatically open links in the systems’s default browser

  • Caching rendering instances of Asciidoctor for better performance

IntelliJ 15 (including AppCode 3.3, CLion 1.2, DataGrip 1.0, PhpStorm 10, PyCharm 5, RubyMine 8, WebStorm 11) is the new minimum version required for this release.

0.14.3

  • Fix problem in syntax highlighting leading to PSI Parser Exceptions

  • disable automatically refreshing images on JavaFX (to be re-enabled in 0.15.x)

0.14.2

  • Performance improvement: render preview only when visible

  • Don’t show AsciiDoc preview actions in other Editors

  • additional compatibility fixes for IntelliJ 15.x

0.14.1

  • make compatible with IntelliJ 15.x again.
    This should include: AppCode 3.3, CLion 1.2, DataGrip 1.0, PhpStorm 10, PyCharm 5, RubyMine 8, WebStorm 11

0.14

  • New JavaFX preview and real split view

  • Update to asciidoctorj 1.5.4.1 and asciidoctorj-diagram 1.5.0

0.13

  • Updated to asciidoctorj 1.5.3.2, added support for asciidoctor-diagram

0.12

  • Bugfixes, new makelink action, table generation improvement, etc.

0.11

  • Removed AsciiDoc item in right click menu thanks to Dmitry Jemerov.

  • Added 'Open in Browser' menu item.

  • Added 40+ live template (access them by pressing Cmd+J, or type 'ad-')

0.10

  • Toolbar added thanks to Vojtěch Krása

  • Scratch files with preview thanks to Harro Lissenberg

  • Basic Syntax Highlighting thanks to Dmitry Jemerov!

0.9

Performance of editing large documents greatly improved, thanks to Vojtěch Krása

0.8

Fixed incompatibility with non-IDEA IDE’s, thanks to Harro Lissenberg

0.7

Added table creation thanks Harro Lissenberg. Also added basic formatting, and fixed IntelliJ 14.1 incompatibility.

0.6

Convert Markdown to AsciiDoc. Also accessible by using the Refactor → Convert to AsciiDoc menu.

8411b45a 82c5 11e4 9310 ed3d872381ac

0.4

Usable in the following JetBrains products:

  • IntelliJ IDEA

  • WebStorm and PhpStorm

  • PyCharm

  • RubyMine

Features

  • Since 0.8 Fixed incompatibility with non-IDEA IDE’s, thanks to Harro Lissenberg

  • Since 0.7: Right click on a document to apply basic formatting or create tables.

  • Since 0.6: refactor Markdown to AsciiDoc. Right click on a file, or use the Refactor menu, and the Markdown document will be replaced by the AsciiDoc equivalent. Also supports undo, in case you’re not happy with the result!

  • Since 0.4: recognizes the AsciiDoc file extension (.adoc, .asciidoc, .ad)

  • Since 0.4: provides a two-pane AsciiDoc preview editor based on AsciidoctorJ with Live preview.

If you are missing features, please don’t hesitate to let me know on Twitter: @epragt or make an issue in the issue tracker!

Dependencies

This project uses AsciiDoctorJ and JRuby for the rendering of the AsciiDoc content.

For the conversion of Markdown to AsciiDoc, we use Pegdown and the Markdown to AsciiDoc converter.

Build

This plugin is built using Gradle. If you build or run it the first time it will download the community edition of IntelliJ automatically.

If you have developed the plugin before it changed to Gradle you might want to remove the contents of your .idea folder to trigger a re-import of the Gradle project.

To build this plugin, you need to run:

./gradlew -Dfile.encoding=UTF-8 buildPlugin

The ZIP file with plugin to distribute will be located in build/distributions.

To run the plugin for development you’ll need to start

./gradlew -Dfile.encoding=UTF-8 runIdea

Copyright © 2013-2016 Julien Viet and Erik Pragt. Released under the Apache License, Version 2.0 (see LICENSE).

Credits

This plugin is based on the Intellij Markdown plugin by Julien Nicoulaud.

Also, great help was received from Harro Lissenberg, Alexander Schwartz and Dan Allen. Thank you all for your support!