stormmin は compile(省略時の既定)と lint の 2 つのサブコマンドを持ちます。サブコマンドを表す文字列("compile" または "lint")以外の第一引数は、すべて compile として扱われます。
compile
単一ファイル、またはrequire でリンクした複数モジュールを minify します。
コンパイルオプション(
--options/--options-file の JSON の中身)の全項目は ライブラリ API リファレンス を参照してください。
引数の組み合わせルール
--optionsと--options-fileは同時に指定できません。FILE(positional)と--entry/--modules-dir/--projectは同時に指定できません。--projectと--entry/--modules-dirは同時に指定できません。--modules-dirは--entryなしでは指定できません。--entryは--modules-dirまたは--projectのどちらかと併用する必要があります。--mapは--no-minifyなしでは指定できません。
lint
静的解析のみを行います。minify は行いません。プロジェクトモードが必須で、単一ファイルのlint はサポートされていません。
--json フラグは lint では読み取られません(無視されます)。JSON 形式の出力が必要な場合は --format json を使ってください。
serve
npm パッケージのstormmin コマンドだけが持つサブコマンドです(native バイナリ単体では利用できません)。同梱のデモ UI を静的配信します。
待ち受けホストは環境変数
HOST で指定でき、既定は 127.0.0.1 です。起動後は StormMin Web: http://<host>:<port> を出力してプロセスが常駐します。
入出力
- 入力: 単一ファイルモードのみ、positional 引数のファイルパス、または
-/省略時は標準入力から読み込みます。プロジェクトモードでは標準入力は使用されません。 - 出力:
-o/--outputを指定するとファイルへ、指定しなければ標準出力へ書き込まれます。 - 実行時エラー(引数解析エラー・ファイル I/O エラーなど)は
stormmin: <エラー内容>の形式で標準エラー出力に書き込まれます。
終了コード
—options / —options-file の JSON の扱い
- JSON として不正な文字列を渡すとエラーになります。
- JSON としては妥当でも、
stormminが認識しないキー(存在しないオプション名や不明な pass ID)は無視され、エラーにはなりません。オプションが実際に反映されたかどうかは--json/--format jsonの出力で確認してください。