Timeline for Why don't shell builtins have proper man pages?
Current License: CC BY-SA 3.0
15 events
| when toggle format | what | by | license | comment | |
|---|---|---|---|---|---|
| Nov 14, 2017 at 15:34 | history | edited | terdon♦ | CC BY-SA 3.0 | added 2 characters in body |
| Nov 10, 2014 at 18:18 | comment | added | mikeserv | @JoshuaTaylor - yeah I just read about that git-commit thing yesterday in man man. GNU man does that - it reads in man arguments in pairs - like section,subsection. Pretty cool, but it needs to be supported by the format - groff can do a lot of stuff I don't understand with its formatted source. I've seen that csh thing before - I like it. It's actually the closest I've ever come to csh, I guess. | |
| Nov 10, 2014 at 18:17 | comment | added | Joshua Taylor | @rici Agreed about why there can't be a single man page for a builtin, e.g., man if would be ambiguous. Man pages for individual commands the way that, e.g., git does things, where man git commit pulls up the page for git-commit, would be great. E.g., man bash if. | |
| Nov 10, 2014 at 18:16 | comment | added | Joshua Taylor | @mikeserv However, I would welcome man pages for shell builtins along the lines of what, e.g., git offers, where man git commit brings up a man page for git-commit. Something like man bash if would be wonderful. | |
| Nov 10, 2014 at 18:14 | comment | added | Joshua Taylor | @mikeserv Yes, it makes sense to have man pages for utilities whose behavior is specified by some particular standards. The issue is in things where there are intentionally multiple versions on a system and they have different syntax/behavior/etc. As an interesting example, look at CSH PROGRAMMING CONSIDERED HARMFUL which provides a humorous exposition of some of the differences between csh and some other shells. It would be hard to have a good man page for if syntax if it's different for the different shells installed on a system. | |
| Nov 10, 2014 at 18:08 | comment | added | mikeserv | @JoshuaTaylor - there are a ton of man pages for common utilities of all kinds. They're the POSIX ones - and I thought, up to yesterday, that everybody had them. Anyway they are detailed and useful, but their contents detail only POSIX portable options, syntax - only that which should work everywhere. They are basically this. | |
| Nov 10, 2014 at 17:10 | comment | added | mikeserv | It's nice to inspire. I still think attributions are silly... | |
| Nov 10, 2014 at 14:43 | history | edited | terdon♦ | CC BY-SA 3.0 | added 1302 characters in body |
| Nov 10, 2014 at 2:56 | comment | added | Joshua Taylor | @FrancisDavey As rici said, the commands aren't system wide. It would be a bit misleading to have a manpage for a command that's not present in every shell, but even worse, it would be very confusing to have a man page for a command that is present in multiple shells, but which behaves differently (e.g., accepts different arguments, has different syntax, etc.). | |
| Nov 10, 2014 at 0:22 | comment | added | rici | @FrancisDavey: But most builtins exist (with different extensions) in various shells. Manpages are not shell-specific; they are system-wide. | |
| Nov 9, 2014 at 22:49 | comment | added | Francis Davey | What isn't clear is why they weren't given man pages. Man pages are just files on the MANPATH. They don't have to correspond to separate binaries. There's no reason in principle why bash couldn't have shipped with man pages for its builtins - rather than having an internal help system. | |
| Nov 9, 2014 at 20:20 | vote | accept | DisplayName | ||
| Nov 9, 2014 at 18:45 | comment | added | terdon♦ | @DisplayName they are bash. They are part of it and yes, they are explained in the SHELL BUILTIN COMMANDS section of the bash man page. Their "man pages" are help builtin_name. | |
| Nov 9, 2014 at 18:43 | comment | added | DisplayName | Oh, so does shell builtins also have some thing like man pages in man bash? | |
| Nov 9, 2014 at 18:41 | history | answered | terdon♦ | CC BY-SA 3.0 |