diff options
author | bptato <nincsnevem662@gmail.com> | 2024-03-15 11:08:21 +0100 |
---|---|---|
committer | bptato <nincsnevem662@gmail.com> | 2024-03-15 11:28:35 +0100 |
commit | 39ae15c1049f41f0ab3b60e420fa6d79f5ed48cd (patch) | |
tree | c022f4ca70fbeeb550641321798b464cefa6a033 /doc | |
parent | 5d95938a2fbf1bbc1f4ce05993da3e8dc9da6261 (diff) | |
download | chawan-39ae15c1049f41f0ab3b60e420fa6d79f5ed48cd.tar.gz |
man: work around parameter insanity
This is horrible. -s means completely different things on various systems. -l does not exist on various systems. Nothing is standardized, except that man should take at least one parameter and that -k should perform a search. (Seriously, that's all.) So what we do is: * add a separate env var for overriding apropos * for man:, never use -s to specify sections * for man-k:, fall back to man, EXCEPT on FreeBSD which does not have a working section specifier on man -k (neither -S nor MANSECT does anything) * for man-l:, just pass the path wholesale to man and hope it does something useful. Also, we now set MANCOLOR to 1 so FreeBSD man gives us formatting as well.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/mancha.1 | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/doc/mancha.1 b/doc/mancha.1 index 5a5dae4f..0485479b 100644 --- a/doc/mancha.1 +++ b/doc/mancha.1 @@ -18,8 +18,8 @@ mancha - view manual pages via cha(1) to the \fBw3mman\fR(1) utility. \fBmancha\fR will call \fBcha\fR(1) with the appropriate \fIman:\fR, -\fIman-k:\fR or \fIman-l:\fR URLs. The protocol adapter then opens the man page -and injects markup into it, e.g. man page references are converted into +\fIman\-k:\fR or \fIman\-l:\fR URLs. The protocol adapter then opens the man +page and injects markup into it, e.g. man page references are converted into \fIman:\fR links. .SH OPTIONS @@ -41,11 +41,22 @@ Following environment variables are used: .TP .B MANCHA_CHA -If set, the contents of the variable are used instead of \fIcha\fR. +If set, the contents of the variable are used instead of \fIcha\fR. (Note that +the \fIcha\fR command is called through \fBsystem\fR(3), so you do not have to +override it so long as \fIcha\fR is found in your \fBPATH\fR.) .TP .B MANCHA_MAN If set, the contents of the variable are used instead of \fI/usr/bin/man\fR. +.TP +.B MANCHA_APROPOS +If set, the contents of the variable are used instead of \fI/usr/bin/man\fR. + +(This is not a typo; normally (except on FreeBSD), \fBmancha\fR assumes that +\fBman\fR(1) is compatible with \fBapropos\fR(1) and accepts the \fI\-s\fR +parameter. Overriding \fBMANCHA_MAN\fR therefore also overrides the command used +for \fBman\-k\fR, so long as \fBMANCHA_APROPOS\fR is not set.) + .SH SEE ALSO \fBman\fR(1), \fBcha\fR(1), \fBcha-localcgi\fR(5), \fBw3mman\fR(1) |