mirror of
https://github.com/ilyakooo0/vty.git
synced 2024-11-30 02:13:36 +03:00
142 lines
7.9 KiB
Plaintext
142 lines
7.9 KiB
Plaintext
5.0.0
|
|
* The naming convention now matches:
|
|
* http://www.haskell.org/haskellwiki/Programming_guidelines#Naming_Conventions
|
|
* all projects using vty for input must be compiled with -threaded. This could be resolved but
|
|
would like to avoid the complexity for now.
|
|
* mkVtyEscDelay has been removed. Use "mkVty def". Which initialized vty with the default
|
|
configuration.
|
|
* input handling changes
|
|
* KASCII is now KChar
|
|
* KPN5 is now KCenter
|
|
* tests exist.
|
|
* terminal timing is now handled by selecting an appropriate VTIME. Previously this was
|
|
implemented within Vty itself. This reduced complexity in vty but potentially provides
|
|
a different meta key behavior.
|
|
* The time vty will wait to verify an ESC byte means a single ESC key is the
|
|
singleEscPeriod of the Input Config structure.
|
|
* removed the typeclass based terminal and display context interface in favor of a data
|
|
structure of properties interface.
|
|
* renamed the Terminal interface to Output
|
|
* The default picture for an image now uses the "clear" background. This background fills
|
|
background spans with spaces or just ends the line.
|
|
* Previously the background defaulted to the space character. This causes issues copying
|
|
text from a text editor. The text would end up with extra spaces at the end of the line.
|
|
* Layer support
|
|
* Each layer is an image.
|
|
* The layers for a picture are a list of images.
|
|
* The first image is the top-most layer. The images are ordered from top to bottom.
|
|
* The transparent areas for a layer are the background_fill areas. These will be implicitly
|
|
added to to pad images when images of different sizes are joined.
|
|
* If the background is clear there is no background layer.
|
|
* If there is a background character then the bottom layer is the background layer.
|
|
* emptyPicture is a Picture with no layers and no cursor
|
|
* addToTop and addToBottom add a layer to the top and bottom of the given Picture.
|
|
* compatibility improvements:
|
|
* terminfo based terminals with no cursor support are silently accepted. The cursor
|
|
visibility changes in the Picture will have no effect.
|
|
* alternate (setf/setb) color maps supported. Though colors beyond the first 8 are just a
|
|
guess.
|
|
* added "rgbColor" for easy support of RGB specified colors.
|
|
* examples moved to vty-examples package. See test directory for cabal file.
|
|
* vty-interactive-terminal-test
|
|
* interactive test. Useful for building a bug report for vty's author.
|
|
* test/interactive_terminal_test.hs
|
|
* vty-event-echo
|
|
* view a input event log for vty. Example of interacting with user.
|
|
* test/EventEcho.hs
|
|
* vty-rouge
|
|
* A bad rouge-like game. Example of layers and image build operations.
|
|
* test/Rouge.hs
|
|
* vty-benchmark
|
|
* benchmarks vty. A series of tests that push random pictures to the terminal. The
|
|
random pictures are generated using QuickCheck. The same generators used in the
|
|
automated tests.
|
|
* test/benchmark.hs
|
|
|
|
4.7.0.0
|
|
* API changes:
|
|
* Added Graphics.Vty.Image.crop: Ensure an image is no larger than the specified size.
|
|
* Added Graphics.Vty.Image.pad: Ensure an image is no smaller than the specified size.
|
|
* Added Graphics.Vty.Image.translate: Offset an image.
|
|
* Thanks Ben Boeckel <MathStuf@gmail.com> for these features.
|
|
|
|
4.3.0.0
|
|
|
|
4.2.1.0
|
|
* API changes:
|
|
* Attr record accessor fore_color changed to attr_fore_color
|
|
* Attr record accessor back_color changed to attr_back_color
|
|
* Attr record accessor style changed to attr_style
|
|
* Added an "inline" display attribute changing DSL:
|
|
* put_attr_change applies a display attribute change immediately to a terminal
|
|
* For instance, can be used to change the display attrbiutes of text output via putStrLn
|
|
and putStr. EX: "put_attr_change $ back_color red" will set the
|
|
background color to red.
|
|
* Changes do not apply to a Picture output via output_picture.
|
|
* See Graphics.Vty.Inline
|
|
* Moved all IO actions into any monad an instance of MonadIO
|
|
|
|
4.0.0.1
|
|
* binding for mk_wcswidth was incorrect. Most platforms just magically worked due to
|
|
coincidence.
|
|
|
|
4.0.0
|
|
* 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.
|
|
* 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.
|
|
* Completely rewritten output backend.
|
|
* Efficient, scanline style output span generator. Has not been fully optimized, but good
|
|
enough.
|
|
* The details required to display the desired picture on a terminal are well encapsulated.
|
|
* 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 images are always cropped to display size.
|
|
* Significant code coverage by QuickCheck tests. An interactive test for those final properties
|
|
that couldn't be automatically verified.
|
|
|
|
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
|
|
|