Skip to content

v0.18.0

Compare
Choose a tag to compare
@sharkdp sharkdp released this 28 Feb 22:25
· 1265 commits to master since this release

Features

  • Use a pager when bat --list-languages is called, see #1394 (@stku1985)

Bugfixes

  • If the last line doesn't end with a newline character, don't add it if --style=plain, see #1438 (@Enselic)
  • Only print themes hint in interactive mode (bat --list-themes), see #1439 (@rsteube)
  • Make ./tests/syntax-tests/regression_test.sh work on recent versions of macOS, see #1443 (@Enselic)
  • VimL syntax highlighting fix, see #1450 (@esensar)
  • Print an 'Invalid syntax theme settings' error message if a custom theme is broken, see #614 (@Enselic)
  • If plain mode is set and wrap is not explicitly opted in, long lines will no be truncated, see #1426
  • If PAGER (but not BAT_PAGER or --pager) is more or most, silently use less instead to ensure support for colors, see #1063 (@Enselic)
  • If PAGER is bat, silently use less to prevent recursion. For BAT_PAGER or --pager, exit with error, see #1413 (@Enselic)
  • Manpage highlighting fix, see #1511 (@keith-hall)
  • BAT_CONFIG_PATH ignored by bat if non-existent, see #1550 (@sharkdp)

Other

  • Performance improvements, see #1421 (@LovecraftianHorror)
  • Added a new --diagnostic option to collect information for bug reports, see #1459 (@sharkdp)
  • Modified default theme colors to differentiate between a JSON key and a string value, see #1400 (@keith-hall)
  • Upped min required Rust version to 1.42

Syntaxes

New themes

  • ansi replaces ansi-dark and ansi-light, see #1104 and #1412 (@mk12). Breaking change: users that were previously using one of the ansi-* themes should switch to ansi.
  • The Gruvbox theme has been updated, see #1291 (@j0hnmeow). Breaking change: users that were previously using gruvbox or gruvbox-white should update and use gruvbox-dark/gruvbox-light instead.

bat as a library

  • The following PrettyPrinter methods have been removed (they were previously deprecated):
    • input_stdin_with_name
    • input_from_bytes_with_name
    • input_from_reader_with_name
    • vcs_modification_markers (if the git feature is not enabled)