diff --git a/CHANGELOG.md b/CHANGELOG.md index 4c7b234ca..e89d583fb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,21 @@ + +# Version 0.25.0 +BREAKING: `Copy` trait is removed from `Event`, you can keep it by removing the "bracked-paste" feature flag. However this flag might be standardized in the future. +We removed the `Copy` from `Event` because the new `Paste` event, which contains a pasted string into the terminal, which is a non-copy string. + +- Add ability to paste a string in into the terminal and fetch the pasted string via events (see `Event::Paste` and `EnableBracketedPaste `). +- Add support for functional key codes from kitty keyboard protocol. Try out by `PushKeyboardEnhancementFlags`. This protocol allows for: + - See: https://sw.kovidgoyal.net/kitty/keyboard-protocol/#modifiers + - Press, Repeat, Release event kinds. + - SUPER, HYPER, META modifiers. + - Media keycodes + - Right/left SHIFT, Control, Alt, Super, Hyper, Meta + - IsoLevel3Shift, IsoLevel5Shift + - Capslock, scroll lock, numlock + - Printscreen, pauze, menue, keyboard begin. +- Create `SetStyle` command to allow setting various styling in one command. +- Terminal Focus events (see `Event::FocusGained` and `Event::FocusLost`) + # Version 0.24.0 - Add DoubleUnderlined, Undercurled, Underdots the text, Underdotted, Underdashes, Underdashed attributes and allow coloring their foreground / background color. - Fix windows unicode character parsing, this fixed various key combinations and support typing unicode characters. diff --git a/Cargo.toml b/Cargo.toml index 197b22a16..56558baef 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "crossterm" -version = "0.24.0" +version = "0.25.0" authors = ["T. Post"] description = "A crossplatform terminal library for manipulating terminals." repository = "https://github.com/crossterm-rs/crossterm" diff --git a/examples/event-read.rs b/examples/event-read.rs index 74a9b6b0c..a111fd8e5 100644 --- a/examples/event-read.rs +++ b/examples/event-read.rs @@ -73,7 +73,7 @@ fn main() -> Result<()> { stdout, EnableBracketedPaste, EnableFocusChange, - EnableMouseCapture + EnableMouseCapture, PushKeyboardEnhancementFlags( KeyboardEnhancementFlags::DISAMBIGUATE_ESCAPE_CODES | KeyboardEnhancementFlags::REPORT_ALL_KEYS_AS_ESCAPE_CODES