3

GLib のコマンドライン オプション パーサーを使用してコマンドライン引数を処理するアプリケーションがあります (ここで説明)。

私が見つけたのは、各オプション エントリの説明は非常に短くする必要があるということです。これは、標準サイズの端末の幅に収まるようにするためです (アプリケーションが --help 引数で呼び出される場合)。オプションの説明が長すぎると、折り返されてしまい、かなり見栄えが悪くなります。これを整理するための受け入れられた方法はありますか?

たとえば、80 文字幅の端末ウィンドウで、アプリケーションからのヘルプ出力のどの部分がどのように表示されるかを次に示します。

Application Options:
  -i, --ip-addr                     Sets the IP address to which the video strea
ms will be sent. If this option is not used then the default IP address of 127.0
.0.1 is used.
  -p, --port                        Sets the port to send the video streams to. 
If not chosen this defaults to 1234.

理想的には、次のようになります。

Application Options:
  -i, --ip-addr                     Sets the IP address to which the video
                                    streams will be sent. If this option is not
                                    used then the default IP address of
                                    127.0.0.1 is used.
  -p, --port                        Sets the port to send the video streams to.
                                    If not chosen this defaults to 1234.

オプションの説明の各行に必要な長さを計算することで、上記の結果を手動で取得できました。次に、改行とスペースを文字列に手動で入力して、正しいインデントを取得できます。しかし、これは非常に大まかなアプローチのように思えます。出力をフォーマットするための、より優れた、時間のかからない方法があるに違いないと確信しています。

この問題は他の人にとって以前に発生したに違いないと確信していますが、解決策を見つけていません。より良いフォーマットを取得するためのより良い方法を知っている人はいますか?

4

1 に答える 1

0

まったく同じ問題があります。現在、スペースを追加するゲットー修正を使用しています。ただし、これは引数の説明では不可能です (説明だけではなく、最後に出力されます)。改行を追加して引数の説明を中断すると、後続の引数の間隔が台無しになります。

于 2013-08-05T01:49:05.967 に答える