TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Simplified and community-driven man pages

369 pointsby akras14over 7 years ago

32 comments

chao-over 7 years ago
I was lucky to first be introduced to man pages by someone who often just called them &quot;manuals&quot; and (to my best recollection) explained them by telling me &quot;Manuals are to be read, top to bottom, contemplated, and maybe read again, before you act.&quot;<p>Thus I was never under the delusion that man pages were, or should strive to be, How-To&#x27;s of some sort.<p>This TLDR tool definitely needs to exist, but in conjunction with man pages, not as a replacement. Manuals should continue to exist in a form that explores and explains the depths of a utility or command in whatever length that might require. I will make adequate use of both.
评论 #15779799 未加载
评论 #15780144 未加载
评论 #15779877 未加载
评论 #15780030 未加载
评论 #15788087 未加载
begriffsover 7 years ago
When people think of manpages, they tend to think of Linux. At least that&#x27;s what I thought of, until a few months ago when I discovered OpenBSD. Their manual is concise and coherent, unlike the rambling hodgepodge on Linux.<p>Of course it&#x27;s always nice to have a bunch of curated examples like TLDR or &quot;bro&quot; pages, but just wanted to point out that the manpage situation isn&#x27;t universally grim.
评论 #15779704 未加载
评论 #15783981 未加载
评论 #15780061 未加载
PaulRobinsonover 7 years ago
Hilariously, ITT are lots of comments saying that man is awful, in response to a pot about a &quot;simplified and community-driven&quot; alternative.<p>Breaking news: man pages are community-driven already. You can make them better in your distro of choice. The BSD projects are a little better IMHO at this than Linux because each project has a dedicated team trying to raise the bar and make their docs better than the next distro.<p>So don&#x27;t make it simplified, don&#x27;t hail &quot;community-driven&quot;, just go and start making suggested changes with the rest of your favourite OS community!
评论 #15781275 未加载
评论 #15780371 未加载
评论 #15780564 未加载
评论 #15780735 未加载
评论 #15780652 未加载
评论 #15781911 未加载
评论 #15780584 未加载
kccqzyover 7 years ago
The main thing about man pages is that it is a &quot;manual&quot;: reference material for people who already know the basics.<p>If you are just getting started, don&#x27;t read the man pages, but read one of the many &quot;Getting Started&quot; or &quot;Quick Guide&quot; or &quot;Beginning XXX&quot; books. Those will generally be tailored to beginners, including features such as discussions of unifying themes between different commands, historical references and more beginner-friendly organization. Beginners don&#x27;t need to know all the details at first (which are what the man pages provide), but just the big picture.
评论 #15779503 未加载
评论 #15779501 未加载
评论 #15779706 未加载
评论 #15779726 未加载
Xunxiover 7 years ago
This is a very interesting project. Years ago when I wanted to learn how to use Linux, my friend who was a system admin at the time just told me to read Man Pages. It was so overwhelming and confusing to say the least, it made me give up on Linux for a long while.<p>Times have changed and I will definitely love to contribute as well as recommend this project.
评论 #15779480 未加载
评论 #15779713 未加载
coldsauceover 7 years ago
Man pages feel like RFCs for tools. They have a lot of information about how to use them but they&#x27;re sometimes pretty difficult to parse. I&#x27;m really excited about this project. Whenever I don&#x27;t know how to use a tool I look at a StackOverflow answer for an example. I&#x27;ve been doing this for as long as I can remember. I&#x27;m glad there is a dedicated service for this now.
dilawarover 7 years ago
Lovely.<p>I just wrote a bash client. It uses curl to download the page, pandoc to convert md to html and lynx to display the html page.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;dilawar&#x2F;Scripts&#x2F;blob&#x2F;master&#x2F;tldr" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;dilawar&#x2F;Scripts&#x2F;blob&#x2F;master&#x2F;tldr</a> .
menacinglyover 7 years ago
I&#x27;ve always felt like it&#x27;s a ding on my nerd credentials that I hate man pages. A lot of them feel deliberately opaque.<p>2-3 good examples are what joe blow is looking for when he types &quot;man&quot;, and he rarely gets them.
评论 #15779565 未加载
评论 #15780375 未加载
shmerlover 7 years ago
tar makes a lot more sense if you use long options instead of completely cryptic short ones.<p>tar command I&#x27;ve been using recently (scripted of course):<p>To compress:<p><pre><code> tar --create --verbose --use-compress-program=&quot;pixz&quot; --file foo.tar.xz --directory &lt;bar_dir&gt; . </code></pre> To extract:<p><pre><code> tar --extract --verbose --use-compress-program &quot;pixz -d&quot; --file foo.tar.xz </code></pre> Unlike bz2 or xz, pixz it uses all CPU cores both for compression and decompression, and as well allows extracting individual files fast. It&#x27;s also compatible with xz itself.
评论 #15779708 未加载
harry8over 7 years ago
I&#x27;m not following. The most useful thing on first read (and at other times) of man pages are the examples section. Frequently this section is pretty bare which is unfortunate. We should fix that. Yep with all of that.<p>npm install a thing with multiple clients. Um, huh? Where did that come from? At best now we have 2 competing man page systems, one for the &quot;complete&quot; information and one for the examples section? This is crazy, surely? You&#x27;re not going to be able to stop using man pages! A replacement that can&#x27;t be a replacement.<p>But sadly the examples themselves will probably have licensing problems to be able to be incorporated as documentation patches to the man pages - I hope I turn out to be wrong about that.
评论 #15779541 未加载
评论 #15779534 未加载
nikisweetingover 7 years ago
There are a bunch of projects like this, check out `cheat` and `bropages` as well.
评论 #15779750 未加载
评论 #15779856 未加载
exception_eover 7 years ago
Thank you, TLDR authors for this tool. It solves a real problem and can coexist with traditional man pages.<p>I may have missed it in the discussion already, but would it be possible for TLDR to favor editable online sources for its content (e.g.: WordPress&#x2F;Mediawiki with Markdown)? This Wikipedia style of editing may be a big game changer.<p>Caveat: Of course, content would have to be packaged locally for offline use.
DC-3over 7 years ago
If anyone doesn&#x27;t want to install `npm` and wants to know what client to use, the Haskell&#x2F;Stack one is nice. It&#x27;s pretty snappy and has a sane syntax † and data directory (~&#x2F;.tldr&#x2F;).<p>† Unlike `tldr.py`, which requires you to do `tldr find &lt;command&gt;` instead of `tldr &lt;command&gt;`
IgorPartolaover 7 years ago
Anyone ever get anything useful out of info pages (vs man pages)? I never quite got what their deal was.
评论 #15779794 未加载
评论 #15780369 未加载
评论 #15781550 未加载
评论 #15784995 未加载
评论 #15780801 未加载
gravypodover 7 years ago
It would be very nice to have some way of integrating this into OhMyZSH as a plugin. OMZ can already do extraction of command line arguments by tab completion (and it will attempt to make a brief description of what the flag does) [0][1].<p>It might be nice to be able to type &quot;tldr compress a folder into a tarball&quot; and click tab to have a set of templates suggested to you. You can navigate to them and click enter to replace your current command line contents with the template.<p>[0] - <a href="https:&#x2F;&#x2F;i.imgur.com&#x2F;qFnvvaU.png" rel="nofollow">https:&#x2F;&#x2F;i.imgur.com&#x2F;qFnvvaU.png</a><p>[1] - <a href="https:&#x2F;&#x2F;i.imgur.com&#x2F;usOwgw2.png" rel="nofollow">https:&#x2F;&#x2F;i.imgur.com&#x2F;usOwgw2.png</a>
评论 #15788124 未加载
baddoxover 7 years ago
This is a cool idea, but I’ve seen several similar tools and for some reason have never managed to integrate them into my workflow, so I still just google “scp examples” or use my shell history to find previous times when I figured out how to use a command.
Annatarover 7 years ago
So rather than learning a little bit of nroff and making the manual pages better by adding to the EXAMPLES section (or using SmartOS whose manual pages have high quality EXAMPLES sections), it was decided to just re-invent yet another documentation system. I don’t get it: an investment in learning nroff is incredibly valuable, as very high quality typeset documents can be produced with it, so it’s a triple win: better manual pages, no alternative documentation systems and knowledge how to write high quality output in the future. What strange times we live in...
webreacover 7 years ago
I think man pages should be bound to the code. For example chapter 2 should be part of kernel. When a new system call is added, the associated man page should be in the same commit. If a maintainer see a commit that would have an impact of man page without an update of man page, he can easily refuse the commit.<p>For me the first aims of man pages are to be complete and to be in sync with installed software. The orignal virtue of being terse was to be complete without requiring a lengthy description. If a man page is not complete, it has no excuse for being terse.
sethammonsover 7 years ago
On the live demo, it uses a handlebars like template for examples. &#x27;dig {{hostname.com}}&#x27;. I think it would be better to have &#x27;dig $HOSTNAME&#x27;, but maybe that is my bash showing.
urmishover 7 years ago
Sweet. Added this to my bashrc file.<p><pre><code> tldr() { curl -s https:&#x2F;&#x2F;raw.githubusercontent.com&#x2F;tldr-pages&#x2F;tldr&#x2F;master&#x2F;pages&#x2F;common&#x2F;$1.md | less ; }</code></pre>
评论 #15787059 未加载
whitef0xover 7 years ago
I find that what helps me the most are the &#x27;--help&#x27; commands, especially if it has multilevel support, like seen with the docker cli tool.<p>The problem with just providing examples is it doesn&#x27;t always tell me what each argument does, especially if I have multiple arguments, making it seem like the tool works by having a &#x27;magical&#x27; combination of arguments, instead of explaining what each argument does.
otherflavorsover 7 years ago
they aren&#x27;t man(ual)s nor are they written in man(7) or mdoc(7), so not really man pages, wish they had gone with roff rather than markdown. tldr ls would be something like this:<p><pre><code> .Dd $MDocDate$ .Dt LS tldr common .Sh NAME .Nm ls .Nd List directory contents. .Sh EXAMPLES .Bl -hyphen -offset ds .It List files one per line .Pp .Nm ls Fl l .Pp .It List all files, including hidden files .Pp .Nm ls Fl a .Pp .It Long format list (permissions, ownership, size and modification date) of all files .Pp .Nm ls Fl la .Pp .It Long format list with size displayed using human readable units (KB, MB, GB) .Pp .Nm ls Fl lh .Pp .It Long format list sorted by size (descending) .Pp .Nm ls Fl lS .Pp .It Long format list of all files, sorted by modification date (oldest first) .Pp .Nm ls Fl ltr .El</code></pre>
digi_owlover 7 years ago
While reading all the complaints about the man page layout, i find myself thinking that it likely made perfect sense back when teletypes were the predominant terminal.<p>look up something via man, tear off the output, and put it next to you. Maybe collect the most used ones in a binder to bring with next time.<p>Then again, man man may be &quot;enlightening&quot;...
bitwizeover 7 years ago
As others have mentioned, the BSD man pages are the gold standard.<p>Man pages should <i>not</i> be &quot;simplified&quot;. They should be easy to read, but comprehensive. How comprehensive? I <i>literally</i> learned NetBSD kernel programming by reading man pages. The same with learning how to write X programs two decades ago.
sunstoneover 7 years ago
MAN pages that start with a few of the basic use case examples would be a breath of fresh air.
sethammonsover 7 years ago
Not a fan of needing npm. Why not provide a binary? Or did I miss that?
评论 #15783718 未加载
评论 #15788037 未加载
xtiansimonover 7 years ago
I tried to comment and add my own useful examples to Man pages, but the compression on the files caused some Man pages to break. Maybe this will let me annotate my own Man pages for once.
estover 7 years ago
Oh my, someone please document tc, iptables and ffmpeg.
评论 #15788043 未加载
krockover 7 years ago
This is great! I was surprised to find that even a stupid cli that I wrote has a tldr page.
carlosrgover 7 years ago
I don&#x27;t get the point of this. Man pages already have a &quot;description&quot; section where they give a simplified explanation of the tool, an &quot;examples&quot; section where they give typical usage, etc.
评论 #15780435 未加载
MichaelMoser123over 7 years ago
why don&#x27;t they turn man&#x2F;info pages into a wiki?
评论 #15780174 未加载
JdeBPover 7 years ago
Duplicates <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=15769046" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=15769046</a>
评论 #15780368 未加载