From a91597d03b9d679c652be5b5402bfb8aefbd9fef Mon Sep 17 00:00:00 2001 From: Josh Rahm Date: Wed, 12 Nov 2025 12:00:30 -0700 Subject: Add new OSC 117 that allows executing an extension script. --- src/ansi.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src') diff --git a/src/ansi.rs b/src/ansi.rs index 9dfc54f..ab0ca55 100644 --- a/src/ansi.rs +++ b/src/ansi.rs @@ -760,6 +760,8 @@ pub trait Handler { } debug!("[osc_unhandled]: [{}]", &buf); } + /// Extension to call a specific script with parameters. + fn extension_script(&mut self, _params: &Vec) {} // Set SCP control. fn set_scp(&mut self, _char_path: ScpCharPath, _update_mode: ScpUpdateMode) {} @@ -1545,6 +1547,14 @@ where // Reset text cursor color. b"112" => self.handler.reset_color(NamedColor::Cursor as usize), + b"117" => { + let strvec: Vec = params + .iter() + .map(|&bytes| String::from_utf8_lossy(bytes).to_string()) + .collect(); + self.handler.extension_script(&strvec) + }, + _ => unhandled!(), } } -- cgit