public inbox for linux-man@vger.kernel.org
 help / color / mirror / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Alejandro Colomar <alx.manpages@gmail.com>
Cc: dirk@gouders.net, linux-man@vger.kernel.org, help-texinfo@gnu.org
Subject: Re: Playground pager lsp(1)
Date: Wed, 05 Apr 2023 08:35:13 +0300	[thread overview]
Message-ID: <834jpuuc1a.fsf@gnu.org> (raw)
In-Reply-To: <073413e2-7d35-f0d7-26eb-f66908d7af6a@gmail.com> (message from Alejandro Colomar on Wed, 5 Apr 2023 01:45:46 +0200)

> Date: Wed, 5 Apr 2023 01:45:46 +0200
> Cc: help-texinfo@gnu.org
> From: Alejandro Colomar <alx.manpages@gmail.com>
> 
> With the benefit that you don't need to implement such a system from scratch,
> but just reusing the existing tools (apropos, man, whatis, ...).  It seems
> something like what I would have written if I had to implement info(1) from
> scratch.  I wish GNU guys had thought of this instead of developing their
> own incompatible system.

This last sentence is a misunderstanding.  The goal of Texinfo is not
to improve the man pages.  Texinfo is a completely different approach
to software documentation, which allows to write large books and then
produce various on-line and off-line formats to read and efficiently
search those books.

Man pages have no means of specifying structure and hyper-links except
by loosely-coupling pages via "SEE ALSO" cross-references at the end;
they have no means of quickly and efficiently finding some specific
subject except by text search (which usually produces a lot of false
positives).

By contrast, Texinfo documents have sectioning structure, have
cross-references that can appear where you need them and point
anywhere else in the document (or into another document).  They also
have indexing and commands that allow the reader to use the index in
order to find the subject he/she is interested in very quickly and
accurately, even if the text of the index entry doesn't appear
anywhere in the manual.

How can you document a large and flexible software package, such as
GDB or Texinfo or Emacs, in man pages?

It is a mistake to even compare these two documentation systems,
certainly in this way.

> >        •   In windowing environments lsp does complete resizes when windows
> >            get resized. This means it also reloads the manual page to fit the
> >            new window size.
> 
> Good.  This I miss it in less(1) often.  Not sure if they had any strong
> reason to not support that.

??? Why do you say 'less' doesn't support window resizing?  It does
here.

> >        •   lsp has an experimental TOC mode.
> > 
> >            This is a three-level folding mode trying to list only section and
> >            sub-section names for quick navigation in manual pages.
> 
> Nice, and this an important feature missing feature in info(1), as I
> reported recently.  :)

It isn't missing.  The TOC is presented as top-level menu in each
manual, and large manuals have also the "detailed menu" with all the
sub-nodes spelled out.  In addition, the Emacs Info reader has the
Info-toc command, which presents a structured menu with all the
sectioning levels of a manual even if the manual didn't produce it.

There are also more focused commands which present TOC-like lists
across all the manuals, which you can then navigate to read what you
deem appropriate.  See the description of "--all" command-line option
of the stand-alone Info reader.  For example, try this command:

  $ info --all e --index-search "init file"

