Romeを使ってLintしてみる
開発環境は、Windows 10 Pro(64bit) + node.js v.10.15.0。
Rome(ローマ)は、リントやバンドルやコンパイルやフォーマットやテストなどのすべてを統合したものを作り、もっと手軽に使えることを目的に開発が進められているプロジェクトです。
現在はまだ、JavaScriptとTypeScriptのLinterのみをサポートしている。
早速使ってみましょう。
■Romeを導入する
cd c:\ && mkdir hello-rome && cd hello-rome yarn add rome
以下のようなエラーが出現。
Nodeが12.8.1以上じゃないとダメみたいなので、Node.js自体をアップデートしてみたいと思います。ダウンロードページへアクセスしてみると、現時点で最新版は14.17.0。Windows Installer(.msi) の 64-bitを選択。インストーラをダウンロード。インストーラを実行し、バージョンアップ。インストール後に、node -vとしてみると、v14.17.0になっていることを確認。再び、yarn add romeをすると成功。
npx rome init
を実行すると、以下のコメントが表示される。
■コードを書いて、Lintしてみる
試しに、TypeScriptのコードを書いて、Lintするので、以下のコードをindex.tsという名前で保存します。
function add(a: number, b: number): number { return a + b; } function multi(a: number, b: number): number { return a * b; } console.log(add(1, 1));
次に、
npx rome check index.ts
を実行すると、ちょっと見ずらいですが、関数を書いているのに使っていない、インデントをタブじゃなくて、半角スペース2つ分使っているというエラーが2つ出現します。
この2つを修正して、以下のようなコードにして、
function add(a: number, b: number): number { return a + b; } function multi(a: number, b: number): number { return a * b; } console.log(add(1, 1)); console.log(multi(2, 2));
もう一度、npx rome check index.tsを実行すると、