do you have a favourite man page?
-
@b0rk @d6 Here's a very rough count (based on git-blame) from v5.26.0:
842 Nick Ing-Simmons
964 David Mitchell
1197 Nicholas Clark
1331 Yves Orton
1453 Ricardo Signes
1854 brian d foy
2186 Sean M. Burke
2513 Andy Dougherty
2851 Perl 5 Porters
3441 Lukas Mai
3485 Tom Christiansen
3836 Rafael Garcia-Suarez
4454 Dave Rolsky
5181 Father Chrysostomos
5313 Jarkko Hietaniemi
5782 Larry Wall
8959 Gurusamy Sarathy
11712 Karl WilliamsonThis has all the usual problems with git-blame. For example, if one person wrote a file and late someone else rewrapped all the line breaks, that second person would get all the credit.
Tom and Larry's contributions, being older, are going to be obscured by stuff like that.
The cast is only a cast of a couple of hundred, not anything like thousands.
-
do you have a favourite man page? thinking of writing a short blog post exploring man pages and what makes a good one and I'd love some more examples
my contribution: I think it's cool that `man curl` includes an example for every single option
@b0rk man ipfw on FreeBSD is quite long but very well laid out IMHO -
@b0rk I love tealdeer (tldr) precisely because it fills the manpage gap in examples for every common operation
@b0rk actual manpages that I like:
#3. man 5 systemd.network
#2. man 6 nethack
#1. man 7 asciihonorable mention: man 6 oneko
honorable mention: info libc -
do you have a favourite man page? thinking of writing a short blog post exploring man pages and what makes a good one and I'd love some more examples
my contribution: I think it's cool that `man curl` includes an example for every single option
@b0rk I really like the git-revisions manpage.
-
@shnizmuffin thanks, will change my link!
I use `man date` very often when I have to format dates - most programming languages use the same syntax so it's convenient when I don't remember if %m is "month" or "minute"
I like it because I know where to look and it works for a *lot* of programming languages (Go and php being rare exceptions)
-
I think my favourite man page example so far is this rsync man page (via @shnizmuffin) https://download.samba.org/pub/rsync/rsync.1
it gives examples BEFORE giving an exhaustive list of options!
the synopsis just says "rsync [OPTION...] SRC... [DEST]" instead of giving you an exhaustive list of options like "-ABCFGHILOPRSTUWabcdefghiklmnopqrstuvwxy1%"!
there's an "OPTION SUMMARY" section that gives you a 1-line summary of each option! (this feels SO SO much useful than the normal SYNOPSIS to me)
(2/?)
i tried implementing this OUTPUT SUMMARY format for grep's man page, I can't tell if I like it or not but it's an interesting exercise to try to give a 1-line description of each item, categorize them, and then order them most-frequently-used-by-me first https://gist.github.com/jvns/9f5966633875a4758e0d947a5b4dbdcf
(probably some of the descriptions are wrong, I only thought about them for maybe 3 seconds each, also this is Mac grep)
(3/?)
-
I think my favourite man page example so far is this rsync man page (via @shnizmuffin) https://download.samba.org/pub/rsync/rsync.1
it gives examples BEFORE giving an exhaustive list of options!
the synopsis just says "rsync [OPTION...] SRC... [DEST]" instead of giving you an exhaustive list of options like "-ABCFGHILOPRSTUWabcdefghiklmnopqrstuvwxy1%"!
there's an "OPTION SUMMARY" section that gives you a 1-line summary of each option! (this feels SO SO much useful than the normal SYNOPSIS to me)
(2/?)
@b0rk
The rsync manpage is among the greatest. One of its great feature is the list of every return code and their meaning, really helpful when scripting!I'm quite fond of the bash manpage
@shnizmuffin -
do you have a favourite man page? thinking of writing a short blog post exploring man pages and what makes a good one and I'd love some more examples
my contribution: I think it's cool that `man curl` includes an example for every single option
@b0rk `man ascii` is the one i look at most often
-
do you have a favourite man page? thinking of writing a short blog post exploring man pages and what makes a good one and I'd love some more examples
my contribution: I think it's cool that `man curl` includes an example for every single option
@b0rk openbsd man page for chmod is much easier to read than the one on linux in my opinion.
-
do you have a favourite man page? thinking of writing a short blog post exploring man pages and what makes a good one and I'd love some more examples
my contribution: I think it's cool that `man curl` includes an example for every single option
@b0rk I have a /least/ favorite, it’s sudoers(5). Dense paragraphs followed by an EBNF grammar of the config format 😭
What I would *expect* to find there is a practical discussion of how to set it up with some simple examples that will set me on my way. I appreciate that authentication is complex & sensitive, and this documentation is very detailed but … I always bounce off this manpage and end up on stackoverflow instead.
-
i tried implementing this OUTPUT SUMMARY format for grep's man page, I can't tell if I like it or not but it's an interesting exercise to try to give a 1-line description of each item, categorize them, and then order them most-frequently-used-by-me first https://gist.github.com/jvns/9f5966633875a4758e0d947a5b4dbdcf
(probably some of the descriptions are wrong, I only thought about them for maybe 3 seconds each, also this is Mac grep)
(3/?)
@b0rk
The fish shell ships a python script that extracts this information from the man pages and convert them into tab completions.
/usr/share/fish/tools/create_manpage_completions.py -
I think my favourite man page example so far is this rsync man page (via @shnizmuffin) https://download.samba.org/pub/rsync/rsync.1
it gives examples BEFORE giving an exhaustive list of options!
the synopsis just says "rsync [OPTION...] SRC... [DEST]" instead of giving you an exhaustive list of options like "-ABCFGHILOPRSTUWabcdefghiklmnopqrstuvwxy1%"!
there's an "OPTION SUMMARY" section that gives you a 1-line summary of each option! (this feels SO SO much useful than the normal SYNOPSIS to me)
(2/?)
@b0rk @shnizmuffin hah, rsync’s man page (alongside Bash) is to me an example of everything wrong with manpages, because I’m usually looking for a reference explanation of an argument and I have to skip through all the unhelpful examples before getting the actual option explanation.
It’s a shame that GNU Info never stuck. A hierarchical documentation really is the best organization over the flat and not hyperlinked manpages.
(To be fair Info’s UX sucks)
-
@b0rk @shnizmuffin hah, rsync’s man page (alongside Bash) is to me an example of everything wrong with manpages, because I’m usually looking for a reference explanation of an argument and I have to skip through all the unhelpful examples before getting the actual option explanation.
It’s a shame that GNU Info never stuck. A hierarchical documentation really is the best organization over the flat and not hyperlinked manpages.
(To be fair Info’s UX sucks)
@b0rk @shnizmuffin (and Bash’s manpage sucks because it’s just the flattening of its huge and extensive Info doc. When searching is the only navigation option, it’s a chore)
-
@b0rk `man ascii` is the one i look at most often
-
@b0rk `man ascii` is the one i look at most often
-
I think my favourite man page example so far is this rsync man page (via @shnizmuffin) https://download.samba.org/pub/rsync/rsync.1
it gives examples BEFORE giving an exhaustive list of options!
the synopsis just says "rsync [OPTION...] SRC... [DEST]" instead of giving you an exhaustive list of options like "-ABCFGHILOPRSTUWabcdefghiklmnopqrstuvwxy1%"!
there's an "OPTION SUMMARY" section that gives you a 1-line summary of each option! (this feels SO SO much useful than the normal SYNOPSIS to me)
(2/?)
@b0rk I wish the examples from the Usage section came before anything else. Just put the most common/likely 2 or 3 use cases at the very beginning. This is both better for first time users and for people who used the tool before, but haven't in a long time and just need a brief reminder.
-
@b0rk it's an uncool example these days but...
i always really appreciated how `man perl` links to 40+ other man pages that collectively describe the entire language and its standard library and tools. so if you are trying to learn about it everything you need is there and can be browsed or searched for. the prose is fairly engaging and well-written.
(these days online might make more sense but at the time having it available offline in a very lightweight format that was readable from the terminal was great.)
P.S. the manual pages are actually produced by perldoc which is also a very cool related tool.
-
@b0rk @shnizmuffin hah, rsync’s man page (alongside Bash) is to me an example of everything wrong with manpages, because I’m usually looking for a reference explanation of an argument and I have to skip through all the unhelpful examples before getting the actual option explanation.
It’s a shame that GNU Info never stuck. A hierarchical documentation really is the best organization over the flat and not hyperlinked manpages.
(To be fair Info’s UX sucks)
@jlargentaye@mas.to @b0rk@social.jvns.ca @shnizmuffin@toots.inbutts.lol
(To be fair Info’s UX sucks)
So, just try #pinfo
-
do you have a favourite man page? thinking of writing a short blog post exploring man pages and what makes a good one and I'd love some more examples
my contribution: I think it's cool that `man curl` includes an example for every single option
@b0rk This is probably not what you were looking for but "man ascii" is so good to have.
-
@b0rk This is probably not what you were looking for but "man ascii" is so good to have.
@rjbs i had no idea this was going to be the #1 most popular man page by far but I love it