mirror of
https://github.com/zellij-org/zellij.git
synced 2026-10-20 00:03:25 +00:00
Allow disabling OSC8 link generation (#4624)
* implementation * rustfmt * add pr
This commit is contained in:
@@ -31,6 +31,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||
* fix: query webserver through ipc rather than https (https://github.com/zellij-org/zellij/pull/4620)
|
||||
* feat: add web client `base_url` option (https://github.com/zellij-org/zellij/pull/4409)
|
||||
* fix: breaking floating panes to a new tab no longer keeps them floating (https://github.com/zellij-org/zellij/pull/4622)
|
||||
* fix: allow disabling automatic OSC8 hyperlink formatting (https://github.com/zellij-org/zellij/pull/4624)
|
||||
|
||||
|
||||
## [0.43.1] - 2025-08-08
|
||||
|
||||
@@ -272,6 +272,7 @@ fn read_from_channel(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
true, // osc8_hyperlinks
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
|
||||
@@ -66,6 +66,7 @@ fn write_changed_styles(
|
||||
current_character_styles: CharacterStyles,
|
||||
chunk_changed_colors: Option<[Option<AnsiCode>; 256]>,
|
||||
link_handler: Option<&std::cell::Ref<LinkHandler>>,
|
||||
osc8_hyperlinks: bool,
|
||||
vte_output: &mut String,
|
||||
) -> Result<()> {
|
||||
let err_context = "failed to format changed styles to VTE string";
|
||||
@@ -73,10 +74,14 @@ fn write_changed_styles(
|
||||
if let Some(new_styles) =
|
||||
character_styles.update_and_return_diff(¤t_character_styles, chunk_changed_colors)
|
||||
{
|
||||
if let Some(osc8_link) =
|
||||
link_handler.and_then(|l_h| l_h.output_osc8(new_styles.link_anchor))
|
||||
{
|
||||
write!(vte_output, "{}{}", new_styles, osc8_link).context(err_context)?;
|
||||
if osc8_hyperlinks {
|
||||
if let Some(osc8_link) =
|
||||
link_handler.and_then(|l_h| l_h.output_osc8(new_styles.link_anchor))
|
||||
{
|
||||
write!(vte_output, "{}{}", new_styles, osc8_link).context(err_context)?;
|
||||
} else {
|
||||
write!(vte_output, "{}", new_styles).context(err_context)?;
|
||||
}
|
||||
} else {
|
||||
write!(vte_output, "{}", new_styles).context(err_context)?;
|
||||
}
|
||||
@@ -89,6 +94,7 @@ fn serialize_chunks_with_newlines(
|
||||
_sixel_chunks: Option<&Vec<SixelImageChunk>>, // TODO: fix this sometime
|
||||
link_handler: Option<&mut Rc<RefCell<LinkHandler>>>,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
max_size: Option<Size>,
|
||||
) -> Result<String> {
|
||||
let err_context = || "failed to serialize input chunks".to_string();
|
||||
@@ -129,6 +135,7 @@ fn serialize_chunks_with_newlines(
|
||||
current_character_styles,
|
||||
chunk_changed_colors,
|
||||
link_handler.as_ref(),
|
||||
osc8_hyperlinks,
|
||||
&mut vte_output,
|
||||
)
|
||||
.with_context(err_context)?;
|
||||
@@ -144,6 +151,7 @@ fn serialize_chunks(
|
||||
link_handler: Option<&mut Rc<RefCell<LinkHandler>>>,
|
||||
sixel_image_store: Option<&mut SixelImageStore>,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
max_size: Option<Size>,
|
||||
) -> Result<String> {
|
||||
let err_context = || "failed to serialize input chunks".to_string();
|
||||
@@ -186,6 +194,7 @@ fn serialize_chunks(
|
||||
current_character_styles,
|
||||
chunk_changed_colors,
|
||||
link_handler.as_ref(),
|
||||
osc8_hyperlinks,
|
||||
&mut vte_output,
|
||||
)
|
||||
.with_context(err_context)?;
|
||||
@@ -297,6 +306,7 @@ pub struct Output {
|
||||
character_cell_size: Rc<RefCell<Option<SizeInPixels>>>,
|
||||
floating_panes_stack: Option<FloatingPanesStack>,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
pane_render_report: PaneRenderReport,
|
||||
cursor_coordinates: Option<(usize, usize)>,
|
||||
}
|
||||
@@ -306,11 +316,13 @@ impl Output {
|
||||
sixel_image_store: Rc<RefCell<SixelImageStore>>,
|
||||
character_cell_size: Rc<RefCell<Option<SizeInPixels>>>,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
) -> Self {
|
||||
Output {
|
||||
sixel_image_store,
|
||||
character_cell_size,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
..Default::default()
|
||||
}
|
||||
}
|
||||
@@ -474,6 +486,7 @@ impl Output {
|
||||
self.link_handler.as_mut(),
|
||||
Some(&mut self.sixel_image_store.borrow_mut()),
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
None, // No size constraints for regular rendering
|
||||
)
|
||||
.with_context(err_context)?,
|
||||
@@ -541,6 +554,7 @@ impl Output {
|
||||
self.link_handler.as_mut(),
|
||||
Some(&mut self.sixel_image_store.borrow_mut()),
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
max_size,
|
||||
)
|
||||
.with_context(err_context)?,
|
||||
@@ -1083,7 +1097,12 @@ impl OutputBuffer {
|
||||
self.changed_lines.clear();
|
||||
self.should_update_all_lines = false;
|
||||
}
|
||||
pub fn serialize(&self, viewport: &[Row], max_size: Option<Size>) -> Result<String> {
|
||||
pub fn serialize(
|
||||
&self,
|
||||
viewport: &[Row],
|
||||
osc8_hyperlinks: bool,
|
||||
max_size: Option<Size>,
|
||||
) -> Result<String> {
|
||||
let mut chunks = Vec::new();
|
||||
for (line_index, line) in viewport.iter().enumerate() {
|
||||
let terminal_characters =
|
||||
@@ -1093,7 +1112,14 @@ impl OutputBuffer {
|
||||
let y = line_index;
|
||||
chunks.push(CharacterChunk::new(terminal_characters, x, y));
|
||||
}
|
||||
serialize_chunks_with_newlines(chunks, None, None, self.styled_underlines, max_size)
|
||||
serialize_chunks_with_newlines(
|
||||
chunks,
|
||||
None,
|
||||
None,
|
||||
self.styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
max_size,
|
||||
)
|
||||
}
|
||||
pub fn changed_chunks_in_viewport(
|
||||
&self,
|
||||
|
||||
@@ -15,7 +15,13 @@ fn create_test_output() -> Output {
|
||||
width: 10,
|
||||
})));
|
||||
let styled_underlines = true;
|
||||
Output::new(sixel_image_store, character_cell_size, styled_underlines)
|
||||
let osc8_hyperlinks = true;
|
||||
Output::new(
|
||||
sixel_image_store,
|
||||
character_cell_size,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
)
|
||||
}
|
||||
|
||||
/// Helper to create a simple CharacterChunk with text
|
||||
@@ -846,7 +852,7 @@ fn test_output_buffer_serialize() {
|
||||
let row = Row::from_columns(columns);
|
||||
let viewport = vec![row];
|
||||
|
||||
let result = buffer.serialize(&viewport, None).unwrap();
|
||||
let result = buffer.serialize(&viewport, true, None).unwrap();
|
||||
|
||||
// Should contain the character and newlines/carriage returns
|
||||
assert!(result.contains('A'), "Serialized output should contain 'A'");
|
||||
|
||||
@@ -359,6 +359,7 @@ pub struct Grid {
|
||||
debug: bool,
|
||||
arrow_fonts: bool,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
pub supports_kitty_keyboard_protocol: bool, // has the app requested kitty keyboard support?
|
||||
explicitly_disable_kitty_keyboard_protocol: bool, // has kitty keyboard support been explicitly
|
||||
// disabled by user config?
|
||||
@@ -492,6 +493,7 @@ impl Grid {
|
||||
debug: bool,
|
||||
arrow_fonts: bool,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
explicitly_disable_kitty_keyboard_protocol: bool,
|
||||
) -> Self {
|
||||
let sixel_grid = SixelGrid::new(character_cell_size.clone(), sixel_image_store);
|
||||
@@ -547,6 +549,7 @@ impl Grid {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
lock_renders: false,
|
||||
supports_kitty_keyboard_protocol: false,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
@@ -1110,10 +1113,13 @@ impl Grid {
|
||||
to_serialize.push(line.clone())
|
||||
}
|
||||
self.output_buffer
|
||||
.serialize(to_serialize.as_slice(), None)
|
||||
.serialize(to_serialize.as_slice(), self.osc8_hyperlinks, None)
|
||||
.ok()
|
||||
},
|
||||
None => self.output_buffer.serialize(&self.viewport, None).ok(),
|
||||
None => self
|
||||
.output_buffer
|
||||
.serialize(&self.viewport, self.osc8_hyperlinks, None)
|
||||
.ok(),
|
||||
}
|
||||
}
|
||||
pub fn render(
|
||||
|
||||
@@ -48,6 +48,7 @@ macro_rules! get_or_create_grid {
|
||||
($self:ident, $client_id:ident) => {{
|
||||
let rows = $self.get_content_rows();
|
||||
let cols = $self.get_content_columns();
|
||||
let osc8_hyperlinks = true; // N/A for plugins, always enabled
|
||||
let explicitly_disable_kitty_keyboard_protocol = false; // N/A for plugins
|
||||
|
||||
$self.grids.entry($client_id).or_insert_with(|| {
|
||||
@@ -63,6 +64,7 @@ macro_rules! get_or_create_grid {
|
||||
$self.debug,
|
||||
$self.arrow_fonts,
|
||||
$self.styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
);
|
||||
grid.hide_cursor();
|
||||
|
||||
@@ -941,6 +941,7 @@ impl TerminalPane {
|
||||
debug: bool,
|
||||
arrow_fonts: bool,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
explicitly_disable_keyboard_protocol: bool,
|
||||
mut notification_end: Option<NotificationEnd>,
|
||||
) -> TerminalPane {
|
||||
@@ -958,6 +959,7 @@ impl TerminalPane {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_keyboard_protocol,
|
||||
);
|
||||
if let Some(notification_end) = notification_end.as_mut() {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -31,6 +31,7 @@ fn create_pane() -> TerminalPane {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -48,6 +49,7 @@ fn create_pane() -> TerminalPane {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
|
||||
@@ -39,6 +39,7 @@ pub fn scrolling_inside_a_pane() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -56,6 +57,7 @@ pub fn scrolling_inside_a_pane() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -90,6 +92,7 @@ pub fn sixel_image_inside_terminal_pane() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -107,6 +110,7 @@ pub fn sixel_image_inside_terminal_pane() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -141,6 +145,7 @@ pub fn partial_sixel_image_inside_terminal_pane() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -158,6 +163,7 @@ pub fn partial_sixel_image_inside_terminal_pane() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -186,6 +192,7 @@ pub fn overflowing_sixel_image_inside_terminal_pane() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -203,6 +210,7 @@ pub fn overflowing_sixel_image_inside_terminal_pane() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -230,6 +238,7 @@ pub fn scrolling_through_a_sixel_image() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -247,6 +256,7 @@ pub fn scrolling_through_a_sixel_image() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -285,6 +295,7 @@ pub fn multiple_sixel_images_in_pane() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -302,6 +313,7 @@ pub fn multiple_sixel_images_in_pane() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -338,6 +350,7 @@ pub fn resizing_pane_with_sixel_images() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -355,6 +368,7 @@ pub fn resizing_pane_with_sixel_images() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -394,6 +408,7 @@ pub fn changing_character_cell_size_with_sixel_images() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -411,6 +426,7 @@ pub fn changing_character_cell_size_with_sixel_images() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -455,6 +471,7 @@ pub fn keep_working_after_corrupted_sixel_image() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -472,6 +489,7 @@ pub fn keep_working_after_corrupted_sixel_image() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -514,6 +532,7 @@ pub fn pane_with_frame_position_is_on_frame() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -531,6 +550,7 @@ pub fn pane_with_frame_position_is_on_frame() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -609,6 +629,7 @@ pub fn pane_with_bottom_and_right_borders_position_is_on_frame() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -626,6 +647,7 @@ pub fn pane_with_bottom_and_right_borders_position_is_on_frame() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
@@ -704,6 +726,7 @@ pub fn frameless_pane_position_is_on_frame() {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut terminal_pane = TerminalPane::new(
|
||||
pid,
|
||||
@@ -721,6 +744,7 @@ pub fn frameless_pane_position_is_on_frame() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
); // 0 is the pane index
|
||||
|
||||
@@ -922,6 +922,7 @@ pub(crate) struct Screen {
|
||||
default_layout: Box<Layout>,
|
||||
default_shell: PathBuf,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
arrow_fonts: bool,
|
||||
layout_dir: Option<PathBuf>,
|
||||
default_layout_name: Option<String>,
|
||||
@@ -960,6 +961,7 @@ impl Screen {
|
||||
serialize_pane_viewport: bool,
|
||||
scrollback_lines_to_serialize: Option<usize>,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
arrow_fonts: bool,
|
||||
layout_dir: Option<PathBuf>,
|
||||
explicitly_disable_kitty_keyboard_protocol: bool,
|
||||
@@ -1009,6 +1011,7 @@ impl Screen {
|
||||
serialize_pane_viewport,
|
||||
scrollback_lines_to_serialize,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
arrow_fonts,
|
||||
resurrectable_sessions,
|
||||
layout_dir,
|
||||
@@ -1516,6 +1519,7 @@ impl Screen {
|
||||
self.sixel_image_store.clone(),
|
||||
self.character_cell_size.clone(),
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
);
|
||||
|
||||
let mut tabs_to_close = vec![];
|
||||
@@ -1561,6 +1565,7 @@ impl Screen {
|
||||
self.sixel_image_store.clone(),
|
||||
self.character_cell_size.clone(),
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
);
|
||||
|
||||
let focused_tab_index_of_followed_client_id = *self
|
||||
@@ -1749,6 +1754,7 @@ impl Screen {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
self.default_editor.clone(),
|
||||
self.web_clients_allowed,
|
||||
@@ -3713,6 +3719,7 @@ pub(crate) fn screen_thread_main(
|
||||
.unwrap_or_else(|| IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1)));
|
||||
let web_server_port = config_options.web_server_port.unwrap_or(8082);
|
||||
let styled_underlines = config_options.styled_underlines.unwrap_or(true);
|
||||
let osc8_hyperlinks = config_options.osc8_hyperlinks.unwrap_or(true);
|
||||
let explicitly_disable_kitty_keyboard_protocol = config_options
|
||||
.support_kitty_keyboard_protocol
|
||||
.map(|e| !e) // this is due to the config options wording, if
|
||||
@@ -3755,6 +3762,7 @@ pub(crate) fn screen_thread_main(
|
||||
serialize_pane_viewport,
|
||||
scrollback_lines_to_serialize,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
arrow_fonts,
|
||||
layout_dir,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
|
||||
@@ -41,6 +41,7 @@ pub struct LayoutApplier<'a> {
|
||||
debug: bool,
|
||||
arrow_fonts: bool,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
explicitly_disable_kitty_keyboard_protocol: bool,
|
||||
blocking_terminal: Option<(u32, NotificationEnd)>,
|
||||
}
|
||||
@@ -65,6 +66,7 @@ impl<'a> LayoutApplier<'a> {
|
||||
debug: bool,
|
||||
arrow_fonts: bool,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
explicitly_disable_kitty_keyboard_protocol: bool,
|
||||
blocking_terminal: Option<(u32, NotificationEnd)>,
|
||||
) -> Self {
|
||||
@@ -98,6 +100,7 @@ impl<'a> LayoutApplier<'a> {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
blocking_terminal,
|
||||
}
|
||||
@@ -637,6 +640,7 @@ impl<'a> LayoutApplier<'a> {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -706,6 +710,7 @@ impl<'a> LayoutApplier<'a> {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
notification_end,
|
||||
);
|
||||
|
||||
@@ -263,6 +263,7 @@ pub(crate) struct Tab {
|
||||
debug: bool,
|
||||
arrow_fonts: bool,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
explicitly_disable_kitty_keyboard_protocol: bool,
|
||||
web_clients_allowed: bool,
|
||||
web_sharing: WebSharing,
|
||||
@@ -684,6 +685,7 @@ impl Tab {
|
||||
debug: bool,
|
||||
arrow_fonts: bool,
|
||||
styled_underlines: bool,
|
||||
osc8_hyperlinks: bool,
|
||||
explicitly_disable_kitty_keyboard_protocol: bool,
|
||||
default_editor: Option<PathBuf>,
|
||||
web_clients_allowed: bool,
|
||||
@@ -785,6 +787,7 @@ impl Tab {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
default_editor,
|
||||
web_clients_allowed,
|
||||
@@ -830,6 +833,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
blocking_terminal,
|
||||
)
|
||||
@@ -907,6 +911,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
blocking_terminal,
|
||||
)
|
||||
@@ -999,6 +1004,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
)
|
||||
@@ -1038,6 +1044,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
)
|
||||
@@ -1513,6 +1520,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
blocking_notification,
|
||||
)) as Box<dyn Pane>
|
||||
@@ -1625,6 +1633,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
blocking_notification,
|
||||
)) as Box<dyn Pane>
|
||||
@@ -1726,6 +1735,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
blocking_notification,
|
||||
)) as Box<dyn Pane>
|
||||
@@ -1871,6 +1881,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
blocking_notification,
|
||||
)) as Box<dyn Pane>
|
||||
@@ -2085,6 +2096,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
completion_tx,
|
||||
);
|
||||
@@ -2283,6 +2295,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
completion_tx,
|
||||
);
|
||||
@@ -2349,6 +2362,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
completion_tx,
|
||||
);
|
||||
@@ -5909,6 +5923,7 @@ impl Tab {
|
||||
self.debug,
|
||||
self.arrow_fonts,
|
||||
self.styled_underlines,
|
||||
self.osc8_hyperlinks,
|
||||
self.explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
|
||||
@@ -158,6 +158,7 @@ fn create_layout_applier_fixtures(
|
||||
bool,
|
||||
bool,
|
||||
bool,
|
||||
bool,
|
||||
) {
|
||||
let viewport = Rc::new(RefCell::new(Viewport {
|
||||
x: 0,
|
||||
@@ -228,6 +229,7 @@ fn create_layout_applier_fixtures(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
|
||||
(
|
||||
@@ -249,6 +251,7 @@ fn create_layout_applier_fixtures(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
)
|
||||
}
|
||||
@@ -277,6 +280,7 @@ fn create_layout_applier_fixtures_with_receivers(
|
||||
bool,
|
||||
bool,
|
||||
bool,
|
||||
bool,
|
||||
Receiver<(PtyInstruction, zellij_utils::errors::ErrorContext)>,
|
||||
Receiver<(PluginInstruction, zellij_utils::errors::ErrorContext)>,
|
||||
) {
|
||||
@@ -355,6 +359,7 @@ fn create_layout_applier_fixtures_with_receivers(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
|
||||
(
|
||||
@@ -376,6 +381,7 @@ fn create_layout_applier_fixtures_with_receivers(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
mock_pty_receiver,
|
||||
mock_plugin_receiver,
|
||||
@@ -577,6 +583,7 @@ fn test_apply_empty_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -599,6 +606,7 @@ fn test_apply_empty_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None, // blocking_terminal
|
||||
);
|
||||
@@ -660,6 +668,7 @@ fn test_apply_simple_two_pane_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -682,6 +691,7 @@ fn test_apply_simple_two_pane_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -744,6 +754,7 @@ fn test_apply_three_pane_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -766,6 +777,7 @@ fn test_apply_three_pane_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -827,6 +839,7 @@ fn test_apply_horizontal_split_with_sizes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -849,6 +862,7 @@ fn test_apply_horizontal_split_with_sizes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -910,6 +924,7 @@ fn test_apply_vertical_split_with_sizes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -932,6 +947,7 @@ fn test_apply_vertical_split_with_sizes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -996,6 +1012,7 @@ fn test_apply_nested_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1018,6 +1035,7 @@ fn test_apply_nested_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1078,6 +1096,7 @@ fn test_apply_layout_with_focus() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1100,6 +1119,7 @@ fn test_apply_layout_with_focus() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1163,6 +1183,7 @@ fn test_apply_layout_with_commands() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1185,6 +1206,7 @@ fn test_apply_layout_with_commands() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1245,6 +1267,7 @@ fn test_apply_layout_with_named_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1267,6 +1290,7 @@ fn test_apply_layout_with_named_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1327,6 +1351,7 @@ fn test_apply_layout_with_borderless_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1349,6 +1374,7 @@ fn test_apply_layout_with_borderless_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1418,6 +1444,7 @@ fn test_apply_layout_with_floating_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1440,6 +1467,7 @@ fn test_apply_layout_with_floating_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1510,6 +1538,7 @@ fn test_apply_layout_with_floating_pane_with_command() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1532,6 +1561,7 @@ fn test_apply_layout_with_floating_pane_with_command() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1616,6 +1646,7 @@ fn test_apply_layout_with_mixed_tiled_and_floating_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1638,6 +1669,7 @@ fn test_apply_layout_with_mixed_tiled_and_floating_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1705,6 +1737,7 @@ fn test_reapply_layout_exact_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1727,6 +1760,7 @@ fn test_reapply_layout_exact_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1806,6 +1840,7 @@ fn test_reapply_layout_logical_position_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1828,6 +1863,7 @@ fn test_reapply_layout_logical_position_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -1908,6 +1944,7 @@ fn test_reapply_layout_with_more_positions() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -1930,6 +1967,7 @@ fn test_reapply_layout_with_more_positions() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2015,6 +2053,7 @@ fn test_reapply_floating_pane_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -2037,6 +2076,7 @@ fn test_reapply_floating_pane_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2126,6 +2166,7 @@ fn test_apply_complex_nested_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -2148,6 +2189,7 @@ fn test_apply_complex_nested_layout() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2213,6 +2255,7 @@ fn test_apply_layout_with_stacked_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -2235,6 +2278,7 @@ fn test_apply_layout_with_stacked_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2306,6 +2350,7 @@ fn test_apply_layout_with_multiple_stacks() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -2328,6 +2373,7 @@ fn test_apply_layout_with_multiple_stacks() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2406,6 +2452,7 @@ fn test_apply_layout_with_plugin_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -2428,6 +2475,7 @@ fn test_apply_layout_with_plugin_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2512,6 +2560,7 @@ fn test_apply_layout_with_mixed_plugin_and_terminal_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -2534,6 +2583,7 @@ fn test_apply_layout_with_mixed_plugin_and_terminal_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2601,6 +2651,7 @@ fn test_apply_layout_with_missing_plugin_ids() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -2623,6 +2674,7 @@ fn test_apply_layout_with_missing_plugin_ids() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2676,6 +2728,7 @@ fn test_apply_layout_with_excess_terminal_ids() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -2698,6 +2751,7 @@ fn test_apply_layout_with_excess_terminal_ids() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2771,6 +2825,7 @@ fn test_override_layout_basic_with_both_tiled_and_floating() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -2795,6 +2850,7 @@ fn test_override_layout_basic_with_both_tiled_and_floating() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -2913,6 +2969,7 @@ fn test_override_layout_hide_floating_panes_true() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -2937,6 +2994,7 @@ fn test_override_layout_hide_floating_panes_true() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -3043,6 +3101,7 @@ fn test_override_layout_show_floating_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -3067,6 +3126,7 @@ fn test_override_layout_show_floating_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -3179,6 +3239,7 @@ fn test_override_tiled_exact_match_preservation_commands() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -3203,6 +3264,7 @@ fn test_override_tiled_exact_match_preservation_commands() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -3304,6 +3366,7 @@ fn test_override_tiled_exact_match_preservation_plugins() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -3328,6 +3391,7 @@ fn test_override_tiled_exact_match_preservation_plugins() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -3427,6 +3491,7 @@ fn test_override_tiled_all_panes_closed_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -3451,6 +3516,7 @@ fn test_override_tiled_all_panes_closed_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -3555,6 +3621,7 @@ fn test_override_tiled_mixed_some_matches_some_new() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -3579,6 +3646,7 @@ fn test_override_tiled_mixed_some_matches_some_new() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -3674,6 +3742,7 @@ fn test_override_tiled_new_panes_for_unmatched_positions() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -3696,6 +3765,7 @@ fn test_override_tiled_new_panes_for_unmatched_positions() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -3783,6 +3853,7 @@ fn test_override_tiled_focus_on_new_pane() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -3805,6 +3876,7 @@ fn test_override_tiled_focus_on_new_pane() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -3892,6 +3964,7 @@ fn test_override_tiled_focus_when_focused_pane_closed() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -3916,6 +3989,7 @@ fn test_override_tiled_focus_when_focused_pane_closed() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -4016,6 +4090,7 @@ fn test_override_tiled_empty_layout_closes_all() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -4040,6 +4115,7 @@ fn test_override_tiled_empty_layout_closes_all() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -4153,6 +4229,7 @@ fn test_override_floating_exact_match_preservation() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -4177,6 +4254,7 @@ fn test_override_floating_exact_match_preservation() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -4294,6 +4372,7 @@ fn test_override_floating_all_closed_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -4318,6 +4397,7 @@ fn test_override_floating_all_closed_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -4437,6 +4517,7 @@ fn test_override_floating_new_panes_created() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -4459,6 +4540,7 @@ fn test_override_floating_new_panes_created() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -4579,6 +4661,7 @@ fn test_override_floating_focus_handling() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -4603,6 +4686,7 @@ fn test_override_floating_focus_handling() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -4712,6 +4796,7 @@ fn test_override_floating_position_and_size_update() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -4734,6 +4819,7 @@ fn test_override_floating_position_and_size_update() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -4823,6 +4909,7 @@ fn test_override_floating_return_value_has_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
) = create_layout_applier_fixtures(size);
|
||||
|
||||
@@ -4845,6 +4932,7 @@ fn test_override_floating_return_value_has_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -4944,6 +5032,7 @@ fn test_override_floating_return_value_no_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -4968,6 +5057,7 @@ fn test_override_floating_return_value_no_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -5083,6 +5173,7 @@ fn test_override_full_tiled_and_floating_together() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -5107,6 +5198,7 @@ fn test_override_full_tiled_and_floating_together() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -5227,6 +5319,7 @@ fn test_override_viewport_adjustment_with_borderless() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -5251,6 +5344,7 @@ fn test_override_viewport_adjustment_with_borderless() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -5349,6 +5443,7 @@ fn test_override_tiled_retain_terminal_panes_partial_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -5373,6 +5468,7 @@ fn test_override_tiled_retain_terminal_panes_partial_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -5480,6 +5576,7 @@ fn test_override_tiled_retain_terminal_panes_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -5504,6 +5601,7 @@ fn test_override_tiled_retain_terminal_panes_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -5626,6 +5724,7 @@ fn test_override_floating_retain_terminal_panes_partial_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -5650,6 +5749,7 @@ fn test_override_floating_retain_terminal_panes_partial_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -5782,6 +5882,7 @@ fn test_override_floating_retain_terminal_panes_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -5806,6 +5907,7 @@ fn test_override_floating_retain_terminal_panes_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -5944,6 +6046,7 @@ fn test_override_mixed_retain_terminal_panes_both_tiled_and_floating() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -5968,6 +6071,7 @@ fn test_override_mixed_retain_terminal_panes_both_tiled_and_floating() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -6103,6 +6207,7 @@ fn test_override_retain_terminal_but_close_plugin_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -6127,6 +6232,7 @@ fn test_override_retain_terminal_but_close_plugin_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -6259,6 +6365,7 @@ fn test_override_tiled_retain_plugin_panes_partial_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -6283,6 +6390,7 @@ fn test_override_tiled_retain_plugin_panes_partial_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -6396,6 +6504,7 @@ fn test_override_tiled_retain_plugin_panes_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -6420,6 +6529,7 @@ fn test_override_tiled_retain_plugin_panes_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -6548,6 +6658,7 @@ fn test_override_floating_retain_plugin_panes_partial_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -6572,6 +6683,7 @@ fn test_override_floating_retain_plugin_panes_partial_match() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -6695,6 +6807,7 @@ fn test_override_floating_retain_plugin_panes_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -6719,6 +6832,7 @@ fn test_override_floating_retain_plugin_panes_no_matches() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -6850,6 +6964,7 @@ fn test_override_mixed_retain_plugin_panes_both_tiled_and_floating() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -6874,6 +6989,7 @@ fn test_override_mixed_retain_plugin_panes_both_tiled_and_floating() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
@@ -7005,6 +7121,7 @@ fn test_override_retain_plugin_but_close_terminal_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
pty_receiver,
|
||||
plugin_receiver,
|
||||
@@ -7029,6 +7146,7 @@ fn test_override_retain_plugin_but_close_terminal_panes() {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
);
|
||||
|
||||
@@ -235,6 +235,7 @@ fn create_new_tab(size: Size, default_mode: ModeInfo) -> Tab {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -266,6 +267,7 @@ fn create_new_tab(size: Size, default_mode: ModeInfo) -> Tab {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
@@ -317,6 +319,7 @@ fn create_new_tab_without_pane_frames(size: Size, default_mode: ModeInfo) -> Tab
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -348,6 +351,7 @@ fn create_new_tab_without_pane_frames(size: Size, default_mode: ModeInfo) -> Tab
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
@@ -414,6 +418,7 @@ fn create_new_tab_with_swap_layouts(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -445,6 +450,7 @@ fn create_new_tab_with_swap_layouts(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
@@ -512,6 +518,7 @@ fn create_new_tab_with_os_api(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -543,6 +550,7 @@ fn create_new_tab_with_os_api(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
@@ -596,6 +604,7 @@ fn create_new_tab_with_layout(size: Size, default_mode: ModeInfo, layout: &str)
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -627,6 +636,7 @@ fn create_new_tab_with_layout(size: Size, default_mode: ModeInfo, layout: &str)
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
@@ -694,6 +704,7 @@ fn create_new_tab_with_mock_pty_writer(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -725,6 +736,7 @@ fn create_new_tab_with_mock_pty_writer(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
@@ -783,6 +795,7 @@ fn create_new_tab_with_sixel_support(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -814,6 +827,7 @@ fn create_new_tab_with_sixel_support(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
@@ -862,6 +876,7 @@ fn take_snapshot(ansi_instructions: &str, rows: usize, columns: usize, palette:
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut grid = Grid::new(
|
||||
rows,
|
||||
@@ -875,6 +890,7 @@ fn take_snapshot(ansi_instructions: &str, rows: usize, columns: usize, palette:
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
);
|
||||
let mut vte_parser = vte::Parser::new();
|
||||
@@ -899,6 +915,7 @@ fn take_snapshot_with_sixel(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut grid = Grid::new(
|
||||
rows,
|
||||
@@ -912,6 +929,7 @@ fn take_snapshot_with_sixel(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
);
|
||||
let mut vte_parser = vte::Parser::new();
|
||||
@@ -933,6 +951,7 @@ fn take_snapshot_and_cursor_position(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut grid = Grid::new(
|
||||
rows,
|
||||
@@ -946,6 +965,7 @@ fn take_snapshot_and_cursor_position(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
);
|
||||
let mut vte_parser = vte::Parser::new();
|
||||
@@ -3358,7 +3378,7 @@ fn move_floating_pane_with_sixel_image() {
|
||||
width: 8,
|
||||
height: 21,
|
||||
})));
|
||||
let mut output = Output::new(sixel_image_store.clone(), character_cell_size, true);
|
||||
let mut output = Output::new(sixel_image_store.clone(), character_cell_size, true, true);
|
||||
|
||||
tab.toggle_floating_panes(Some(client_id), None, None)
|
||||
.unwrap();
|
||||
@@ -3412,7 +3432,7 @@ fn floating_pane_above_sixel_image() {
|
||||
width: 8,
|
||||
height: 21,
|
||||
})));
|
||||
let mut output = Output::new(sixel_image_store.clone(), character_cell_size, true);
|
||||
let mut output = Output::new(sixel_image_store.clone(), character_cell_size, true, true);
|
||||
|
||||
tab.toggle_floating_panes(Some(client_id), None, None)
|
||||
.unwrap();
|
||||
|
||||
@@ -175,6 +175,7 @@ fn create_new_tab(size: Size, stacked_resize: bool) -> Tab {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -206,6 +207,7 @@ fn create_new_tab(size: Size, stacked_resize: bool) -> Tab {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
@@ -256,6 +258,7 @@ fn create_new_tab_with_layout(size: Size, layout: TiledPaneLayout) -> Tab {
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -287,6 +290,7 @@ fn create_new_tab_with_layout(size: Size, layout: TiledPaneLayout) -> Tab {
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
@@ -343,6 +347,7 @@ fn create_new_tab_with_cell_size(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let advanced_mouse_actions = true;
|
||||
let web_sharing = WebSharing::Off;
|
||||
@@ -374,6 +379,7 @@ fn create_new_tab_with_cell_size(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
None,
|
||||
false,
|
||||
|
||||
@@ -79,6 +79,7 @@ fn take_snapshots_and_cursor_coordinates_from_render_events<'a>(
|
||||
let debug = false;
|
||||
let arrow_fonts = true;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let mut grid = Grid::new(
|
||||
screen_size.rows,
|
||||
@@ -92,6 +93,7 @@ fn take_snapshots_and_cursor_coordinates_from_render_events<'a>(
|
||||
debug,
|
||||
arrow_fonts,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
);
|
||||
let snapshots: Vec<(Option<(usize, usize)>, String)> = all_events
|
||||
@@ -279,6 +281,7 @@ fn create_new_screen(size: Size, advanced_mouse_actions: bool) -> Screen {
|
||||
|
||||
let debug = false;
|
||||
let styled_underlines = true;
|
||||
let osc8_hyperlinks = true;
|
||||
let arrow_fonts = true;
|
||||
let explicitly_disable_kitty_keyboard_protocol = false;
|
||||
let stacked_resize = true;
|
||||
@@ -302,6 +305,7 @@ fn create_new_screen(size: Size, advanced_mouse_actions: bool) -> Screen {
|
||||
serialize_pane_viewport,
|
||||
scrollback_lines_to_serialize,
|
||||
styled_underlines,
|
||||
osc8_hyperlinks,
|
||||
arrow_fonts,
|
||||
layout_dir,
|
||||
explicitly_disable_kitty_keyboard_protocol,
|
||||
|
||||
@@ -520,6 +520,11 @@ load_plugins {
|
||||
//
|
||||
// advanced_mouse_actions false
|
||||
|
||||
// Whether to output OSC8 hyperlink sequences
|
||||
// Default: true
|
||||
//
|
||||
// osc8_hyperlinks false
|
||||
|
||||
// A command to run (will be wrapped with sh -c and provided the RESURRECT_COMMAND env variable)
|
||||
// after Zellij attempts to discover a command inside a pane when resurrecting sessions, the STDOUT
|
||||
// of this command will be used instead of the discovered RESURRECT_COMMAND
|
||||
|
||||
@@ -1661,6 +1661,8 @@ pub struct Options {
|
||||
pub enforce_https_for_localhost: ::core::option::Option<bool>,
|
||||
#[prost(string, optional, tag="39")]
|
||||
pub post_command_discovery_hook: ::core::option::Option<::prost::alloc::string::String>,
|
||||
#[prost(bool, optional, tag="40")]
|
||||
pub osc8_hyperlinks: ::core::option::Option<bool>,
|
||||
}
|
||||
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
|
||||
#[repr(i32)]
|
||||
|
||||
@@ -1023,6 +1023,7 @@ message Options {
|
||||
optional string web_server_key = 37;
|
||||
optional bool enforce_https_for_localhost = 38;
|
||||
optional string post_command_discovery_hook = 39;
|
||||
optional bool osc8_hyperlinks = 40;
|
||||
}
|
||||
|
||||
enum OnForceClose {
|
||||
|
||||
@@ -108,6 +108,11 @@ pub struct Options {
|
||||
#[serde(default)]
|
||||
pub copy_on_select: Option<bool>,
|
||||
|
||||
/// Enable OSC8 hyperlink output (true or false)
|
||||
#[clap(long, value_parser)]
|
||||
#[serde(default)]
|
||||
pub osc8_hyperlinks: Option<bool>,
|
||||
|
||||
/// Explicit full path to open the scrollback editor (default is $EDITOR or $VISUAL)
|
||||
#[clap(long, value_parser)]
|
||||
pub scrollback_editor: Option<PathBuf>,
|
||||
@@ -287,6 +292,7 @@ impl Options {
|
||||
let copy_command = other.copy_command.or_else(|| self.copy_command.clone());
|
||||
let copy_clipboard = other.copy_clipboard.or(self.copy_clipboard);
|
||||
let copy_on_select = other.copy_on_select.or(self.copy_on_select);
|
||||
let osc8_hyperlinks = other.osc8_hyperlinks.or(self.osc8_hyperlinks);
|
||||
let scrollback_editor = other
|
||||
.scrollback_editor
|
||||
.or_else(|| self.scrollback_editor.clone());
|
||||
@@ -345,6 +351,7 @@ impl Options {
|
||||
copy_command,
|
||||
copy_clipboard,
|
||||
copy_on_select,
|
||||
osc8_hyperlinks,
|
||||
scrollback_editor,
|
||||
session_name,
|
||||
attach_to_session,
|
||||
@@ -408,6 +415,7 @@ impl Options {
|
||||
let copy_command = other.copy_command.or_else(|| self.copy_command.clone());
|
||||
let copy_clipboard = other.copy_clipboard.or(self.copy_clipboard);
|
||||
let copy_on_select = other.copy_on_select.or(self.copy_on_select);
|
||||
let osc8_hyperlinks = other.osc8_hyperlinks.or(self.osc8_hyperlinks);
|
||||
let scrollback_editor = other
|
||||
.scrollback_editor
|
||||
.or_else(|| self.scrollback_editor.clone());
|
||||
@@ -462,6 +470,7 @@ impl Options {
|
||||
copy_command,
|
||||
copy_clipboard,
|
||||
copy_on_select,
|
||||
osc8_hyperlinks,
|
||||
scrollback_editor,
|
||||
session_name,
|
||||
attach_to_session,
|
||||
|
||||
@@ -579,6 +579,7 @@ impl From<crate::input::options::Options>
|
||||
crate::input::options::Clipboard::Primary => ProtoClipboard::Primary as i32,
|
||||
}),
|
||||
copy_on_select: options.copy_on_select,
|
||||
osc8_hyperlinks: options.osc8_hyperlinks,
|
||||
scrollback_editor: options
|
||||
.scrollback_editor
|
||||
.map(|p| p.to_string_lossy().to_string()),
|
||||
@@ -664,6 +665,7 @@ impl TryFrom<crate::client_server_contract::client_server_contract::Options>
|
||||
})
|
||||
.transpose()?,
|
||||
copy_on_select: options.copy_on_select,
|
||||
osc8_hyperlinks: options.osc8_hyperlinks,
|
||||
scrollback_editor: options.scrollback_editor.map(std::path::PathBuf::from),
|
||||
session_name: options.session_name,
|
||||
attach_to_session: options.attach_to_session,
|
||||
|
||||
@@ -447,6 +447,7 @@ fn test_client_messages() {
|
||||
copy_command: Some("copy_command".to_owned()),
|
||||
copy_clipboard: Some(Clipboard::System),
|
||||
copy_on_select: Some(true),
|
||||
osc8_hyperlinks: Some(true),
|
||||
scrollback_editor: Some(PathBuf::from("scrollback_editor")),
|
||||
session_name: Some("session_name".to_owned()),
|
||||
attach_to_session: Some(true),
|
||||
|
||||
@@ -2616,6 +2616,9 @@ impl Options {
|
||||
};
|
||||
let copy_on_select =
|
||||
kdl_property_first_arg_as_bool_or_error!(kdl_options, "copy_on_select").map(|(v, _)| v);
|
||||
let osc8_hyperlinks =
|
||||
kdl_property_first_arg_as_bool_or_error!(kdl_options, "osc8_hyperlinks")
|
||||
.map(|(v, _)| v);
|
||||
let scrollback_editor =
|
||||
kdl_property_first_arg_as_string_or_error!(kdl_options, "scrollback_editor")
|
||||
.map(|(string, _entry)| PathBuf::from(string));
|
||||
@@ -2715,6 +2718,7 @@ impl Options {
|
||||
copy_command,
|
||||
copy_clipboard,
|
||||
copy_on_select,
|
||||
osc8_hyperlinks,
|
||||
scrollback_editor,
|
||||
session_name,
|
||||
attach_to_session,
|
||||
@@ -2774,6 +2778,36 @@ impl Options {
|
||||
None
|
||||
}
|
||||
}
|
||||
fn osc8_hyperlinks_to_kdl(&self, add_comments: bool) -> Option<KdlNode> {
|
||||
let comment_text = format!(
|
||||
"{}\n{}\n{}\n{}\n{}\n{}",
|
||||
" ",
|
||||
"// Enable OSC8 hyperlink output",
|
||||
"// Options:",
|
||||
"// - true (Default)",
|
||||
"// - false",
|
||||
"// ",
|
||||
);
|
||||
|
||||
let create_node = |node_value: bool| -> KdlNode {
|
||||
let mut node = KdlNode::new("osc8_hyperlinks");
|
||||
node.push(KdlValue::Bool(node_value));
|
||||
node
|
||||
};
|
||||
if let Some(osc8_hyperlinks) = self.osc8_hyperlinks {
|
||||
let mut node = create_node(osc8_hyperlinks);
|
||||
if add_comments {
|
||||
node.set_leading(format!("{}\n", comment_text));
|
||||
}
|
||||
Some(node)
|
||||
} else if add_comments {
|
||||
let mut node = create_node(true);
|
||||
node.set_leading(format!("{}\n// ", comment_text));
|
||||
Some(node)
|
||||
} else {
|
||||
None
|
||||
}
|
||||
}
|
||||
fn theme_to_kdl(&self, add_comments: bool) -> Option<KdlNode> {
|
||||
let comment_text = format!(
|
||||
"{}\n{}\n{}\n{}",
|
||||
@@ -3896,6 +3930,9 @@ impl Options {
|
||||
if let Some(simplified_ui_node) = self.simplified_ui_to_kdl(add_comments) {
|
||||
nodes.push(simplified_ui_node);
|
||||
}
|
||||
if let Some(osc8_hyperlinks_node) = self.osc8_hyperlinks_to_kdl(add_comments) {
|
||||
nodes.push(osc8_hyperlinks_node);
|
||||
}
|
||||
if let Some(theme_node) = self.theme_to_kdl(add_comments) {
|
||||
nodes.push(theme_node);
|
||||
}
|
||||
@@ -6822,3 +6859,23 @@ fn bare_config_from_default_assets_to_string_with_comments() {
|
||||
);
|
||||
insta::assert_snapshot!(fake_config_stringified);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn osc8_hyperlinks_config_parsing() {
|
||||
let config_with_osc8_disabled = r#"
|
||||
osc8_hyperlinks false
|
||||
"#;
|
||||
let config = Config::from_kdl(config_with_osc8_disabled, None).unwrap();
|
||||
assert_eq!(config.options.osc8_hyperlinks, Some(false));
|
||||
|
||||
let config_with_osc8_enabled = r#"
|
||||
osc8_hyperlinks true
|
||||
"#;
|
||||
let config = Config::from_kdl(config_with_osc8_enabled, None).unwrap();
|
||||
assert_eq!(config.options.osc8_hyperlinks, Some(true));
|
||||
|
||||
// Test serialization roundtrip
|
||||
let serialized = config.to_string(false);
|
||||
let deserialized = Config::from_kdl(&serialized, None).unwrap();
|
||||
assert_eq!(deserialized.options.osc8_hyperlinks, Some(true));
|
||||
}
|
||||
|
||||
+7
@@ -297,6 +297,13 @@ web_client {
|
||||
//
|
||||
// simplified_ui true
|
||||
|
||||
// Enable OSC8 hyperlink output
|
||||
// Options:
|
||||
// - true (Default)
|
||||
// - false
|
||||
//
|
||||
// osc8_hyperlinks true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
|
||||
+7
@@ -10,6 +10,13 @@ expression: fake_document.to_string()
|
||||
//
|
||||
simplified_ui true
|
||||
|
||||
// Enable OSC8 hyperlink output
|
||||
// Options:
|
||||
// - true (Default)
|
||||
// - false
|
||||
//
|
||||
// osc8_hyperlinks true
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
|
||||
+1
@@ -21,6 +21,7 @@ Options {
|
||||
copy_command: None,
|
||||
copy_clipboard: None,
|
||||
copy_on_select: None,
|
||||
osc8_hyperlinks: None,
|
||||
scrollback_editor: None,
|
||||
session_name: None,
|
||||
attach_to_session: None,
|
||||
|
||||
+1
@@ -21,6 +21,7 @@ Options {
|
||||
copy_command: None,
|
||||
copy_clipboard: None,
|
||||
copy_on_select: None,
|
||||
osc8_hyperlinks: None,
|
||||
scrollback_editor: None,
|
||||
session_name: None,
|
||||
attach_to_session: None,
|
||||
|
||||
+1
@@ -19,6 +19,7 @@ Options {
|
||||
copy_command: None,
|
||||
copy_clipboard: None,
|
||||
copy_on_select: None,
|
||||
osc8_hyperlinks: None,
|
||||
scrollback_editor: None,
|
||||
session_name: None,
|
||||
attach_to_session: None,
|
||||
|
||||
+1
@@ -6012,6 +6012,7 @@ Config {
|
||||
copy_command: None,
|
||||
copy_clipboard: None,
|
||||
copy_on_select: None,
|
||||
osc8_hyperlinks: None,
|
||||
scrollback_editor: None,
|
||||
session_name: None,
|
||||
attach_to_session: None,
|
||||
|
||||
+1
@@ -6012,6 +6012,7 @@ Config {
|
||||
copy_command: None,
|
||||
copy_clipboard: None,
|
||||
copy_on_select: None,
|
||||
osc8_hyperlinks: None,
|
||||
scrollback_editor: None,
|
||||
session_name: None,
|
||||
attach_to_session: None,
|
||||
|
||||
+1
@@ -106,6 +106,7 @@ Config {
|
||||
copy_command: None,
|
||||
copy_clipboard: None,
|
||||
copy_on_select: None,
|
||||
osc8_hyperlinks: None,
|
||||
scrollback_editor: None,
|
||||
session_name: None,
|
||||
attach_to_session: None,
|
||||
|
||||
+1
@@ -21,6 +21,7 @@ Options {
|
||||
copy_command: None,
|
||||
copy_clipboard: None,
|
||||
copy_on_select: None,
|
||||
osc8_hyperlinks: None,
|
||||
scrollback_editor: None,
|
||||
session_name: None,
|
||||
attach_to_session: None,
|
||||
|
||||
+1
@@ -6012,6 +6012,7 @@ Config {
|
||||
copy_command: None,
|
||||
copy_clipboard: None,
|
||||
copy_on_select: None,
|
||||
osc8_hyperlinks: None,
|
||||
scrollback_editor: None,
|
||||
session_name: None,
|
||||
attach_to_session: None,
|
||||
|
||||
+1
@@ -6012,6 +6012,7 @@ Config {
|
||||
copy_command: None,
|
||||
copy_clipboard: None,
|
||||
copy_on_select: None,
|
||||
osc8_hyperlinks: None,
|
||||
scrollback_editor: None,
|
||||
session_name: None,
|
||||
attach_to_session: None,
|
||||
|
||||
Reference in New Issue
Block a user