Features
- Correctly render tab stops in
--show-all
, see #2038 (@Synthetica9) - Add a
--style=default
option and make it the default. It is less verbose thanfull
, see #2061 (@IsaacHorvath) - Enable BusyBox
less
as pager, see #2162 (@nfisher1226) - File extensions are now matched case-insensitively. See #1854, #2181 (@Enselic)
Bugfixes
- Bump
regex
dependency from 1.5.4 to 1.5.5 to fix CVE-2022-24713, see #2145, #2139 (@Enselic) bat
no 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
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 theEmail
syntax. See #2156 (@cyqsimon) - Added cmd-help syntax to scope --help messages. See #2148 (@victor-gp)
- Slightly adjust Zig syntax. See #2136 (@Enselic)
- Associate
.inf
files with theINI
syntax. See #2190 (@Enselic)
bat
as a library
- Allow configuration of
show_nonprintable
withPrettyPrinter
, 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::Error
enum 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)