Closed6

【VSCode】言語サポートの追加方法まとめ

nanasinanasi

まず初めに、VSCodeでできる言語サポートには以下がある。

  • シンタックスハイライト: キーワードのハイライトなど
  • セマンティックハイライト: 意味付けできるらしい?
  • スニペット: 短い文字列からテンプレートのコードを展開
  • その他便利機能: カッコの自動閉じ、⌘/でのコメントアウトなど
  • LSP(Language Server): 高度なことができるらしい、VSCode以外にも対応可能?
  • 言語の中に言語を埋め込むやつ

という感じで、結構種類が多い。
どれをやってどれをやらないのかしっかり決めないと確実に混乱するので注意。
可能であればChatGPTやClaudeなどに技術選定を手伝ってもらおう。

nanasinanasi

実装難易度表(初心者作なので正しいとは限らない)

名前 実装 難易度
スニペット 設定ファイル
その他便利機能 設定ファイル
シンタックスハイライト 正規表現で解析 ★★
セマンティックハイライト コードで解析 ★★★
LSP コードで解析 ★★★
nanasinanasi

スニペットとその他便利機能は簡単かつ他と役割も被ってないはずなので、迷わず実装してOK。
とくに便利機能はかなり書き心地がよくなる。

nanasinanasi
  • シンタックスハイライト(TextMateで実装)
  • セマンティックハイライト(VSCodeの拡張で実装)
  • LSP(VSCodeの拡張で実装)

これらは役割が一部被っている

nanasinanasi

シンタックスハイライトは、正規表現によって特定の文字列をマーキングする機能。
正規表現なので簡易的なハイライトしかできないが、その分すごい楽。
サクッと実装したければこれが最適。

セマンティックハイライトとLSPは正直良くわからん。
どちらもそれなりに高度なことができるようだけど、ChatGPTによるとLSPがおすすめらしい。

このスクラップは1ヶ月前にクローズされました