bat-extras: batman
June 10, 2024 ยท View on GitHub
Read system manual pages (man) using bat as the manual page formatter.
Gone are the days of losing your place while reading through monotone manual pages. With bat and batman, you can read man ifconfig with beautiful 24-bit color and syntax higlighting.
If you have fzf installed, you can even use batman to search through manual pages!
Usage
batman [SECTION] [ENTRY]
As a Replacement for Man
With bash:
eval "$(batman --export-env)"
With fish:
batman --export-env | source
Environment
| Variable | Description |
|---|---|
MANPAGER | Changes the pager used for batman. This is treated like BAT_PAGER, but only affects this command. |
Customization
Changing the Theme
You can change the syntax highlighting theme for batman by setting the BAT_THEME environment variable before calling batman. The following wrapper function will change the theme to Solarized (dark) without affecting any other bat command.
batman() {
BAT_THEME="Solarized (dark)" batman "$@"
return $?
}
Installation
This script is a part of the bat-extras suite of scripts. You can find install instructions here.
Caveats
Flags aren't highlighted:
- This happens when you change
bat's theme throughbat's config file or theBAT_THEMEenvironment variable. Not all themes provide colours for flags, and it's a known issue. - You can overriding the theme for
batmanby wrapping it in a function that setsBAT_THEME. - The following themes support manpage highlighting:
Monokai Extended/ ``Monokai Extended Light`Solarized (dark)/Solarized (light)
Acknowledgements
Thanks to @sharkdp and @LunarLambda for debugging how to make this work properly in certain environments.
Issues?
If you find an issue or have a feature suggestion, make a pull request or issue through GitHub! Contributions are always welcome.