A major update which brings Unicode support for input text and PCRE2 regular expressions:

  • We finally have Unicode support for input and output text as per #1. In fact, most character sets on your system should now be supported. Boxes picks up your system encoding, but you can override that by using -n, e.g. -n UTF-8.
  • We adopted Semantic Versioning. This is a new major release.
  • ANSI escape sequences are now supported in the input text. This means you can pipe your text through lolcat and still get correct boxes around it. Thanks to residualmind!
  • The regular expression engine was upgraded to state-of-the-art PCRE2. This means you have more powerful regular expression syntax at your disposal. It also means that any backreferences in your config file are now $1 instead of \1.
  • Due to the above changes, boxes now has a runtime dependency on libunistring and pcre2. This is only relevant for package maintainers or people who build from source.
  • Some deprecated box designs were dropped (netdata, tjc, c-cmt3, and ccel). If you miss them, you can get them back from an old version of the config file.

  • New box design ‘jstone’ by Ed Schaller
  • Mike Meyer’s ‘unicornthink’ box design now allows smaller speech bubbles
  • New box design ‘bear

The detailed changes can be seen in the commit history.

[Release History]