Go to file
Carlo Sciolla f1e9ea1ab5 Fixed quote line breaks 2015-09-21 19:32:06 +02:00
LICENSE.txt Initial import 2012-06-11 13:31:49 +02:00
README.md Fixed quote line breaks 2015-09-21 19:32:06 +02:00
banner.png Added banner 2015-09-21 17:44:43 +02:00
puml-mode.el Prepare for the new version 2015-09-21 17:28:46 +02:00

README.md

MELPA

PlantUML mode for Emacs

puml-mode in action

“Pummel me all you want," I say. "Pummel me to death, in fact. My answers will not change." The Invierno step back, frowning. "You must love her very much," he says, not unkindly.”

from The Bitter Kingdom - Fire and Thorns #3

A PlantUml major mode for Emacs.

Installation

Make sure you have MELPA enabled in your emacs.d. Then, you can just

M-x package-install<RET>
puml-mode<RET>

Enjoy!

Features

  • Syntax highlight
  • Autocompletion
  • Preview

Enable the major mode

You can automatically enable puml-mode for files with extension .puml or plantuml by adding the following to your .emacsrc:

;; Enable puml-mode for PlantUML files
(add-to-list 'auto-mode-alist
             '("\\.puml\\'" . puml-mode)
             '("\\.plantuml\\'" . puml-mode))

Of course, you can always enable manually the major mode by typing M-x puml-mode once in the desired PlantUML file buffer.

Usage

You can either tell puml-mode to autocomplete the word before the cursor by typing M-x puml-complete-symbol. This will open a popup with all the available completions as found in the list of keywords given by running PlantUML with the -language flag.

To render the PlantUML diagram within Emacs, you can also hit M-x puml-preview. This will run PlantUML and display the result in the *PUML-Preview* buffer. The format used to render the diagram is automagically chosen from what's supported by your Emacs. It will be one of the following, in order of preference:

  • SVG
  • PNG still unsupported, see #6
  • Unicode ASCII art

Default key bindings

The following shortcuts are enabled by default:

C-c C-c  renders a PlantUML diagram from the current buffer in the best supported format

Credits

This project stemmed from the great work of Zhang Weize, and the current code still borrows a lot from it.

Thanks to Pavel G. Koukoushkin for implementing the preview functionality.

License

Released under the terms of GPLv2. See LICENSE.txt.