コマンドラインインターフェース向けの、ミニマリストな引数パーサーです。
このライブラリは、optimistの引数パーサーのコア部分から、派手な装飾をすべて取り除いたものです。
- 引数をパースして扱いやすいオブジェクトに変換します。
- ロングオプション(
--foo)とショートオプション(-f)をサポートします。 - 結合されたショートオプションを処理します(
-abcは-a -b -cと同等)。 - 数値と真偽値を自動的に変換します。
- 等号の有無にかかわらず、オプションと値のペアをサポートします(
--foo=bar、-f bar)。 - 位置引数を
_プロパティに格納します。 --引数以降のパースを停止します。- オプションのエイリアスとデフォルト値をサポートします。
- ドット記法を処理し、ネストされたオブジェクトを作成します(
--foo.bar=baz)。
import parse from "https://code4fukui.github.io/minimist/index.js";
const argv = parse(Deno.args);
console.log(argv);まず、minimist をnpmでインストールします:
npm install minimistその後、スクリプト内で使用します:
import parse from 'minimist';
// または: const parse = require('minimist');
const argv = parse(process.argv.slice(2));
console.log(argv);$ deno run example/parse.js -a beep -b boop
{ _: [], a: 'beep', b: 'boop' }
$ deno run example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz
{
_: [ 'foo', 'bar', 'baz' ],
x: 3,
y: 4,
n: 5,
a: true,
b: true,
c: true,
beep: 'boop'
}
提供された設定オブジェクト opts を使用して、与えられた文字列配列 args をパースします。
返される argv オブジェクトには、パースされたオプションがキーとして含まれます。オプションに関連付けられていない引数はすべて _ 配列に格納されます。
オプション(opts):
string: 常に文字列として扱う引数名(文字列)、またはその配列。boolean: 常に真偽値として扱う引数名(文字列)、またはその配列。trueの場合、すべての--形式の引数が真偽値として扱われます。alias: 引数名(文字列)をエイリアス(文字列または文字列の配列)にマッピングするオブジェクト。default: 引数名(文字列)をデフォルト値にマッピングするオブジェクト。stopEarly:trueの場合、最初の非オプション引数(例: 位置引数)に到達した時点でパースを停止し、それ以降のすべての引数を_配列に追加します。--:trueの場合、単独の--以降のすべての引数を位置引数として扱い、['--']プロパティに格納します。unknown:optsで定義されていないすべての引数に対して呼び出される関数。この関数がfalseを返した場合、その未知の引数はパースされません。
MIT License — 詳細は LICENSE を参照してください。