コマンド例では
man apropos > outputfile
のフォーマットされたman
ページを含むテキストファイルが生成されます(太字など、画面apropos
にman apropos
直接印刷する場合との違いが少しあります)。
しかし、すべての段落がその幅に揃えられるように、生成された出力ファイルの最大行幅を手動で設定したいと思います。
man
ページは次の方法で作成されますgroff
。たとえば、.ll 50
元の.gz
man
ソーステキストファイルの段落の前に配置しようとしましたが、複数のman
ページで作業する必要がある場合は簡単です。さらに、すべての文字が認識されるわけではありません。
apropos.1:45: warning: can't find character with input code 195
apropos.1:45: warning: can't find character with input code 168
apropos.1:47: warning: can't find character with input code 178
apropos.1:131: warning: can't find character with input code 169
なので、もっと簡単な方法はあるのかな。の作成中に最大線幅を変更するにはどうすればよいoutputfile
ですか?特定のコマンドはありますか?
編集:
(以下のすべての考慮事項はUbuntu 18.04に関するものです。上記の質問の14.04を含む以前のバージョンでは、これ以上テストできません。)
1行の一時的なソリューションに関しては、MANWIDTH
まだカスタム値でエクスポートされていない場合、違いはありません
$ MANWIDTH=60 man apropos > outputfile
そして
$ COLUMNS=60 man apropos > outputfile
MANWIDTH
ただし、を使用する最初の方法は、原則としてより優れています。
編集2(質問に厳密には関連していません):
代わりに、マンページの印刷に適用される永続的な幅設定を作成するには、変数の目的の値をエクスポートする必要があります。と:
$ export MANWIDTH=60
# zero or more additional lines
$ man apropos > outputfile
man apropos
端末ウィンドウのサイズ変更に関係なく、同じ幅で印刷されます。代わりに、
$ export COLUMNS=60
# zero or more additional lines
$ man apropos > outputfile
ターミナルウィンドウの間リサイズされていない場合にのみ、前と同じ結果を提供しますexport
とman <page> > outputfile
。
man man
は2.6.7.1)。manページはイタリア語で、UTF-8です。ロケールとはどういう意味ですか?
locale
何ですか?そしてlocale charmap
?
locale
出力:LANG=it_IT.UTF-8 LANGUAGE= LC_CTYPE="it_IT.UTF-8" LC_NUMERIC="it_IT.UTF-8"
locale charmap
出力:UTF-8
less
ものTERM
です。という意味env -i LANG=it_IT.UTF-8 man apropos > output
(または| head
)。
input code
エラーを再現できません195 168
UTF-8である可能性があります。マニュアルページは英語ですか?あなたの男の実装は何ですか?あなたのロケールは何ですか?