C++ stdlib man pages
stdman is a tool that parses archived HTML files from cppreference and generates groff-formatted manual pages for Unix-based systems. The goal is to provide excellent formatting for easy readability. stdman has been tested on Linux and OS X.
There's no need to compile stdman if you just want to install the man pages. Instead, just run:
./configure make install # as a user with appropriate permissions to install
If you need to pass options to configure, you can do so. See
./configure --help for more updated information.
If you're getting 'no manual entry for std::foo' or you're seeing the libstdc++ man pages (characterized by a huge list of typedefs when you run
man std::string), see the following. By default, stdman will install to
/usr/local; on some systems, the manpath does not look there first. To fix this, you have two options:
- Install to
./configure --prefix=/usr # will replace existing libstdc++ pages make install
- Manage your
If your output is not colorized
You either need to set your pager up to colorize man pages, or you need to install a pager to do this for you.
less will not do this by default, but it's easy enough to add.
most will do this by default, but it doesn't ship with vim-like navigation.
To configure less:
# Colors default=$(tput sgr0) red=$(tput setaf 1) green=$(tput setaf 2) purple=$(tput setaf 5) orange=$(tput setaf 9) # Less colors for man pages export PAGER=less # Begin blinking export LESS_TERMCAP_mb=$red # Begin bold export LESS_TERMCAP_md=$orange # End mode export LESS_TERMCAP_me=$default # End standout-mode export LESS_TERMCAP_se=$default # Begin standout-mode - info box export LESS_TERMCAP_so=$purple # End underline export LESS_TERMCAP_ue=$default # Begin underline export LESS_TERMCAP_us=$green
To install most:
pacman -S most
apt-get install most
export MANPAGER=most # in ~/.bashrc or similar
Should you want to build the source to make modifications and/or generate your own man pages, simply:
make generate # will build stdman and generate man pages
make generate expects sources will be in the
./reference/en/cpp directory by default. See
./configure --help to modify this.
- C++11 (recommended GCC 4.8 or clang 3.4 or greater)
- elinks (recommended 0.12pre6 or greater)
- gzip (recommended 1.3.12 or greater)
NOTE: Generation not tested on Windows/cygwin.