マンページの最後の行(またはフッター)のルールは何ですか?

マンページの最後の行(またはフッター)のルールは何ですか?

マンページの最後の行の意味やルールに関するドキュメントをどこで見つけることができるか疑問に思います。マンページを閲覧することは役に立ちません。たとえば、

…$ man top|tail -n 1
procps-ng                       July 2014                          TOP(1)

…$ man rm|tail -n 1
GNU coreutils 8.25               February 2017                           RM(1)

TOPコマンド情報:

  • procps-ng:topコマンドが属するモジュールまたはツールシリーズですか?
  • 2014年7月:文書が作成された日付ですか、それともこのバージョンのtopがリリースされた日付ですか?
  • タワー(1):これはマンページ自体への自己参照のようです。

ベストアンサー1

LinuxでGNUツールを使用して作成されたと仮定すると、ヘッダーとフッターは両方とも.THマクロの引数として一緒に指定されます。 ~からman 7 groff_man:

.TH title section
   [footer-middle] [footer-outside] [header-middle] Define the
  title of the man page as title and the section as section.
  See man(1) for details on the section numbers and suffixes
  applicable to your system.  title and section are positioned
  together at the left and right in the header line (with
  section in parentheses immediately appended to title).
  footer-middle is centered in the footer line.  footer-outside
  is positioned at the left in the footer line (or at the left
  on even pages and at the right on odd pages if double-sided
  printing is active).  header-middle is centered in the header
  line.  If section is a simple integer between 1 and 9
  (inclusive), or is exactly “3p”, there is no need to specify
  header-middle; the macro package will supply text for it.

残りのコンテストでは、次の内容を提供します。man 7 man-pages:

Title line
   The first command in a man page should be a TH command:

          .TH title section date source manual

   where:
          title     The title of the man page, written in all caps
                    (e.g., MAN-PAGES).

          section   The section number in which the man page should be
                    placed (e.g., 7).

          date      The date of the last nontrivial change that was made
                    to the man page.  (Within the man-pages project, the
                    necessary updates to these timestamps are handled
                    automatically by scripts, so there is no need to
                    manually update them as part of a patch.)  Dates
                    should be written in the form YYYY-MM-DD.

          source    The source of the command, function, or system call.

                    For those few man-pages pages in Sections 1 and 8,
                    probably you just want to write GNU.

                    For system calls, just write Linux.  (An earlier
                    practice was to write the version number of the
                    kernel from which the manual page was being
                    written/checked.  However, this was never done
                    consistently, and so was probably worse than
                    including no version number.  Henceforth, avoid
                    including a version number.)

                    For library calls that are part of glibc or one of
                    the other common GNU libraries, just use GNU C
                    Library, GNU, or an empty string.

                    For Section 4 pages, use Linux.

                    In cases of doubt, just write Linux, or GNU.

          manual    The title of the manual (e.g., for Section 2 and 3
                    pages in the man-pages package, use Linux
                    Programmer's Manual).

おすすめ記事