【JS】Rust製の高速なFormatter・LinterであるBiomeを使ってみる
今回はタイトル通り、Rust製の高速なFormatter・LinterであるBiomeというものを見つけたので触ってみます。
JSを使って開発するときに、大体使うであろうツールがESlintやPrettierです。
それぞれ、どういうものを正しいとするか、という設定が入っているんですが、毎回よくわからず使っていました。
その辺のブログ等で紹介されているものをそのまま使ったり、過去使った設定をそのまま流用したりしがちできちんと使いこなせていないのが現状でした。
RubyだとRubocopとかもそうですが、正直この辺の設定を詰めるよりも、それなりに統一した形でコードが書ければ何でもよいだろう、と思っています。
そんな中で、見つけたのがBiomeになります。
Formatter・Linterですが、大量の設定項目から適宜設定をON・OFFするというよりも
設定なしのデフォルトですぐに使えるような設計になっています。
よくわからない項目をこねくり回す必要がないのが、個人的にとても好きなところです。
なお、もちろんですが、細かい調整については設定ファイルを作って制御もできます。
ということで、雑にインストールして動かしてみます。
Biomeをインストール
以下のドキュメントをもとに作業を進めていきます。
ドキュメントが大体は日本語化されているので、困ることはないと思います。
ただし、バージョンによって変更点がある場合もあるので、英語版も見ておくと良いと思います。
手元ではyarnを使っているので、yarnでインストールしていきます。
特に困ることはないはずです。
Biomeを動かしてみる
サンプルとして、以下のようなコードに対してチェックしてみます。
いらない変数を宣言していたり、セミコロンが無かったりといろいろ雑なコードです。
Linterでチェックしてみる
構文解析させてみます。
特にLinterに対して設定していませんが、きちんと不要な宣言だったり、変数を書き換えていないのでconstに直してくれたりと指摘してくれています。
Formatterでチェックしてみる
次に、フォーマッタを実行して確認してみます。
手元の環境ではeditorconfigでJSファイルはインデントを2スペースで行うようにしているので、それに沿ってインデント幅の調整と、各行の末尾にセミコロンを追加してくれています。
こちらもデフォルト状態で、きちんと指摘してくれていることがわかりました。
修正を反映させる
Linterによる修正を反映してみる
では、それぞれの修正を反映させます。
LinterもFormatterも、修正を反映する場合は--write-
を付けてあげればよい。
まずはLinterの方で修正してもらいます。
実行結果は以下。
はい、letをconstに変更してくれています。
Formatterによる修正を反映してみる
続いて、Formatterで修正してもらいます。
実行結果は以下。
きちんと=の前後にスペースを入れてくれたり、セミコロンを追加してくれています。
まとめ
今回は、Rust製の高速なFormatter・LinterであるBiomeというものを見つけたので触ってみました。
ESLintやPrettierをよくわからず使っている場合は、ほぼそのまま移行できるのでおススメです。
ESlLintやPrettierの設定ファイルを参照してBiomeの設定ファイルを生成するコマンドも用意されているので、移行も簡単かなと。
今回は、ここまで。
おわり
ディスカッション
コメント一覧
まだ、コメントがありません