聞かれたことのあることないことまとめ。
Q. チームまるごとじゃないんだけど……
A. 問題ありません。とりあえずmavenやgradleで組まれてれば読めるし、きっちりと試してませんがEclipseのプロジェクトでも行けるらしいです。
実際のところ、現場でVSCode使ってるのはチームだと私ぐらいのもんじゃないでしょうか……もっと流行れ。
Q. 機能は大丈夫なの?
A. フルスペックのIDEには劣りますが、必要な機能は大体あります。むしろEclipseより多機能な気さえしてくる
拡張機能の開発も盛んなので、探してみるととっくに作られていることも珍しくありません。
Q. 本当に軽いの?
A. 私の現場環境1での話になってしまいますが、劇的に軽いわけではありません。というか、VSCode向けのJava用言語サーバはそもそもEclipseのものだったりします。
しかし、確実に軽いです。RAM消費は (タスクマネージャで見ただけですが) 0.8GBほど減っています。作業中、かなりRAMを食っている状態でも言語サーバ分が1.2GB程度、本体が0.5GB程度なのでかなり楽です。
まあ、一番軽くなったのはなによりも (エディタとして安定しているので) いきなり作業中のデータが吹き飛ぶ心配をしなくて良くなった私の心かもしれませんが。
Q. 難しくない?
A. ないです。断言します。
そもそもMS製品なので、極論Officeに慣れてればなんとなく近いショートカットキーが使えます。なんなら好き勝手カスタムできるので好きにしてください。
また優しいことに「対話型プレイグラウンド」でスマホゲーよろしくチュートリアルまでしてくれます2。
Q. ぶっちゃけめんどくさくない?
A. 設定済みのEclipseバイナリを落としてくるよりは流石にめんどくさいです。が、大したことはありません。
予めJDKを入れておけば、あとは拡張機能を入れると「え、こんなんで大丈夫なの……?」レベルで動きます。
Q. とりあえずインストールしたぞ! ……で、何をすればいいんだ?
A. 左端、アイコンが縦に5つ並んでいるはずです。一番下のよくわからんパズルっぽいアイコン (?) が拡張機能マーケットプレイスへアクセスさせてくれます。そこから必要な拡張機能を入れましょう。あとは使いながら、気に入らないところをカスタムしていけばOKです。
いろいろ省略して雑にいうと、JDKインストールしてJava Extension Pack入れれば最低限Javaれます。
Q. よしわかった!設定はどこでやるんだ!?
A. Ctrl+. か「ファイル」メニューから探し出してください。JSONで設定をバリバリ書いていく感じですが、最近普通の設定画面っぽいものも (まだプレビュー段階ですが) ついてくるようになりました。
Q. とりあえずEclipseで作業してたものを開きたい!どうすればいい!?
A. 「フォルダーを開く」というボタンが出ていませんか? (別に「ファイル」メニューからでも構いませんが)
まずはそれでこれまで作業していたソースたちの存在するフォルダ……のプロジェクトルートを指定してあげれば、それっぽく開いてくれます。
2つ以上まとめて開いておきたいなら、「ワークスペースにフォルダーを追加」でOKです。
なおEclipseのワークスペースは「作業場」でしたが、VSCodeのワークスペースは「ここらへんのソースコードをこんな感じで読み込んでね」という指示書なので、使い回す予定なら「名前をつけてワークスペースを保存」をお忘れなく。もっとも、忘れても割となんとかしてくれますが……
補足資料: カスタム例
以下は私が実際に使用している構成の情報です。
JavaでWebな感じの人間ですが、もうこれでいいんじゃないかな、という結論に至りました。
設定
{
"editor.fontFamily": "Fira Code",
"editor.fontLigatures": true,
"editor.fontSize": 12,
"files.autoGuessEncoding": true,
"workbench.editor.enablePreview": false,
"workbench.iconTheme": "material-icon-theme",
"editor.renderWhitespace": "all",
"editor.renderControlCharacters": true,
"workbench.colorTheme": "Default High Contrast",
"workbench.colorCustomizations": {
"editorLineNumber.foreground": "#888",
"editorWhitespace.foreground": "#888"
},
"terminal.integrated.shell.windows": "C:\\Users\\[[REDACTED]]\\AppData\\Local\\Programs\\Git\\bin\\bash.exe",
}
……つまり、
- フォントは「Fira Code」、合字機能オン、サイズ12
- 文字コード自動検出機能オン
- プレビューモード無効
- デフォルトではシングル・クリックでプレビューモード、ダブルクリックで通常モード。
- プレビューモードで開く場合、既にプレビューモードで開いたタブがあるならそのタブで開くような挙動をする。
- いろんなファイルを順繰りにするとき便利……らしい。気に入らないものは切れるのもいいところ。
- エディタは空白文字、制御文字を全て表示する。
- ワークベンチ・カラーテーマに "Default High Contrast" 、アイコンテーマに "Material Icon Theme" を採用。
- "Default High Contrast": 文字通り、VSCodeがデフォルトで持っているハイコントラストテーマ。読みやすさ重点な。
- ただし、行番号と空白はちょっと色を変えてある。流石にうるさかった。
- "Material Icon Theme": 同名エクステンションによって追加されたテーマ (後述) 。要はアイコンが気に食わなかったので差し替えた。
- "Default High Contrast": 文字通り、VSCodeがデフォルトで持っているハイコントラストテーマ。読みやすさ重点な。
- 統合ターミナルは Git Bash を採用。初期は cmd だった気がする。
拡張機能
- Japanese Word Handler
Ctrl+十字キーによる単語単位ジャンプが日本語でも機能するようにしてくれる。
なくても困らないのはそのとおりだが、使えないと地味にストレス。 - Code Outline
クソコード戦線のお供。ないとhageる。
機能は各種IDEのアウトライン機能と概ね同じであり、使い方も大差ない。 - Java Extension Pack
Java向けの必須っぽいのを集めてあるめんどくさがり向けパック。以下の4つをまとめて入れてくれる。それだけ。
とりあえず入れておけばだいたいJavaっぽいことができる。Microsoft公式。- Language Support for Java
言語サーバとサービス本体。Eclipseのヤツらしい。動作的にもRAM的にも重めな上たまにサボるが、まあ概ね使い物にはなる。
トークナイザがアホなのか、たまに意味不明なコンパイルエラーを報じて来る……が、該当ファイルを開けば直る。RedHat製。JDKは入れておくこと。 - Debugger for Java
変数の書き換えや命令ポインタの変更はできないっぽい。ログポイント (VSCodeの機能、ブレークポイントのノリでログを挿入できる) も非対応だった。
まあ、少なくともブレークポイントと変数値チェックはできるしリモートデバッグも対応。必要十分。Microsoft製。 - Java Test Runner
テストクラス、テストメソッドの付近にテストの実行/デバッグ実行ボタン (リンクというべきか) が配置される。
Eclipse方面でいうQuick JUnitみたいなもんだと思えばだいたい合ってるが、よく実行できずにSkipされるのでそういう時はコマンド叩こう。Microsoft製。 - Maven Project Explorer
コマンドを記憶しておいたりアーキタイプ生成やってくれたりするらしい。Microsoft製。
……伝聞系なのは使っていないせい。コマンドラインでいいので表示を切っている。
- Language Support for Java
- Tomcat for Java
トム猫のランナー。適当なところにTomcatを解凍しておいて「これを使え」と指示すればうまくやってくれる。拍子抜けレベルでエラいあっさり動く。
少なくともWindows環境では (AppData内の) 設定周りをエクステンション用ディレクトリにろ突っ込んでおり、Tomcatのインストールディレクトリを汚染しない安心仕様。 - ESLint
JS使うなら入れとけ枠。VSCodeは素でnodeサポート入りなので別になくてもどうにかなる気はする。
もちろん逐次更新してくれる。いちいち手でやらなくてよいので非常に便利。 - Japanese Language Pack for Visual Studio Code
Microsoft公式のVSCode用言語パック。……なんか異様に評価値が低いのはなんでだ?
当然エクステンションは翻訳してくれないので、統一感がほしいなら入れずに英語で使ったほうがいいかも。 - Material Icon Theme
デフォルトのアイコンが気に入らないならおすすめ。