I use W3M as both a text browser and a
PAGER, so there is only one set of config files and keymap files to edit to get a consistent experience whether I'm viewing a web page, piped command output, or even just a regular file. One other useful feature is that it has browser tabs, and you can also open a page in an external browser if you want/need to do that (e.g.
/usr/local/bin/firefox --private-window
). I do have a minor annoyance where the default history command is Ctrl-H, which tmux converts to DEL because Ctrl-H is a common control sequence created by pressing Backspace/Delete-Left, so I have both C-h and DEL mapped to the history command to account for both tmux and non-tmux usage.
The accompanying
w3mman(1) Perl script is also convenient as a manpage browser because it can turn things like URLs, file names, C headers, and even items like
execve(2)
into traversable links if they are formatted correctly, and you still get the benefits of using W3M as a web browser with features like browser history and tabs. An important caveat is that opening the rendered man pages in an external browser doesn't work because executable
file:
URLs are likely not implemented due to the security and privacy risks. On the other hand, it's rare that you'd want to view man pages using Chromium, Firefox, etc. in the first place, so there is little point in working around the issue. The only time I might want to do that is with a ridiculously long and information-dense page like
cmake-commands(7), which is very abnormal for a man page.
That said, other choices aren't bad by any means as far as text browsers are concerned. Links does not have a configurable keymap—unlike ELinks, Lynx, and W3M—but you may find its keybindings acceptable, so don't let that discourage you from trying it or any of the others.