[Haskell-cafe] ANN: vty-4.0.0.1 released
Corey O'Connor
coreyoconnor at gmail.com
Thu Sep 3 21:51:06 EDT 2009
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
More information about the Haskell-Cafe
mailing list