Hi Philip,

Philip Guenther wrote on Thu, Jul 25, 2019 at 07:21:48PM -0900:

> Hmm: sh(1) and ksh(1) have *nothing* from sections 2 or 3 in their SEE
> ALSO.  That doesn't seem like a wrong choice,

Indeed.  Jason generally discourages linking from section 1 to
sections 2 and 3, arguing that neither interactive use of a program
nor shell programming ought to require worrying about C interfaces.
There are exceptions, for example to avoid duplicating lists, e.g.
pointing from sysctl(8) to sysctl(2) or from kill(1) to sigaction(2).

> albeit inconsistent with csh(1).

My feeling is csh(1) is the odd one out here.  The amount of
cross references from csh(1) to section 2 looks excessive.

For the umask builtin command, i kind of see the point of pointing
to section 2 - but to chmod(2) where the bits are explained, umask(2)
being less relevant, and it would also seem more useful close to the
explanation of the umask builtin rather than below SEE ALSO.

> Part of me feels like _if_ they're going to mention umask(2),
> setrlimit(2), and sigaction(2), then they should mention chdir(2),
> as the other classic "must be in the shell" syscall.  <shrug>

The question to ask is: is it likely that somebody who decided to
look up csh(1) will also benefit from reading chdir(2), in the
same context?  I don't quite see yet why that might help.

I'd rather move into the opposite direction, see below.

By the way, i suspect that the reason why the .Xr to ksh(1) is
missing is that ksh(1) and sh(1) historically used to be the
same manual page, until Jason rewrote a clean version of sh(1)
from scratch a few years ago.

OK?
  Ingo


Index: csh.1
===================================================================
RCS file: /cvs/src/bin/csh/csh.1,v
retrieving revision 1.82
diff -u -r1.82 csh.1
--- csh.1       26 Jul 2019 12:08:18 -0000      1.82
+++ csh.1       28 Jul 2019 23:07:13 -0000
@@ -2219,6 +2219,9 @@
 the mask are 002 giving all access to the group and read and execute
 access to others or 022 giving all access except write access for
 users in the group or others.
+The
+.Xr chmod 2
+manual page provides the complete list of bits that can be set.
 .Pp
 .It Ic unalias Ar pattern
 All aliases whose names match the specified pattern are discarded.
@@ -2702,16 +2705,8 @@
 .Dq ~name
 .El
 .Sh SEE ALSO
+.Xr ksh 1 ,
 .Xr sh 1 ,
-.Xr access 2 ,
-.Xr execve 2 ,
-.Xr fork 2 ,
-.Xr pipe 2 ,
-.Xr setrlimit 2 ,
-.Xr sigaction 2 ,
-.Xr umask 2 ,
-.Xr wait 2 ,
-.Xr killpg 3 ,
 .Xr tty 4 ,
 .Xr environ 7 ,
 .Xr script 7

Reply via email to