For "manuals", Docbook. It's an SGML dialect designed for technical documentation. http://www.docbook.org/ . It may not meet your "easy markup" criterion but it definitely produces nice output in LaTex (can be converted then to PDF) and good HTML output if you cook up your own CSS stylesheet for it. Text files kept in version control. All programs also use a library that combines command line argument parsing with "--help" output in a choice of formats (normal, man page, and docbook). For the API reference, doxygen of course.