v0.21.0
Added 9
- Correctly render tab stops in --show-all
- Add a --style=default option and make it the default, which is less verbose than full
- Enable BusyBox less as pager
- Map clang-format config file (.clang-format) to YAML syntax
- Associate /var/spool/mail/* and /var/mail/* with the Email syntax
- Add cmd-help syntax to scope --help messages
- Associate .inf files with the INI syntax
- Allow configuration of show_nonprintable with PrettyPrinter
- Add Error::SyntectLoadingError(syntect::LoadingError) enum variant
Changed 9
- File extensions are now matched case-insensitively
- Skip syntax highlighting on long lines (> 16384 chars) to improve performance
- Vastly improve startup time by lazy-loading syntaxes via syntect 5.0.0, making bat display small files approximately 75% faster
- Include info about custom assets in --diagnostics if used
- Improve log syntax handling of escape characters in double quoted strings
- Slightly adjust Zig syntax
- Change the binary format of syntaxes.bin due to syntaxes now being lazy-loaded via syntect 5.0.0
- Mark bat::error::Error enum as #[non_exhaustive] to allow adding new variants without future semver breakage
- Change Error::SyntectError(syntect::LoadingError) to Error::SyntectError(syntect::Error)
Fixed 1
- bat no longer crashes when encountering files that reference missing syntaxes
Security 1
- Bump regex dependency from 1.5.4 to 1.5.5 to fix CVE-2022-24713
Features
- Correctly render tab stops in
--show-all, see #2038 (@Synthetica9) - Add a
--style=defaultoption and make it the default. It is less verbose thanfull, see #2061 (@IsaacHorvath) - Enable BusyBox
lessas pager, see #2162 (@nfisher1226) - File extensions are now matched case-insensitively. See #1854, #2181 (@Enselic)
Bugfixes
- Bump
regexdependency from 1.5.4 to 1.5.5 to fix CVE-2022-24713, see #2145, #2139 (@Enselic) batno longer crashes when encountering files that references missing syntaxes. See #915, #2181 (@Enselic)
Performance
- Skip syntax highlighting on long lines (> 16384 chars) to help improve performance. See #2165 (@keith-hall)
- Vastly improve startup time by lazy-loading syntaxes via syntect 5.0.0. This makes bat display small files ~75% faster than before. See #951, #2181 (@Enselic)
Other
- Include info about custom assets in
--diagnosticsif used. See #2107, #2144 (@Enselic)
Syntaxes
- Mapped clang-format config file (.clang-format) to YAML syntax (@TruncatedDinosour)
- log syntax: improved handling of escape characters in double quoted strings. See #2123 (@keith-hall)
- Associate
/var/spool/mail/*and/var/mail/*with theEmailsyntax. See #2156 (@cyqsimon) - Added cmd-help syntax to scope --help messages. See #2148 (@victor-gp)
- Slightly adjust Zig syntax. See #2136 (@Enselic)
- Associate
.inffiles with theINIsyntax. See #2190 (@Enselic)
bat as a library
- Allow configuration of
show_nonprintablewithPrettyPrinter, see #2142 - The binary format of syntaxes.bin has been changed due to syntaxes now being lazy-loaded via syntect 5.0.0. See #2181 (@Enselic)
- Mark
bat::error::Errorenum as#[non_exhaustive]to allow adding new variants without future semver breakage. See #2181 (@Enselic) - Change
Error::SyntectError(syntect::LoadingError)toError::SyntectError(syntect::Error). See #2181 (@Enselic) - Add
Error::SyntectLoadingError(syntect::LoadingError)enum variant. See #2181 (@Enselic)