
Vty is a terminal UI library. Release 4.0.0.1 brings a number of important fixes, features, and performance enhancements. - Completely rewritten output backend. - Efficient, "scanline rasterization" style output span generator. Has not been fully optimized, but should be fast enough. - Terminfo based display terminal implementation. With specialized derivitives for xterm, Terminal.app, and iTerm.app. - Attempts to robustly handle even terminals that don't support all display attributes. - I've tested the following terminals with success: iTerm.app, Terminal.app, xterm, rxvt, mlterm, Eterm, gnome-terminal, konsole, screen, linux vty. Hopefully you will be as successfull. - Improved unicode support. Double wide characters will display as expected. - 256 color support. See Graphics.Vty.Attributes.Color240. The actual output color is adjusted according to the number of colors the terminal supports. - The Graphics.Vty.Image combinators no longer require matching dimensions to arguments! Unspecified areas are filled in with a user-customizable background pattern. See Graphics.Vty.Picture. - output picture will be cropped to display size as expected. - GHC 6.8 support is broken :-( - Unknown Windows platform support. - API changes: - "getSize" has been removed. Use "terminal vty >>= display_bounds" where "vty" is an instance of the Vty data structure. - added a "terminal" field to the Vty data structure. Accesses the TerminalHandle associated with the Vty instance. See Graphics.Vty.Terminal for details on the API usable with a TerminalHandle. - Graphics.Vty.Types has undergone a number of changes. Summary: - Partitioned into Graphics.Vty.Attributes for display attributes. Graphics.Vty.Image for image combinators. Graphics.Vty.Picture for final picture construction. - Graphics.Vty.Attributes: - "setFG" and "setBG" are now "with_fore_color" and "with_back_color" - All other "set.." equations similarly replaced. - "attr" is now "def_attr", short for "default display attributes" Also added a "current_attr" for "currently applied display attributes" - Graphics.Vty.Image: - "horzcat" is now "horiz_cat" - "vertcat" is now "vert_cat" - "renderBS" is now "utf8_bytestring" - "renderChar" is now "char" - "renderFill" is now "char_fill" - added a "utf8_string" and "string" (AKA "iso_10464_string") for UTF-8 encoded Strings and ISO-10464 encoded Strings. String literals in GHC have an ISO-10464 runtime representation. - Graphics.Vty.Picture: - exports Graphics.Vty.Image - "pic" is now "pic_for_image" - added API for setting background fill pattern. issues resolved: - "gnome terminal displays non-basic attributes as strikethrough" - http://trac.haskell.org/vty/ticket/14 - "Multi-byte characters are not displayed correctly on update" - http://trac.haskell.org/vty/ticket/10 - "Redraw does not handle rendering a line that extends beyond screen width characters" - http://trac.haskell.org/vty/ticket/13 - "The <|> and <-> combinators should be more forgiving of mismatched dimensions" - http://trac.haskell.org/vty/ticket/9 - "256-color support" - http://trac.haskell.org/vty/ticket/19