use super::VariableOutput;
#[cfg(feature = "tmux_2_5")]
use crate::SessionStack;
#[cfg(feature = "tmux_1_6")]
use crate::{Layout, PaneTabs, WindowFlags};
#[derive(Debug)]
pub struct FormatsOutput<'a> {
pub separator: char,
pub variables: Vec<VariableOutput<'a>>,
}
impl<'a> Default for FormatsOutput<'a> {
fn default() -> Self {
FormatsOutput {
separator: '\'',
variables: Vec::new(),
}
}
}
impl<'a> FormatsOutput<'a> {
pub fn new() -> Self {
Default::default()
}
pub fn separator(&mut self, c: char) -> &mut Self {
self.separator = c;
self
}
pub fn push(&mut self, variable: VariableOutput<'a>) {
self.variables.push(variable)
}
pub fn from_string_ext(s: &str, format: &'a mut FormatsOutput<'a>) {
let v: Vec<&str> = s.split(format.separator).collect();
for (i, variable) in v.iter().enumerate() {
VariableOutput::from_string_ext(variable, &mut format.variables[i]);
}
}
#[cfg(feature = "tmux_1_8")]
pub fn alternate_on(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::AlternateOn(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn alternate_saved_x(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::AlternateSavedX(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn alternate_saved_y(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::AlternateSavedY(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn buffer_created(&mut self, v: &'a mut Option<u128>) -> &mut Self {
self.push(VariableOutput::BufferCreated(v));
self
}
#[cfg(feature = "tmux_2_3")]
pub fn buffer_name(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::BufferName(v));
self
}
#[cfg(feature = "tmux_1_7")]
pub fn buffer_sample(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::BufferSample(v));
self
}
#[cfg(feature = "tmux_1_7")]
pub fn buffer_size(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::BufferSize(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn client_activity(&mut self, v: &'a mut Option<u128>) -> &mut Self {
self.push(VariableOutput::ClientActivity(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn client_cell_height(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::ClientCellHeight(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn client_cell_width(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::ClientCellWidth(v));
self
}
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_2_2")))]
pub fn client_activity_string(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientActivityString(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn client_created(&mut self, v: &'a mut Option<u128>) -> &mut Self {
self.push(VariableOutput::ClientCreated(v));
self
}
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_2_2")))]
pub fn client_created_string(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientCreatedString(v));
self
}
#[cfg(feature = "tmux_2_1")]
pub fn client_control_mode(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::ClientControlMode(v));
self
}
#[cfg(feature = "tmux_2_1")]
pub fn client_discarded(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientDiscarded(v));
self
}
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_1_9")))]
pub fn client_cwd(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientCwd(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn client_height(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::ClientHeight(v));
self
}
#[cfg(feature = "tmux_2_2")]
pub fn client_key_table(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientKeyTable(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn client_last_session(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientLastSession(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn client_name(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientName(v));
self
}
#[cfg(feature = "tmux_2_1")]
pub fn client_pid(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::ClientPid(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn client_prefix(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::ClientPrefix(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn client_readonly(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::ClientReadonly(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn client_session(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientSession(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn client_termname(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientTermname(v));
self
}
#[cfg(all(feature = "tmux_2_4", not(feature = "tmux_3_1")))]
pub fn client_termtype(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientTermtype(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn client_tty(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::ClientTty(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn client_utf8(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::ClientUtf8(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn client_width(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::ClientWidth(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn client_written(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::ClientWritten(v));
self
}
#[cfg(feature = "tmux_2_3")]
pub fn command_hooked(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CommandHooked(v));
self
}
#[cfg(all(feature = "tmux_2_2", not(feature = "tmux_2_4")))]
pub fn command_name(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CommandName(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn command(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::Command(v));
self
}
#[cfg(feature = "tmux_2_3")]
pub fn command_list_name(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CommandListName(v));
self
}
#[cfg(feature = "tmux_2_3")]
pub fn command_list_alias(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CommandListAlias(v));
self
}
#[cfg(feature = "tmux_2_3")]
pub fn command_list_usage(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CommandListUsage(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn cursor_flag(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CursorFlag(v));
self
}
#[cfg(feature = "tmux_2_9")]
pub fn cursor_character(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CursorCharacter(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn cursor_x(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::CursorX(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn cursor_y(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::CursorY(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn copy_cursor_line(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CopyCursorLine(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn copy_cursor_word(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CopyCursorWord(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn copy_cursor_x(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::CopyCursorX(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn copy_cursor_y(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::CopyCursorY(v));
self
}
#[cfg(feature = "tmux_3_2")]
pub fn current_file(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::CurrentFile(v));
self
}
#[cfg(feature = "tmux_1_7")]
pub fn histoty_bytes(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::HistotyBytes(v));
self
}
#[cfg(feature = "tmux_1_7")]
pub fn history_limit(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::HistotyLimit(v));
self
}
#[cfg(feature = "tmux_1_7")]
pub fn history_size(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::HistorySize(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn hook(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::Hook(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn hook_pane(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::HookPane(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn hook_session(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::HookSession(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn hook_session_name(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::HookSessionName(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn hook_window(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::HookWindow(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn hook_window_name(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::HookWindowName(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn host(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::Host(v));
self
}
#[cfg(feature = "tmux_1_9")]
pub fn host_short(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::HostShort(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn insert_flag(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::InsertFlag(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn keypad_cursor_flag(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::KeypadCursorFlag(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn keypad_flag(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::KeypadFlag(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn line(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::Line(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn mouse_any_flag(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::MouseAnyFlag(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn mouse_button_flag(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::MouseButtonFlag(v));
self
}
#[cfg(feature = "tmux_3_0")]
pub fn mouse_line(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::MouseLine(v));
self
}
#[cfg(feature = "tmux_3_0")]
pub fn sgr_line(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::MouseSgrFlag(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn mouse_standard_flag(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::MouseStandardFlag(v));
self
}
#[cfg(feature = "tmux_3_4")]
pub fn mouse_status_line(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::MouseStatusLine(v));
self
}
#[cfg(feature = "tmux_3_4")]
pub fn mouse_status_range(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::MouseStatusRange(v));
self
}
#[cfg(all(feature = "tmux_1_8", not(feature = "tmux_2_2"), feature = "tmux_3_0"))]
pub fn mouse_utf8_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::MouseUtf8Flag(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn mouse_all_flag(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::MouseAllFlag(v));
self
}
#[cfg(feature = "tmux_3_0")]
pub fn mouse_word(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::MouseWord(v));
self
}
#[cfg(feature = "tmux_3_0")]
pub fn mouse_x(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::MouseX(v));
self
}
#[cfg(feature = "tmux_3_0")]
pub fn mouse_y(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::MouseY(v));
self
}
#[cfg(feature = "tmux_3_0")]
pub fn origin_flag(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::OriginFlag(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn pane_active(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneActive(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn pane_at_bottom(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneAtBottom(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn pane_at_left(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneAtLeft(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn pane_at_right(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneAtRight(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn pane_at_top(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneAtTop(v));
self
}
#[cfg(feature = "tmux_2_0")]
pub fn pane_bottom(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneBottom(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn pane_current_command(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::PaneCurrentCommand(v));
self
}
#[cfg(feature = "tmux_1_7")]
pub fn pane_current_path(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::PaneCurrentPath(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn pane_dead(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneDead(v));
self
}
#[cfg(feature = "tmux_2_0")]
pub fn pane_dead_status(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneDeadStatus(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn pane_format(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneFormat(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn pane_height(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneHeight(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn pane_id(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneId(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn pane_in_mode(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneInMode(v));
self
}
#[cfg(feature = "tmux_1_7")]
pub fn pane_index(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneIndex(v));
self
}
#[cfg(feature = "tmux_2_0")]
pub fn pane_input_off(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneInputOff(v));
self
}
#[cfg(feature = "tmux_2_0")]
pub fn pane_left(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneLeft(v));
self
}
#[cfg(feature = "tmux_3_0")]
pub fn pane_marked(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneMarked(v));
self
}
#[cfg(feature = "tmux_3_0")]
pub fn pane_marked_set(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneMarkedSet(v));
self
}
#[cfg(feature = "tmux_2_5")]
pub fn pane_mode(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneMode(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn pane_path(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::PanePath(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn pane_pid(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PanePid(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn pane_pipe(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PanePipe(v));
self
}
#[cfg(feature = "tmux_2_0")]
pub fn pane_right(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneRight(v));
self
}
#[cfg(feature = "tmux_2_5")]
pub fn pane_search_string(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneSearchString(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn pane_start_command(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneStartCommand(v));
self
}
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_2_0")))]
pub fn pane_start_path(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneStartPath(v));
self
}
#[cfg(feature = "tmux_1_9")]
pub fn pane_synchronized(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneSynchronized(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn pane_tabs(&mut self, v: &'a mut Option<PaneTabs>) -> &mut Self {
self.push(VariableOutput::PaneTabs(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn pane_title(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::PaneTitle(v));
self
}
#[cfg(feature = "tmux_2_0")]
pub fn pane_top(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneTop(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn pane_tty(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::PaneTty(v));
self
}
#[cfg(feature = "tmux_3_4")]
pub fn pane_unseen_changes(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::PaneUnseenChanges(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn pane_width(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::PaneWidth(v));
self
}
#[cfg(any(feature = "tmux_1_8", not(feature = "tmux_2_1")))]
pub fn saved_cursor_x(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SavedCursorX(v));
self
}
#[cfg(any(feature = "tmux_1_8", not(feature = "tmux_2_1")))]
pub fn saved_cursor_y(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SavedCursorY(v));
self
}
#[cfg(feature = "tmux_2_1")]
pub fn pid(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::Pid(v));
self
}
#[cfg(feature = "tmux_2_7")]
pub fn rectangle_toggle(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::RectangleToggle(v));
self
}
#[cfg(feature = "tmux_2_2")]
pub fn scroll_position(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::ScrollPosition(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn scroll_region_lower(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::ScrollRegionLower(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn scroll_region_upper(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::ScrollRegionUpper(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn selection_active(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::SelectionActive(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn selection_end_x(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SelectionEndX(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn selection_end_y(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SelectionEndY(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn selection_present(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::SelectionPresent(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn selection_start_x(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SelectionStartX(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn selection_start_y(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SelectionStartY(v));
self
}
#[cfg(feature = "tmux_2_1")]
pub fn session_activity(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionActivity(v));
self
}
#[cfg(all(feature = "tmux_2_1", not(feature = "tmux_2_2")))]
pub fn session_activity_string(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SessionActivityString(v));
self
}
#[cfg(feature = "tmux_2_1")]
pub fn session_alerts(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SessionAlerts(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn session_attached(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionAttached(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn session_attached_list(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionAttachedList(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn session_created(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionCreated(v));
self
}
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_2_2")))]
pub fn session_created_string(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SessionCreatedString(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn session_format(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::SessionFormat(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn session_group(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SessionGroup(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn session_group_attached(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionGroupAttached(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn session_group_attached_list(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SessionGroupAttachedList(v));
self
}
#[cfg(feature = "tmux_2_7")]
pub fn session_group_list(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SessionGroupList(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn session_group_many_attached(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::SessionGroupManyAttached(v));
self
}
#[cfg(feature = "tmux_2_7")]
pub fn session_group_size(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SessionGroupSize(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn session_grouped(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::SessionGrouped(v));
self
}
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_2_9")))]
pub fn session_height(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionHeight(v));
self
}
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_2_9")))]
pub fn session_width(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionWidth(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn session_id(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionId(v));
self
}
#[cfg(feature = "tmux_2_1")]
pub fn session_last_attached(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionLastAttached(v));
self
}
#[cfg(all(feature = "tmux_2_1", not(feature = "tmux_2_2")))]
pub fn session_last_attached_string(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SessionLastAttachedString(v));
self
}
#[cfg(feature = "tmux_2_0")]
pub fn session_many_attached(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::SessionManyAttached(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn session_name(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SessionName(v));
self
}
#[cfg(feature = "tmux_2_5")]
pub fn session_stack(&mut self, v: &'a mut Option<SessionStack>) -> &mut Self {
self.push(VariableOutput::SessionStack(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn session_windows(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::SessionWindows(v));
self
}
#[cfg(feature = "tmux_2_2")]
pub fn socket_path(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::SocketPath(v));
self
}
#[cfg(feature = "tmux_2_2")]
pub fn start_time(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::StartTime(v));
self
}
#[cfg(feature = "tmux_2_4")]
pub fn version(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::Version(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn window_active(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowActive(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn window_active_clients(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowActiveClients(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn window_active_clients_list(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::WindowActiveClientsList(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn window_active_sessions(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowActiveSessions(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn window_active_sessions_list(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::WindowActiveSessionsList(v));
self
}
#[cfg(feature = "tmux_2_1")]
pub fn window_activity(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowActivity(v));
self
}
#[cfg(all(feature = "tmux_2_1", not(feature = "tmux_2_2")))]
pub fn window_activity_string(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::WindowActivityString(v));
self
}
#[cfg(any(
all(feature = "tmux_1_9", not(feature = "tmux_2_2")),
feature = "tmux_2_3"
))]
pub fn window_activity_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowActivityFlag(v));
self
}
#[cfg(feature = "tmux_1_9")]
pub fn window_bell_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowBellFlag(v));
self
}
#[cfg(all(feature = "tmux_1_9", not(feature = "tmux_2_0")))]
pub fn window_content_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowContentFlag(v));
self
}
#[cfg(feature = "tmux_2_9")]
pub fn window_bigger(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowBigger(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn window_cell_height(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowCellHeight(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn window_cell_width(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowCellWidth(v));
self
}
#[cfg(feature = "tmux_2_9")]
pub fn window_end_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowEndFlag(v));
self
}
#[cfg(all(feature = "tmux_1_7", not(feature = "tmux_2_6")))]
pub fn window_find_matches(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::WindowFindMatches(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn window_flags(&mut self, v: &'a mut Option<WindowFlags>) -> &mut Self {
self.push(VariableOutput::WindowFlags(v));
self
}
#[cfg(feature = "tmux_3_2")]
pub fn window_raw_flags(&mut self, v: &'a mut Option<WindowFlags>) -> &mut Self {
self.push(VariableOutput::WindowRawFlags(v));
self
}
#[cfg(feature = "tmux_2_6")]
pub fn window_format(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowFormat(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn window_height(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowHeight(v));
self
}
#[cfg(feature = "tmux_1_7")]
pub fn window_id(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowId(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn window_index(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowIndex(v));
self
}
#[cfg(feature = "tmux_2_0")]
pub fn window_last_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowLastFlag(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn window_layout(&mut self, v: &'a mut Option<Layout>) -> &mut Self {
self.push(VariableOutput::WindowLayout(v));
self
}
#[cfg(feature = "tmux_2_1")]
pub fn window_linked(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowLinked(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn window_linked_sessions(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowLinkedSessions(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn window_linked_sessions_list(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::WindowLinkedSessionsList(v));
self
}
#[cfg(feature = "tmux_3_1")]
pub fn window_marked_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowMarkedFlag(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn window_name(&mut self, v: &'a mut Option<String>) -> &mut Self {
self.push(VariableOutput::WindowName(v));
self
}
#[cfg(feature = "tmux_2_9")]
pub fn window_offset_x(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowOffsetX(v));
self
}
#[cfg(feature = "tmux_2_9")]
pub fn window_offset_y(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowOffsetY(v));
self
}
#[cfg(feature = "tmux_1_7")]
pub fn window_panes(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowPanes(v));
self
}
#[cfg(feature = "tmux_1_9")]
pub fn window_silence_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowSilenceFlag(v));
self
}
#[cfg(feature = "tmux_2_5")]
pub fn window_stack_index(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowStackIndex(v));
self
}
#[cfg(feature = "tmux_2_9")]
pub fn window_start_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowStartFlag(v));
self
}
#[cfg(feature = "tmux_2_2")]
pub fn window_visible_layout(&mut self, v: &'a mut Option<Layout>) -> &mut Self {
self.push(VariableOutput::WindowVisibleLayout(v));
self
}
#[cfg(feature = "tmux_1_6")]
pub fn window_width(&mut self, v: &'a mut Option<usize>) -> &mut Self {
self.push(VariableOutput::WindowWidth(v));
self
}
#[cfg(feature = "tmux_2_0")]
pub fn window_zoomed_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WindowZoomedFlag(v));
self
}
#[cfg(feature = "tmux_1_8")]
pub fn wrap_flag(&mut self, v: &'a mut Option<bool>) -> &mut Self {
self.push(VariableOutput::WrapFlag(v));
self
}
}