Goでコマンドラインオプションのあるツールを提供していると設定ファイルに定義できるようにしてほしいという要望が来ますが、意外とオプションと設定ファイルで定義が冗長になったりして煩わしいのでライブラリにしてみました。 conf+flagでconflagです。 いつものコードに 3行 追加するだけでコマンドラインオプションを設定ファイルに書いておけるようになります。 使い方 以下のような感じで、flag.Parse()を実行する前に、設定ファイルからflagに設定する値を呼び出すコードを追加します。 // フラグを定義します var procs int flag.IntVar(&procs, "procs", runtime.NumCPU(), "GOMAXPROCS") // コマンドラインオプションを解析する前に設定ファイルからフラグに値を設定します if args, err := con
![Go言語でコマンドラインオプションをさくっと設定ファイル対応させるライブラリをつくった](https://cdn-ak-scissors.b.st-hatena.com/image/square/b7b2dc82e236710e2a9e8dbb9ef7e60703c12192/height=288;version=1;width=512/https%3A%2F%2Fblog.monochromegane.com%2Fimages%2Fogp.png)