前回の記事ではiconcというパッケージの基本機能を実装しましたが、今回の記事はそれをコマンドツールにしてみます。
前回と同じようにテストを書いてみます:
そして、./bin/iconc
を実装します:
引数を取得するyargsを使用しています:npm install yargs --save
で追加します
npm test
コマンドを叩くと:
もし実行権限のエラーが表示されたら、chmod +x ./bin/iconc
で実行権限を与えてください。
やはりエラーになります。schema
はコマンドライン専用のフォーマットにまだ対応していないので、実装します:
もう一度npm test
すると:
通りました!次は、今のコマンドをnpmのグローバルbinに入れてみます。package.json
を開いて、キーを追加:
で、cd
でプロジェクトのルートに移動し、npm install . -g
を実行すると、iconc
というツールはグロバールにインストールされ、iconc
だけで呼び出せるようになりました。
例えば:
実行結果は:
あれ?何のメッセージも表示されていません。実際ファイルは作成されています。確かに、ファイル処理の進捗の情報はどこにも出してないので、ちょっと怖いんですね。
今度はEventEmitter
というクラスを継承してメッセージを出してみます。いよいよツールとして成立する形になりつつあるので、次回頑張ります〜
次の記事:http://befool.co.jp/blog/chainzhang/creating-npm-package-3/