github hpjansson/chafa 1.10.0
Chafa 1.10.0

latest releases: 1.14.0, 1.12.5, 1.12.4...
2 years ago

This is a feature release focused on compatibility, presentation and ergonomics.

  • New option: --animate <bool>. On by default. Can be turned off to replace animations with a still frame. Suggested by @ploum in #79.

  • New option: --center <bool> or -C <bool>. Off by default. Can be turned on to center images. Suggested by @ploum in #83.

  • New options: --margin-bottom <n> and --margin-right <n>. These permit using all available space (with --margin-bottom 0) or some smaller amount. Suggested by @crmabs in #61.

  • New option: --polite <bool>. On by default. Can be turned off to correct issues caused by previous terminal state (e.g. no sixel scrolling) and improve presentation (e.g. by temporarily hiding the cursor). This can leave the terminal in an altered state, which is somewhat rude.

  • New option: --threads <n>. Allows manually specifying the number of threads to use. Defaults to one per detected logical CPU core.

  • When invoked with redirected input and no arguments, act like a filter as if invoked with -. Here's an example that downloads an image, converts it to Unicode text and mails it to hello@example.com:

    $ curl https://hpjansson.org/chafa/img/lc.jpg \
      | chafa -f symbols -c none -s 77 --invert --dither bayer \
      | mailx hello@example.com
  • If input or output is being redirected, default to playing animations only once instead of looping forever. This can be overridden with -d inf.

  • Replaced obsolete Autoconf macros (@mikelolasagasti).

  • Improved image loaders:

    • GIF: Load GIF87a images as well as GIF89a.
    • PNG: Add an internal copy of LodePNG, bypassing ImageMagick. This improves performance and helps with eventually phasing out the latter.
    • XWD: Support images generated by convert.
  • Improved terminal support:

    • Contour: Enable sixel support (@data-man).
    • foot: Open-ended TERM string matching (@dnkl).
    • Konsole: Enable sixel support (@data-man).
    • WezTerm: Enable sixel support.
  • Bug fixes:

    • #76 Smolscale uses too much stack space (found by @FollieHiyuki).
    • #81 Chafa --version is returned to stderr, not stdout (found by @ploum).
    • [unfiled] Potential memory overrun when using Floyd-Steinberg dithering in symbols mode.
    • [unfiled] iTerm2 compatibility issue with WezTerm and possibly others.

Don't miss a new chafa release

NewReleases is sending notifications on new releases.