PlantUML を使うとき、Atom と組み合わせると、とても便利だったので、メモ。
前提
- macOS Mojave
- 10.14.4
- Homebrew
- 2.1.1
- Java
- OpenJDK 11.0.1
- Atom
- 1.34.0
インストールするもの
- PlantUML
- Atom パッケージ
なお、よく紹介されている plantuml-viewer はエラーが出て、正常に動作しませんでした。1
手順
Java
お好みの方法でインストールしてください。
Atom
お好みの方法で(以下省略)
PlantUML
Homebrew で PlantUML をインストールします。
$ brew install plantuml
シーケンス図とアクティビティ図以外も作成したい場合は graphviz
が必要です。
ただし、Homebrew は plantuml
をインストールすると、自動的に graphviz
もインストールしてくれます。
==> Installing dependencies for plantuml: libpng, freetype, fontconfig, libtiff, webp, gd, pcre, readline, sqlite, python, glib, jasper, netpbm, gts and graphviz
plantuml -version
でインストールに成功したかを確認することができます。2
$ plantuml -version
PlantUML version 1.2019.05 (Sun Apr 21 01:45:36 JST 2019)
(GPL source distribution)
Java Runtime: OpenJDK Runtime Environment
JVM: OpenJDK 64-Bit Server VM
Java Version: 11.0.1+13
Operating System: Mac OS X
OS Version: 10.14.4
Default Encoding: UTF-8
Language: ja
Country: JP
Machine: ***************.local
PLANTUML_LIMIT_SIZE: 4096
Processors: 4
Max Memory: 2,147,483,648
Total Memory: 134,217,728
Free Memory: 127,336,976
Used Memory: 6,880,752
Thread Active Count: 1
The environment variable GRAPHVIZ_DOT has been set to /usr/local/opt/graphviz/bin/dot
Dot executable is /usr/local/opt/graphviz/bin/dot
Dot version: dot - graphviz version 2.40.1 (20161225.0304)
Installation seems OK. File generation OK
language-plantuml
Atom は PlantUML ファイルを構文強調してくれません。
Preferences -> Install から language-plantuml を検索して、インストールします。
インストール後は、とくに設定する必要なく、構文強調されるようになります。
plantuml-preview
PlantUML ファイルをすぐにプレビューできるようにします。
Preferences -> Install から plantuml-preview を検索して、インストールします。
インストール後、Preferences -> Packages から plantuml-preview を検索して、以下の項目を設定します。
-
Graphvis Dot Executable
-
/usr/local/opt/graphviz/bin/dot
-
plantuml -version
の実行結果の中にも記載されています。
-
-
-
PlantUML Jar
-
/usr/local/Cellar/plantuml/1.2019.5/libexec/plantuml.jar
- インストールした PlantUML のバージョンによってパスが変わります。
-
find / -name "plantuml.jar" 2>/dev/null
で検索するのがオススメ。
-
使い方
- Atom で PlantUML ファイルを作成します。
- メニューの Packages -> PlantUML Preview -> Toggle をクリックします。
- プレビューが開きます。
- ファイルを保存するたびに自動的に再描画してくれます。
- ファイルを保存しないと再描画してくれないので注意
キーバインド
plantuml-preview では、デフォルトで以下のキーを使うことができます。
キー | 動作 |
---|---|
ctrl + alt + p | プレビューの表示/非表示を切り替える |
cmd + + | 拡大する |
cmd + = | 拡大する |
cmd + _ | 縮小する |
cmd + - | 縮小する |
cmd + 0 | 縮尺をリセットする |
cmd + 9 | 縮尺をプレビュー画面に合わせる |
PNGファイルの解像度
SVG で出力したらキレイなのに PNG で出力したら汚く見える場合は、PNG ファイルの解像度が低い可能性があります。
PlantUML ファイルで skinparam dpi 300
のように設定すると、解像度を大きくすることができます。
サンプル
例えば、以下のような適当なコードの場合。3
@startuml
'解像度設定
skinparam dpi 300
abstract class AbstractClass {
# {abstract}getValue()
# {abstract}prefixValue()
+ printOut()
}
interface Writable {
+ {abstract}write()
}
class ConcreteClass1 {
# getValue()
# prefixValue($prefix)
+ setValue($value)
- $value
}
class ConcreteClass2 {
# getValue()
# prefixValue($prefix)
+ write()
}
AbstractClass <|-- ConcreteClass1
AbstractClass <|-- ConcreteClass2
Writable <|-- ConcreteClass2
@enduml
プレビューすると、以下のように表示されます。
参考
-
PlantUMLを使ったUMLの描き方
- 公式リファレンス
-
PlantUML Cheat Sheet
- PlantUML の書き方
-
Atomでplant-viewerが動かないから、代わりにplantuml-previewを使う(mac)
- plantuml-preview について
-
真面目に PlantUML (1) : PlantUML のインストール
- PlantUML で PNG ファイルの解像度を設定する方法について