コンテンツにスキップ

リンター

npmで見る

Terminal window
npm install -D @puruslang/linter

グローバル:

Terminal window
npm install -g @puruslang/linter
Terminal window
# 特定のファイルをリント
purus-lint src/main.purus
# ディレクトリ内のすべてのファイルをリント
purus-lint src
# config.purusの設定を使用してリント
purus-lint

ファイルが指定されていない場合、purus-lintconfig.purus を読み込み、entry ディレクトリ内のすべてのファイルをリントします。

ファイルやディレクトリは位置引数として渡せます。

オプションエイリアス説明
--config <file>設定ファイルのパス
--help-hヘルプを表示
ルールデフォルト説明
no-varwarnvar を避け、const または let を使用
bare-assignmentwarnconst/let/var なしの裸の代入を避ける
no-nilwarnnil の代わりに null を使用
no-functionwarnfunction は非推奨、fn を使用
no-protectedwarnprotected は非推奨、private を使用
no-else-ifwarnelse if の代わりに elif を使用
no-js-charserrorJavaScript文字((){}""''$#@“)は使用不可
no-js-operatorserrorJavaScript演算子(===, !==, &&, ||, +=, -= など)は使用不可
no-for-rangewarnfor ... in range は非推奨; JS スタイルの for ループを使用
bracket-matcherror[ または ] の括弧不一致
const-reassignerrorconst 変数の再代入不可
duplicate-usewarnuse インポートの重複
indent-sizewarn (2)インデントはNスペースの倍数であること
no-trailing-whitespacewarn末尾空白なし
max-line-lengthoff (100)最大行長
no-unused-importwarn未使用importへの警告
consistent-namingwarn (kebab-case)命名規則

リンター設定はビルド設定と一緒に config.purus で構成できます:

-- リンター設定
const lint.no-var be ///warn///
const lint.bare-assignment be ///warn///
const lint.no-nil be ///warn///
const lint.no-function be ///warn///
const lint.no-protected be ///warn///
const lint.no-else-if be ///warn///
const lint.no-js-chars be ///error///
const lint.no-js-operators be ///error///
const lint.bracket-match be ///error///
const lint.const-reassign be ///error///
const lint.duplicate-use be ///warn///
const lint.indent-size be 2
const lint.max-line-length be ///off///
const lint.no-trailing-whitespace be ///warn///
const lint.no-unused-import be ///warn///
const lint.consistent-naming be ///warn///
const { lint } = require("@puruslang/linter");
const diagnostics = lint("var x be 42");
// [{ rule: "no-var", severity: "warn", line: 1, col: 1, message: "..." }]