ANN: vty-4.0.0.1 released

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

Corey O'Connor
Vty is a terminal UI library. Release 4.0.0.1 brings a number of important fixes, features, and performance enhancements.
<SNIP>
- 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.
Err, I haven't paid my 86 Francs to find out, but ISO-10464 appears to specify testing regimes for gas cylinders -- a very worthy thing to do, but seemingly unrelated to terminal output. http://www.iso.org/iso/catalogue_detail.htm?csnumber=34234 I suspect you mean ISO-10646, if so you might want to correct its appearance in the API. John PS: Typos aside, I'm excited to see the progress in vty. Thanks.

On Sat, Sep 5, 2009 at 2:30 PM, John Pybus
Corey O'Connor
writes: Err, I haven't paid my 86 Francs to find out, but ISO-10464 appears to specify testing regimes for gas cylinders -- a very worthy thing to do, but seemingly unrelated to terminal output. http://www.iso.org/iso/catalogue_detail.htm?csnumber=34234
I suspect you mean ISO-10646, if so you might want to correct its appearance in the API.
lol. You are correct :-) I'll push out an update soon with this and a few other small changes. Cheers, Corey O'Connor
participants (2)
-
Corey O'Connor
-
John Pybus