Pretty-print source code and highlight it with bat
.
The only thing better than syntax highlighting? Syntax highlighting and code formatting. This script combines the best of both worlds by using various formatters to format source files before using bat
to highlight them.
prettybat [OPTIONS] [PATH...]
Every option is passed through to bat
.
See man bat
for more information.
Language | Formatter |
---|---|
JavaScript (JS, JSX) | prettier |
TypeScript (TS, TSX) | prettier |
CSS, SCSS, SASS | prettier |
Markdown | prettier |
JSON | yq, prettier |
YAML | yq, prettier |
HTML | prettier |
SVG | prettier |
Rust | rustfmt |
Bash | shfmt |
C | ClangFormat |
C++ | ClangFormat |
Objective-C | ClangFormat |
Python | black |
Elixir | mix format |
- The header displayed by bat will show
STDIN
instead of the filename (bat 0.13
or older). - The git changes sidebar will not work with files that have been formatted.
This script is a part of the bat-extras
suite of scripts. You can find install instructions here.
If you find an issue or have a feature suggestion, make a pull request or issue through GitHub! Contributions are always welcome.