All Versions
62
Latest Version
Avg Release Cycle
57 days
Latest Release
-

Changelog History
Page 1

  • v5.32 Changes

    ๐Ÿ†• New features:

    • Meta-PageUp and Meta-PageDown are now supported (#193)
    • Added supportsItalics and supportsStrikethrough functions to check for feature support in terminfo

    ๐Ÿ› Bug fixes:

    • Detect utf-8 mode in LANG regardless of case (thanks Emeka Nkurumeh)
  • v5.31 Changes

    ๐Ÿ†• New features and API changes:

    • Added support for strikethrough mode. This change adds a new strikethrough Style value and uses the smxx and rmxx Terminfo capabilities to activate and deactivate strikethrough mode, respectively. If the terminfo does not report those capabilities, this style is ignored.
    • Output: added the setDisplayBounds field to set the output dimensions of the output handle; added an implementation of this for the TerminfoBased backend.

    Other changes:

    • The C prototype for vty_c_get_window_size in gwinsz.h was fixed.
  • v5.30 Changes

    ๐Ÿ†• New features:

    • Added Graphics.Vty.setWindowTitle to emit an escape sequence to set the window title, provide the terminal emulator accepts Xterm-style title sequences. For details, see: https://tldp.org/HOWTO/Xterm-Title-3.html
  • v5.29 Changes

    API changes:

    • The Input type got a new field, 'restoreInputState'. This field allows the end user to have direct access to the logic needed to restore the terminal's input state flags. Prior to having this field, this state restoration logic could only be invoked as part of calling 'shutdownInput', but since that function does other things (like killing threads) it is not advisable to call it repeatedly (which is necessary in the use case this change is intended to support). This can be called directly to restore the input state flags as needed, although this is not required if 'shutdown' (or 'shutdownInput') is called.

    Other changes:

    • attributeControl: explicitly enable the ICRNL terminal mode flag (see #187 and c572ad).
  • v5.28.2 Changes

    March 27, 2020

    ๐Ÿ› Bug fixes:

    • Added a package dependency on semigroups for the vty-build-width-table tool on older GHCs (#185)
  • v5.28.1 Changes

    March 09, 2020

    ๐Ÿ› Bug fixes:

    • installUnicodeWidthTable: use throwIO, not throw
  • v5.28 Changes

    March 09, 2020

    ๐Ÿš€ This release improves Vty's support for multi-column Unicode characters and provides greater compatibility with a wider array of terminal emulators. The following sections summarize the relevant changes, but an overview of the new functionality is motivated and detailed in the new ๐Ÿ‘ "Multi-Column Character Support" README section. For historical context, please also consider reading over #175.

    API changes:

    • New modules were added:
      • Graphics.Vty.UnicodeWidthTable.Types
      • Graphics.Vty.UnicodeWidthTable.IO
      • Graphics.Vty.UnicodeWidthTable.Query
      • Graphics.Vty.UnicodeWidthTable.Install
    • The Config type got a new field, allowCustomUnicodeWidthTables, that controls whether mkVty will attempt to load a Unicode width table if specified in the configuration.

    ๐Ÿ”ง Configuration file changes:

    • A new syntax was added to support specifying Unicode width tables on a per-TERM basis. The syntax is widthMap <TERM> <PATH>. See the documentation for Graphics.Vty.Config for details. Since prior versions of this library will silently ignore any configuration file lines they cannot parse, this change to user configuration files is at least non-breaking for older versions of Vty.

    Other changes:

    • The mkVty function now automatically attempts to load a custom Unicode width table if one is specified in the configuration, provided allowCustomUnicodeWidthTables is not set to Just False. See the documentation for Graphics.Vty.mkVty for details.
    • Vty now includes a command line tool, vty-build-width-table, that queries the terminal emulator to construct a custom Unicode width table and optionally update the Vty configuration file to use it. Programs that want to use that tool's functionality may also do so via the API exposed in the various modules listed above.
  • v5.27 Changes

    February 27, 2020
    • โž• Added Graphics.Vty.Config.getTtyEraseChar to support querying the kernel for the current terminal's settings to obtain the character assigned by the stty erase command. That can then be added to the Vty configuration's input map to map to KBS (backspace) if desired.
  • v5.26 Changes

    October 01, 2019
    • โš  Resolved various import warnings (thanks @glguy)
    • โœ‚ Removed the MonadIO constraint from the Output type's fields and removed MonadFail uses (PR #177, thanks @glguy)
    • ๐Ÿ“š Clarified documentation for ANSI colors (thanks Colby Jenn)
    • Graphics.Vty.Attributes no longer re-exports Graphics.Vty.Attributes.Color
    • The Graphics.Vty.Attributes.Color module is now exposed (thanks Colby Jenn)
    • Raised upper bound for microlens to 0.4.12 (thanks Artyom Kazak)
    • ๐Ÿ”„ Changed from using System.Posix.Env.getEnv to System.Environment.lookupEnv (thanks Jonathan Osser)
    • โž• Added Graphics.Vty.Image functions for dealing with character width computations on Text values instead of Strings:
      • safeWctwidth
      • safeWctlwidth
      • wctwidth
      • wctlwidth
  • v5.25.1 Changes

    November 04, 2018
    • Avoided a conflict with a Microlens 0.4.10 operator and added an upper bound on Microlens of 0.4.11.