Skip to content

PlantUMLダイアグラムのハイパーリンク追加 #65

@koriym

Description

@koriym

要約

PlantUMLダイアグラムの出力形式を現在のPNGからSVGに変更し、SVGダイアグラム内にハイパーリンクを追加する機能をリクエストします。これにより、クラス図からGitHub上の対応するソースコードファイルにリンクできるようになり、使い勝手が大幅に向上すると思います。

背景

現在、PlantUMLはクラス図をPNG形式で視覚化しています。しかし、大規模なコードベースを扱う場合、ダイアグラムのクラスをクリックしてGitHubリポジトリ内のソースコードに直接移動できる機能があると便利です。ハイパーリンクを実現するためにPNG形式でなく、SVG形式のダイアグラムが必要です。SVGはベクタ形式であり、拡大縮小しても品質が劣化しないしサイズや速度のメリットもあります。

提案

SVG形式のサポート: PlantUMLダイアグラムの出力形式としてSVGをサポートします。
ハイパーリンクのサポート: SVGダイアグラム内にハイパーリンクを追加できるようにします。
GitHubとの統合: これらのハイパーリンクがGitHubリポジトリ内の特定のファイルおよびコード行を指すことができるようにします。

Alice -> Bob: Authentication Request [[https://github.com/your-repo/auth_request.code]]
Bob --> Alice: Authentication Response [[https://github.com/your-repo/auth_response.code]]

@startuml
skinparam svgLinkTarget _blank

class User {
    +String name
    +String email
+    [[https://github.com/your-repo/your-project/blob/main/src/User.php User Class]]
}

class Account {
    +int accountNumber
    +double balance
+    [[https://github.com/your-repo/your-project/blob/main/src/Account.php Account Class]]
}

User --> Account
@enduml

* 矢印にはメソッドをリンクするといいかも知れません。

利点まとめ

  • ナビゲーションの向上: ユーザーはダイアグラムから関連するコードセクションにすばやく移動できます。
  • ドキュメントの強化: ダイアグラムがより情報豊かで実用的になります。
  • 生産性の向上: 特に大規模なプロジェクトでクラス定義を探す時間を削減します。。
  • 品質の向上: SVGはベクタ形式であるため、拡大縮小しても品質が劣化せず、視認性が高い。

参考

https://alps-asd.github.io/app-state-diagram/todomvc/index.html

インラインリンクですが、ノードとリンクがそれぞれの詳細情報にリンクされています。

ご検討のほどよろしくお願いいたします!

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions