SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

開発用エディタのド定番「VSCode」を使いこなそう

VSCodeをUML図やフローチャート作成に使ってみよう

開発用エディタのド定番「VSCode」を使いこなそう 第11回

Mermaid記法によるダイアグラム作成

 Mermaidは、Markdownファイルに埋め込んだ独自のMermaid記法で、フローチャートやシーケンス図、そしてER図などのダイアグラムや表を作成できるツールです。Mermaid記法はGitHubやQiitaなどでもサポートされており、README.mdファイルや投稿にMermaid記法のブロックを埋め込んで、ドキュメント中にフローチャートを表示するなどさまざまな使い方が可能です。プレビューを確認しながらダイアグラムを編集できる「Mermaid Live Editor」も提供されており、機能が充実しています(図9)。

図9:Mermaid Live Editor
図9:Mermaid Live Editor

 ここでは、Mermaid記法によるダイアグラム作成をサポートする幾つかの拡張機能を紹介します。

Mermaid記法のシンタックスハイライト機能をサポートする「Mermaid Markdown Syntax Highlighting」

 Mermaid記法は、それほど複雑なものではありませんが、それでもシンタックスハイライト機能があればスムースに書き進めることができるでしょう。Brian Pruitt-Goddardによる拡張機能「Mermaid Markdown Syntax Highlighting」を使うと、他言語と同様にキーワードや識別子、カッコ類、コメントなどのカラーリング機能などがサポートされます(図10)。

図10:Mermaid Markdown Syntax Highlighting
図10:Mermaid Markdown Syntax Highlighting

 Mermaid記法でダイアグラム作成するなら、基本としてインストールしておきたい拡張機能です。

Mermaid記法のプレビューをサポートする「Markdown Preview Mermaid Support」

 組み込みのMarkdownプレビュー機能は、Mermaid記法に対応していません。Mermaid記法でダイアグラムを作成するには不便なので、まずはMermaid記法に対応するように強化しておきましょう。Matt Biernerによる拡張機能「Markdown Preview Mermaid Support」を使います。なお、プレビューの表示方法は前回を参照してください。

 拡張機能がない状態だと、Mermaid記法の部分はテキストで表示されるだけですが、拡張機能によりMermaid記法のダイアグラムも表示されるようになります(図11)。

図11:Markdown Mermaid Preview Support
図11:Markdown Mermaid Preview Support

 Mermaid記法を自身では使わずとも、入手したMarkdownファイルがMermaid記法を含むこともあるでしょうから、基本としてインストールしておくとよいでしょう。なお、MarkdownプレビューにおけるMermaid記法をサポートする拡張機能には、Vlad Stirbuによる「Mermaid Preview」などもあります。

ダイアグラムをグラフィカルに作成できる「Mermaid Graphical Editor」

 Mermaid記法を知らなくても作図ができたら便利です。corschenziによる拡張機能「Mermaid Graphical Editor」を使うと、Mermaid記法によるダイアグラムの作成を、グラフィカルなプレビューを見ながらVSCode上で行うことができます。Mermaid記法を知らなくても、作図機能でダイアグラムを作成でき、結果はMermaid記法のファイルで取得できます。

 まずは、適当なMarkdownファイルを開くか、作成して保存します。ダイアグラムを挿入したい場所で、以下のリストのようにMarkdown構文を記述します。

```mermaid
```

 この時点で、Markdown構文の上に「MermaidEditor」と表示されるので、それをクリックすると図12のようにグラフィカルなエディターがサイドバーにオープンします。

図12:Mermaid Graphical Editor(エディタータブ)
図12:Mermaid Graphical Editor(エディタータブ)

 サイドバーには、FLOWCHART(フローチャート)、SEQUENCE(シーケンス図)、CLASS(クラス図)、ER(ER図)の、4つのテンプレートが表示されています。クリックして、挿入したいダイアグラムを選択します。ここでは、FLOWCHARTをクリックしてみました。コード部分に、「flowchart TB」と挿入され、Mermaid Editorタブがツールバーに変化します(図13)。

図13:Mermaid Graphical Editor(ツールバー)
図13:Mermaid Graphical Editor(ツールバー)

 なお、「TB」はTop to Bottomの略で、上から下(↓)に流れるフローチャートを意味します(Top Downの意のTDでも可)。ここをBT(↑)、LR(→)、RL(←)に書き換えれば、フローチャートの方向を変更できます。

 ツールバーは、左から部品の操作(追加、更新)、フロー線(矢印)の操作(追加、更新)、ラベルの書き換え、部品や線の削除となっています。ツールバーは、最後に選択された部品や操作で表示が変わるので注意してください。ここでは、初期状態にあるとして説明しています。

 端子を配置してみます。ツールバー左端にある「□に+」のマークをクリックして、表示される部品の一覧から端子をクリックして選択します。すると、下に小さく「端子に+」が表示されるので、そこをクリックします。ラベルを入力できるようになるので、例えば「Start」と入力します。挿入した内容は、随時エディタータブの方にも反映されます(図14)。

図14:Mermaid Graphical Editor(端子の配置)
図14:Mermaid Graphical Editor(端子の配置)

 部品を追加するには、配置した部品の周囲にある「+」の付いたアイコンをクリックします。あらかじめ、追加したい部品を選択しておくとよいでしょう。自動的に矢印線で接続され、新しい部品が追加されます(図15)。

図15:Mermaid Graphical Editor(部品の追加)
図15:Mermaid Graphical Editor(部品の追加)

 このように、Mermaid記法を知らなくてもダイアグラムを作成していけるので、非常に便利です。生成されたMermaid記法のソースは、GitHubやQiitaのドキュメントに貼り付ければ、そのまま表示できるはずです。

今回登場のショートカットキー

機能 macOS Windows
設定 [Command]+[,] [Ctrl]+[,]
コマンドパレット [Command]+[Shift]+[P] [Ctrl]+[Shift]+[P]

まとめ

 今回は、VSCodeをフローチャート、UML図などのダイアグラム作成ツールとして使う方法を紹介しました。役立ちそうなものがあったら、ぜひ導入してVSCodeの活用領域を拡げてください。

 次回は、VSCodeのデバッグ機能を紹介します。

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
開発用エディタのド定番「VSCode」を使いこなそう連載記事一覧

もっと読む

この記事の著者

WINGSプロジェクト 山内 直(WINGSプロジェクト ヤマウチ ナオ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook <個人紹介>WINGSプロジェクト所属のテクニカルライター。出版社を経てフリーランスとして独立。ライター、エディター、デベロッパー、講師業に従事。屋号は「たまデジ。」。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/20527 2024/12/06 11:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー