12
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

VSCodeでProject Linksを使いコメント内にプロジェクト内の他のソースへのリンクを書けるようにする

Posted at

VSCodeは便利。今はGoを書くのに使っている。

そのうえで一つ問題があった。
今の開発では、諸々の事情によりビジネスロジックがブリッジパターンの構造となっている。
(機能を実装したpackageの隣に、一通りそれ用のinterfaceだけを定義したpackageがあり、
 他のpackageからはそのinterfaceの方を参照する、という構造)
この時、他の呼び出す側のソースから処理の中を覗きに行こうとすると、
そこで参照しているのはあくまでinterfaceなので、interfaceの定義にまでしか飛べない。
そのinterfaceの定義から、実装コードまで飛びたい。

一応コメント内に file:///〜 で書けばそこがリンクになり、開けるのだが
それはファイルシステム上のフルパスになってしまうため、他のメンバーの役に立たない。

何か無いのかと思ってプラグインを探したところ、140ダウンロードぐらいのマイナーなプラグインが見つかった。
https://marketplace.visualstudio.com/items?itemName=KyleDavidE.vscode-project-links

A dead-simple extension to make project:// links work how you would expect

「お前が想像した通りに動作する project:// リンクが作れる死ぬほどシンプルな拡張」
良い。

本当にそのまま、ソースのコメントに

// このファイルの実装は project://src/path/to/file.go

みたいにプロジェクトルートからのファイルパスを書けば、その部分が下線付きのリンクになり、ファイルが開く。

非常に捗る。ありがたい。

ちなみに

// このファイルの実装は project://src/path/to/file.go#line[,column]

の書式で、特定の行、特定の文字位置に飛ばす事もできる模様。

あまりそこまで使う用途は今のところ思いつかないが、他所から提供された特殊な定義ファイルとか
ソースファイルの解析をした結果をこのフォーマットで出力するとか
そういう感じの使いみちはありそう。

12
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?