なつねこメモ

主にプログラミング関連のメモ帳 ♪(✿╹ヮ╹)ノ 書いてあるコードは自己責任でご自由にどうぞ。記事本文の無断転載は禁止です。

Visual Studio Code のわたしが使っている便利な拡張機能

たまにはちょっと気分転換として、わたしの開発環境の紹介でも書いてみようかな、という気分だったので、
普段わたしが使っているテキストエディターである、 Visual Studio Code に入れている拡張機能について紹介しようと思います。

Programming Language

プログラミング言語系の拡張機能たち。
わたしが多種多様なプログラミング言語を触っている影響で、そこそこ多いかもしれない?

Astro

仕事で Astro を触ることがちまちまあるので、それの拡張機能です。

C/C++ Extension Pack

基本的には C++ は Visual Studio でやっているのですが、まぁ VSCode でいじれても良いだろうと言うことで。
あとは、後述する Blender 用の拡張がなぜかこれを要求しているので入っているのもある。

C#

上と同じく、基本は Visual Studio でやっているものの、あって損では無いのと、 Unity C# Reference を見るのに使う感じ。

CMake Language Support

一部 C++ プロジェクトで CMake を使用しているので、それのシンタックスハイライトとコード補完を行うためのもの。
割と賢い。

Docker

Dockerfile を書くために入れていたけど、今の PC は仮想化機能を使うと死ぬので使ってない。
ついでに仕事でも Docker を使う機会が無いので消した。が、また使うときになったら入れると思う。

DotENV

いわゆる .env を書くための拡張機能。

HashiCorp Terraform

インフラ管理には Terraform 使うよね???っていうアレです。
ただ、個人的には WebStorm の拡張のほうが出来が良い気がしているので、そっちを使いがち。

MDX

ブログ書くときに使う。
一応 Markdown ではあるものの、 MDX としてコンパイルしてたはずなので。

PowerShell

PowerShell を書くために入れてはいるものの、そもそもめったに書かない。

Prisma

DB スキーマ定義言語?である Prisma の拡張機能。
個人開発で Next.js で DB を使うとき、基本は Prisma でやっているのでそれで。
そうじゃなくても、 Prisma の記法自体はかなりわかりやすいと思っているので、ありとあらゆる言語がこれから DB クライアント生成されて欲しい。

Python

Python を書くための拡張機能。
Blender 拡張だったり、 NekoDraw だったりでバリバリ使ってる。

rust-analyzer

Rust 用の拡張機能。
CLI ツールを書くときは、基本的には Rust を使っているので、それが理由で入れてある。 たまに裏で死んでる気配がある。

Solidity

Ethereum 系のコントラクトを書くときに使ってた拡張機能。
こっちは基本機能を提供してくれる。

Solidity Visual Developer

Ethereum 系のコントラクトを書くときに使ってた拡張機能。
アドレスホバーするといろんな情報出してくれたり、メソッドのシグニチャだしたり出来るので、それで使ってた。

TOML Language Support

人に読みやすい設定言語コト TOML を書くときに使う拡張機能。
個人で作ってる CLI は全部 TOML で設定を保存しているので、それをいじるときに使ったりする。

Vue Language Features (Volar)

Vue 用の拡張機能。仕事で使ってる。
ただ、裏の tsc がクソ重いので、弱いマシンで起動させると死ぬ。

x86 and x86_64 Assembly

たまにアセンブリ言語を殴ってることがあるので、それのハイライトに使ってる。

XML

VSCode そのままでも XML 動くじゃん?って話ですが、これは XML の言語サーバーが内蔵されていて、 XML Schema が存在している場合はバリバリ補完が効くようになる。
もちろん、不正なタグを突っ込むとそこにエラーも出してくれる。
まぁ、最近は XML を書くことはもう無いと言えば無いのですが。。。

YAML

上と同じく、こっちも YAML の言語サーバーが内蔵されている。
ある程度のものは schemastore.org あたりから引っぱってくれるし、もし手元に JSON Schema があるなら、

# yaml-language-server: $schema=/path/to/relative/schema.json

ってすれば、それをベースに補完が効くようになる。

Code Quality

コードのクオリティを保つための拡張機能たち。

autopep8

Python 用のコードフォーマッタ。
正直動いていない気もする。

Code Spell Checker

エディター上で動くスペルチェッカー。
スペルミスしてると波線引いて怒ってくれるが、英語のみなので、日本語が下手だと役にたたない。

EditorConfig for VS Code

個人的には .editorconfig 使わない派 (いまその役目はだいたい JS なら ESLint、 Rust なら rustfmt のように、言語そのものがになっているので) なんですが、使っているプロジェクトがいくつかあるので入れている感じ。

ESLint

言わずもがなの ESLint。

GitHub Copilot

AI プログラマーこと Copilot。
個人的には 5 割使えたら良いくらいの精度なので、 Twitter で皆が騒いでる「これでエンジニアいらなくなる!」が実感できていなくて寂しい。

IntelliCode

こっちは MS の AI プログラマー。
Visual Studio は IntelliCode が有効になっているので、それに合わせて使ってる感じ。

IntelliCode API Usage Examples

こっちは MS の AI プログラマー (2)。
ただ、こちらは GitHub から、メソッドのシグニチャを検索して、使い方を教えてくれる。
たまに使い方忘れるメソッドとかある場合はすごく便利。

isort

Python の import をソートしてくれるだけ。
たぶん動いていない気もする。

Markdown All in One

Markdown の便利機能詰め合わせセット。
テーブルとかフォーマットしてくれる。

Prettier - Code formatter

いまどき Prettier 使うのを許してくれない現場は滅べばいいと思うんです。

Stylelint

なんやかんやで最終的には公式でリリースされた Stylelint の拡張機能。
ただ、そもそも最近は CSS を書くことが減ってきているので、役目は減りつつある。

Tailwind CSS IntelliSense

Tailwind CSS でスタイリングするときに実質必須となる拡張機能。
クラス名覚えている人なんていないと思うので、クラス名が覚えられないアンチの方は使ってみてください。

Others

その他便利系。

Blender Development

Blender のアドオンを VSCode 経由でデバッグできるようにしてくれる拡張機能。
VS Code で Blender アドオン開発するなら実質必須。ただし最近のバージョンでは 2.xx は動かないので注意。

GitLens - Git supercharged

CodeLens の Git 版。
いつ変更されたか、とかを CodeLens 風に出してくれる。
便利機能を使う場合は有料。

Pretty TypeScript Errors

見づらい TypeScript の型エラーを見やすくしてくれる。

REST Client

VSCode に HTTP 喋らせる拡張機能。 たまにキャッシュが悪さすることがあるので注意。

TODO Highlight

// TODO
// FIXME

みたいなコメントをいっぱい付ける人向けの拡張機能。
仕事のコードがこの手のコメントたぶん千個近くあって、撲滅運動しているので入れてる。
わたしは TODO コメントは治安が悪化するのであんまりしません。

vscode-icons

最強のアイコン。

つぶやき

VSCode の拡張機能も徐々に Node.js のパッケージみたく小さくなってきている気配を感じるので、まとめてほしさがある。