There's also the index-apropos command from inside the stand-alone
reader (and the matching info-apropos in the Emacs Info reader).

  reply	other threads:[~2023-04-05  5:35 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-25 20:37 Playground pager lsp(1) Dirk Gouders
2023-03-25 20:47 ` Dirk Gouders
2023-04-04 23:45   ` Alejandro Colomar
2023-04-05  5:35     ` Eli Zaretskii [this message]
2023-04-06  1:10       ` Alejandro Colomar
2023-04-06  8:11         ` Eli Zaretskii
2023-04-06  8:48           ` Gavin Smith
2023-04-07 22:01           ` Alejandro Colomar
2023-04-08  7:05             ` Eli Zaretskii
2023-04-08 13:02               ` Accessibility of man pages (was: Playground pager lsp(1)) Alejandro Colomar
2023-04-08 13:42                 ` Eli Zaretskii
2023-04-08 16:06                   ` Alejandro Colomar
2023-04-08 13:47                 ` Colin Watson
2023-04-08 15:42                   ` Alejandro Colomar
2023-04-08 19:48                   ` Accessibility of man pages Dirk Gouders
2023-04-08 20:02                     ` Eli Zaretskii
2023-04-08 20:46                       ` Dirk Gouders
2023-04-08 21:53                         ` Alejandro Colomar
2023-04-08 22:33                           ` Alejandro Colomar
2023-04-09 10:28                       ` Ralph Corderoy
2023-04-08 20:31                     ` Ingo Schwarze
2023-04-08 20:59                       ` Dirk Gouders
2023-04-08 22:39                         ` Ingo Schwarze
2023-04-09  9:50                           ` Dirk Gouders
2023-04-09 10:35                             ` Dirk Gouders
     [not found]                 ` <87a5zhwntt.fsf@ada>
2023-04-09 12:05                   ` Compressed man pages (was: Accessibility of man pages (was: Playground pager lsp(1))) Alejandro Colomar
2023-04-09 12:17                     ` Alejandro Colomar
2023-04-09 18:55                       ` G. Branden Robinson
2023-04-09 12:29                     ` Colin Watson
2023-04-09 13:36                       ` Alejandro Colomar
2023-04-09 13:47                         ` Compressed man pages Ralph Corderoy
2023-04-12  8:13                     ` Compressed man pages (was: Accessibility of man pages (was: Playground pager lsp(1))) Sam James
2023-04-12  8:32                       ` Compressed man pages Ralph Corderoy
2023-04-12 10:35                         ` Mingye Wang
2023-04-12 10:55                           ` Ralph Corderoy
2023-04-12 13:04                       ` Compressed man pages (was: Accessibility of man pages (was: Playground pager lsp(1))) Kerin Millar
2023-04-12 14:24                         ` Alejandro Colomar
2023-04-12 18:52                           ` Mingye Wang
2023-04-12 20:23                             ` Compressed man pages Alejandro Colomar
2023-04-13 10:09                             ` Ralph Corderoy
2023-04-07  2:18         ` Playground pager lsp(1) G. Branden Robinson
2023-04-07  6:36           ` Eli Zaretskii
2023-04-07 11:03             ` Gavin Smith
2023-04-07 14:43             ` man page rendering speed (was: Playground pager lsp(1)) G. Branden Robinson
2023-04-07 15:06               ` Eli Zaretskii
2023-04-07 15:08                 ` Larry McVoy
2023-04-07 17:07                 ` man page rendering speed Ingo Schwarze
2023-04-07 19:04                 ` man page rendering speed (was: Playground pager lsp(1)) Alejandro Colomar
2023-04-07 19:28                   ` Gavin Smith
2023-04-07 20:43                     ` Alejandro Colomar
2023-04-07 16:08               ` Colin Watson
2023-04-08 11:24               ` Ralph Corderoy
2023-04-07 21:26           ` reformatting man pages at SIGWINCH " Alejandro Colomar
2023-04-07 22:09             ` reformatting man pages at SIGWINCH Dirk Gouders
2023-04-07 22:16               ` Alejandro Colomar
2023-04-10 19:05                 ` Dirk Gouders
2023-04-10 19:57                   ` Alejandro Colomar
2023-04-10 20:24                   ` G. Branden Robinson
2023-04-11  9:20                     ` Ralph Corderoy
2023-04-11  9:39                     ` Dirk Gouders
2023-04-17  6:23                       ` G. Branden Robinson
2023-04-08 11:40               ` Ralph Corderoy
2023-04-05 10:02     ` Playground pager lsp(1) Dirk Gouders
2023-04-05 14:19       ` Arsen Arsenović
2023-04-05 18:01         ` Dirk Gouders
2023-04-05 19:07           ` Eli Zaretskii
2023-04-05 19:56             ` Dirk Gouders
2023-04-05 20:38             ` A less presumptive .info? (was: Re: Playground pager lsp(1)) Arsen Arsenović
2023-04-06  8:14               ` Eli Zaretskii
2023-04-06  8:56                 ` Gavin Smith
2023-04-07 13:14                 ` Arsen Arsenović
2023-04-06  1:31       ` Playground pager lsp(1) Alejandro Colomar
2023-04-06  6:01         ` Dirk Gouders

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=834jpuuc1a.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=alx.manpages@gmail.com \
    --cc=dirk@gouders.net \
    --cc=help-texinfo@gnu.org \
    --cc=linux-man@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox