Visual Studio Code のススメ
もともとemacsを使っていたのだが,ctrlキーの位置がAの横にないキーボードを使用する環境になったため,vimを使い始めてはや3年. 並行してeclipseベースの組み込み用IDE等を使用して,C++開発で様々な補完や参照を使用できる利便性からGUIベースのメリットも理解してきつつあり,汎用的なGUIエディタをいろいろ試していた.例えば.
CotEditor
Textatic
などである.自分が求める機能として挙げるのは
Macで動作
クロスプラットフォーム動作ならより良い
C++ 補完
である.特にVerilogシンタックス対応できるエディタは少なく,GUIエディタ探しはなんだかんだと消極的だった. 最近知ったエディタにAtomというのもある.このエディタはGitHubが開発したオープンソースのエディタで拡張性も高い.エディタ内で拡張機能を探してインストールできる利便性はあるが.どちらかというとWeb開発向きのようで,組み込み系,ましてやHDL系は一応項目として拡張機能はいくつか存在したが,依存関係が複雑だったり,きちんと動作しない等,バグも多く実用に至らなかった.マークダウン(.md)をプレビューしながら書けたりするのは良いね.でも自分はあんまり書く文化に居ないし....... Visual Studio Code というエディタを知った(正確には再認識した)のは,Arduino IDE の代替エディタを探していたときだった.このエディタはMicrosoftがVisual Studio Onlineというサービスで開発してきたエディタをオープンソース化したものだそうだ.元来Microsoft製品を忌み嫌ってきたところもあって,「Visual Studio? 関係ないな」と一蹴してしまっていた. ところがこのエディタがArduino開発の際にC++の強力なサポート機能があるらしいことがわかり,使ってみることにした次第である. ......と,ここからが本題(?)
この Visual Studio Code , 流石というかなんというか,ソフトウェアとしての完成度が高いように思える.
拡張機能の主要部分はMicrosoft公式のものがあり,Arduino拡張機能もその一つである.拡張機能をインストールする際,依存関係にある拡張機能パッケージを一緒にインストールしてくれる.とても良い. コンセプトとしてはAtomに似ているが,Atom.appが432MBも消費するのに対し,Visual Studio Code.appは197MBであり,エディタごときに主記憶装置の容量を取られるのはバカバカしい.
Verilog 周りの対応も良好で,3rd party 拡張ではあるがきちんとシンタックスしてくれる.lint機能もあるようなので #そのうち 試したい. .git を含むフォルダを開けば自動でgitリポジトリとして認識して,差分表示等もわかりやすく表示できる.もちろんコミット等基本的に可能である. 長々と書いたが最後に現状の拡張機能をスクリーンショットしておく.
https://gyazo.com/ed23ffb6da3e178b02ece380c0673dbe
日本語拡張も公式パッケージがあるのでざっと見た感じは正確に訳されているように思う.
Vimに慣れ親しんでいたため,Vimキーバインド が使用できる拡張も導入した. とにかく今回得た教訓は
偏見持たずとりあえず試してみよう
ということである.
結局のところ各自使いやすいエディタは全く異なると思うので.自分の場合ちょうど良いところがGUIエディタにおいて見出せた(?)感があったのでこんな記事を書いた次第であり,あくまでもオススメであり,絶対はないので留意されたい.
なんかWikipediaの該当項目見ていたら"vscode"と略すと厳密には別物になるらしい.略したいけどね.まあ仕方ないね.