help-texinfo
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Playground pager lsp(1)


From: Alejandro Colomar
Subject: Re: Playground pager lsp(1)
Date: Thu, 6 Apr 2023 03:31:47 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.1

Hi Dirk,

On 4/5/23 12:02, Dirk Gouders wrote:
> Hi Alex,
> 
>>> first of all, chances are that you consider this post as spam, because
>>> this list is about linux manual pages and not pagers.
>>
>> No, I don't.
> 
> that's fine, thank you for taking the time give me feedback.
> 

:)

> If you want to take a look at it: there is a branch "next" which you
> might prefer as it closer resembles my current work.  There is a new
> toggle "-V" that can be used to completely turn off validation.
> 
> I tried to assemble a Makefile that might work without a configure
> script and attach it to the end.  A prefix /usr is the default value, if
> your system prefers /usr/local you can use `make prefix=/usr/local

The default prefix in GNU should be /usr/local
<https://www.gnu.org/prep/standards/html_node/Directory-Variables.html>

> install`.  I hope I prepared some reasonable Makefile...

I'll have a look.

> 
> Concerning meson.build: I decided to have a look at meson as the
> autobuild tool for lsp.  I am just gathering experiences with it and if
> you have meson(1) installed you could use thes steps to (un)install lsp:
> 
> $ # cd to lsp directory
> $ meson setup --prefix=/usr builddir ; cd builddir
> $ ninja install # or uninstall

>> If it's the first, how do you handle exit(1)?  Is it a reference, or is it
>> just code (with the meaning exit(EXIT_FAILURE))?
> 
> exit(1) gets recognized as a possible reference but validation will fail.

`man 'exit(1)'` works for me.  It brings the exit(1posix) page, from
manpages-posix.


> No, broken references aren't marked.  Usually those unavailable
> references make sense, e.g. if a manual page references some program
> that not everyone uses.
> 
> One example that I couldn't resolve so far is a reference to
> getconf(1) for example in fpatchconf(3).  Up to now I was not able to
> find out which package contains getconf(1)...

$ apt-file find /getconf.1
glibc-source: /usr/src/glibc/debian/local/manpages/getconf.1
libc-bin: /usr/share/man/man1/getconf.1.gz
manpages-fr: /usr/share/man/fr/man1/getconf.1.gz

It's in libc-bin.

BTW, did you mean fpathconf(3)?

> 
>>>
>>>        •   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.
> 
> Unfortunately, info(1) also doesn't do full resizes (on my system).
> 
>>>
>>>        •   Search for manual pages using apropos(1); in the current most 
>>> basic
>>>            form it lists all known manual pages ready for text search and
>>>            visiting referenced manual pages.
>>
>> What does it bring that `apropos * | less` can't do?  If you're going the
>> of info(1) with full-blown system, it seems reasonable, but I never really
>> liked all that if it's just a new terminal and a command away from me.
> 
> You get a pseudo-file from where you can reach any manual page on the
> system.  Originally I thought this to help novice users but since lsp is
> my system's PAGER I use it more often than expected.  I'm missing the
> ability to give keywords to apropos but that's just a matter of time to
> get fixed.

I guess that's a matter of preferring navigation in some interactive
program (to me, info(1) style), vs standalone simple commands where you
first find what you want, then run it.

I don't find that magic much more comfortable than

$ apropos sysctl
... oh, I find many freebsd pages, let's grep them out ...
$ apropos sysctl | grep -v freebsd
... hmm, let's see system ...
$ apropos system | grep -v freebsd
... okay, now this shows a lot of stuff, let's remove man1 ...
$ apropos system | grep -v -e freebsd -e '(1'
... I don't want systemd either ...
$ apropos system | grep -v -e freebsd -e '(1' -e systemd
... let's sort by section and navigate through that list ...
$ apropos system | grep -v -e freebsd -e '(1' -e systemd | sort -k2 | less

Find some pages that may be interesting, note them down, and open
them one by one, in different tabs, until I find I wanted to read
proc(5), and close everything else.

Which brings us to a valid point Eli raised.  Some pages are an
unreadable mess, and I think proc(5) is one of those that needs
a big split into smaller pages such as proc_pid_attr(5).

Cheers,
Alex

-- 
<http://www.alejandro-colomar.es/>
GPG key fingerprint: A9348594CE31283A826FBDD8D57633D441E25BB5

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]