fix(main): enable bracketed paste so multi-line paste is handled as one event

This commit is contained in:
SW 2026-07-16 12:43:59 +02:00
parent 5906cddbbf
commit a8fb33fa9f
3 changed files with 13 additions and 5 deletions

2
Cargo.lock generated
View file

@ -825,7 +825,7 @@ dependencies = [
[[package]] [[package]]
name = "lines" name = "lines"
version = "0.1.20" version = "0.1.21"
dependencies = [ dependencies = [
"base64", "base64",
"chrono", "chrono",

View file

@ -1,6 +1,6 @@
[package] [package]
name = "lines" name = "lines"
version = "0.1.20" version = "0.1.21"
edition = "2024" edition = "2024"
authors = ["janvete"] authors = ["janvete"]
description = "TUI for running frequently used commands" description = "TUI for running frequently used commands"

View file

@ -14,7 +14,9 @@ use std::time::Duration;
use clap::Parser; use clap::Parser;
use crossterm::{ use crossterm::{
event::{DisableMouseCapture, EnableMouseCapture}, event::{
DisableBracketedPaste, DisableMouseCapture, EnableBracketedPaste, EnableMouseCapture,
},
execute, execute,
terminal::{disable_raw_mode, enable_raw_mode, EnterAlternateScreen, LeaveAlternateScreen}, terminal::{disable_raw_mode, enable_raw_mode, EnterAlternateScreen, LeaveAlternateScreen},
}; };
@ -54,7 +56,12 @@ fn main() -> io::Result<()> {
enable_raw_mode()?; enable_raw_mode()?;
let mut stdout = io::stdout(); let mut stdout = io::stdout();
execute!(stdout, EnterAlternateScreen, EnableMouseCapture)?; execute!(
stdout,
EnterAlternateScreen,
EnableMouseCapture,
EnableBracketedPaste
)?;
let backend = CrosstermBackend::new(stdout); let backend = CrosstermBackend::new(stdout);
let mut terminal = Terminal::new(backend)?; let mut terminal = Terminal::new(backend)?;
@ -64,7 +71,8 @@ fn main() -> io::Result<()> {
execute!( execute!(
terminal.backend_mut(), terminal.backend_mut(),
LeaveAlternateScreen, LeaveAlternateScreen,
DisableMouseCapture DisableMouseCapture,
DisableBracketedPaste
)?; )?;
terminal.show_cursor()?; terminal.show_cursor()?;