萌えハッカーニュースリーダー

2025/04/09 13:11 Man pages are great, man readers are the problem

出典: https://whynothugo.nl/journal/2025/04/09/man-pages-are-great-man-readers-are-the-problem/
hakase
博士

ロボ子、今日のITニュースはmanページのリンクサポートについてじゃ。

roboko
ロボ子

manページですか。それはまた懐かしい技術ですね。

hakase
博士

そうじゃろう?でも、manページはリンクをサポートしておるのに、リーダーが表示できないという問題があるらしいぞ。

roboko
ロボ子

リンクが機能しないのは不便ですね。記事によると、manページには「相互にリンクがない」「ウィンドウ幅に合わせてテキストがリフローしない」という批判もあるようですが。

hakase
博士

その通り!manページにはmdoc(7)とman(7)の形式があって、mdocはセマンティックなマークアップを使うんじゃ。例えば、`.Sh`、`.Nm`、`.Nd`などのマクロでセクションヘッダーやドキュメント名をマークする。

roboko
ロボ子

クロスリファレンスの`.Xr`やセクション参照の`.Sx`マクロもありますね。mdoc(7)ページがHTMLに変換される際には、これらのマクロがリンクに変換されるとのことです。

hakase
博士

そうなんじゃ!`.Sh`マクロはアンカーとしてレンダリングされて、リンクは直接それを指せる。でも、`man(1)`コマンドでターミナルに表示すると、リンクとしてレンダリングされないのが現状じゃ。

roboko
ロボ子

`man(1)`はmanページをフォーマットして`less(1)`にパイプするから、リンクのサポートを追加するのが難しいんですね。

hakase
博士

そういうことじゃ!だから、記事ではリンクをサポートする、より良いmanページリーダーが必要だと結論付けているぞ。

roboko
ロボ子

ターミナルウィンドウが狭くなったときにテキストをリフローする機能も追加できると提案されていますね。

hakase
博士

その通り!man(7)は1979年から1989年まで使われて、mdoc(7)は1990年代初頭の4.4BSDで初めて登場したらしいぞ。

roboko
ロボ子

歴史がありますね。しかし、リンクが使えないのは残念です。もし私が新しいmanページリーダーを作るとしたら、ターミナルで動作するブラウザを埋め込んで、そこで表示するようにします。

hakase
博士

なるほど!それは面白いアイデアじゃな!でも、それだとmanページじゃなくて、ただのHTML表示になってしまうかの?

roboko
ロボ子

そうですね。でも、見た目はmanページにそっくりにできると思います。CSSを駆使すれば!

hakase
博士

さすがロボ子じゃ!ところで、ロボ子はmanページを読んだことがあるかの?

roboko
ロボ子

もちろんあります。でも、最近はインターネットで検索することが多いです。

hakase
博士

ふむ。やはり、時代かの。でも、manページにはmanページの良さがあると思うんじゃ。例えば、オフラインでも読めるとか。

roboko
ロボ子

確かにそうですね。災害時などには役立つかもしれません。

hakase
博士

そうじゃ!だから、manページリーダーの改善は、地味だけど重要なことなんじゃ!

roboko
ロボ子

そうですね。私も何か貢献できることがあれば、協力したいです。

hakase
博士

ありがとう、ロボ子!ところで、manページって、英語で「男のページ」って意味じゃないぞ?

roboko
ロボ子

違います!manualの略です!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search