Query fields
LibTmux.FSharp.Filter creates version-two QueryDocument values. These are
the descriptors it exposes. Query.matching is local and materialized; it
does not send a native tmux filter.
The fields below are checked against documents generated by the F#
descriptors and the optional LibTmux.Query.Json serializer.
Parent links, such as a pane’s window, and placement keys remain native
captured-object properties. They have no portable descriptor.
Sessions¶
SessionFields.name¶
- Core property:
Session.Name - Wire name:
session_name - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Sessions - Schema version:
2
SessionFields.id¶
- Core property:
Session.Id - Wire name:
session_id - Value type:
SessionId - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Sessions - Schema version:
2
SessionFields.attached¶
- Core property:
Session.Attached - Wire name:
session_attached - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Sessions - Schema version:
2
SessionFields.windowCount¶
- Core property:
Session.Windows - Wire name:
session_windows - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
SessionFields.windows¶
- Core property:
Session.Windows - Wire name:
session_windows - Value type:
Relation<Session, Window> - Operators:
any,all,none - Required depth:
Windows - Schema version:
2
Windows¶
WindowFields.name¶
- Core property:
Window.Name - Wire name:
window_name - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.id¶
- Core property:
Window.Id - Wire name:
window_id - Value type:
WindowId - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.index¶
- Core property:
Window.Index - Wire name:
window_index - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.width¶
- Core property:
Window.Width - Wire name:
window_width - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.height¶
- Core property:
Window.Height - Wire name:
window_height - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.active¶
- Core property:
Window.Active - Wire name:
window_active - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.zoomed¶
- Core property:
Window.Zoomed - Wire name:
window_zoomed_flag - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.bellAlert¶
- Core property:
Window.BellAlert - Wire name:
window_bell_flag - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.activityAlert¶
- Core property:
Window.ActivityAlert - Wire name:
window_activity_flag - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.silenceAlert¶
- Core property:
Window.SilenceAlert - Wire name:
window_silence_flag - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.layout¶
- Core property:
Window.Layout - Wire name:
window_layout - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.flags¶
- Core property:
Window.Flags - Wire name:
window_flags - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Windows - Schema version:
2
WindowFields.paneCount¶
- Core property:
Window.Panes - Wire name:
window_panes - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
WindowFields.panes¶
- Core property:
Window.Panes - Wire name:
window_panes - Value type:
Relation<Window, Pane> - Operators:
any,all,none - Required depth:
Panes - Schema version:
2
Panes¶
PaneFields.currentCommand¶
- Core property:
Pane.CurrentCommand - Wire name:
pane_command - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.id¶
- Core property:
Pane.Id - Wire name:
pane_id - Value type:
PaneId - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.index¶
- Core property:
Pane.Index - Wire name:
pane_index - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.title¶
- Core property:
Pane.Title - Wire name:
pane_title - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.currentPath¶
- Core property:
Pane.CurrentPath - Wire name:
pane_current_path - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.width¶
- Core property:
Pane.Width - Wire name:
pane_width - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.height¶
- Core property:
Pane.Height - Wire name:
pane_height - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.left¶
- Core property:
Pane.Left - Wire name:
pane_left - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.top¶
- Core property:
Pane.Top - Wire name:
pane_top - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.atTop¶
- Core property:
Pane.AtTop - Wire name:
pane_at_top - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.atBottom¶
- Core property:
Pane.AtBottom - Wire name:
pane_at_bottom - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.atLeft¶
- Core property:
Pane.AtLeft - Wire name:
pane_at_left - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.atRight¶
- Core property:
Pane.AtRight - Wire name:
pane_at_right - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.active¶
- Core property:
Pane.Active - Wire name:
pane_active - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.dead¶
- Core property:
Pane.Dead - Wire name:
pane_dead - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.inMode¶
- Core property:
Pane.InMode - Wire name:
pane_in_mode - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.processId¶
- Core property:
Pane.ProcessId - Wire name:
pane_pid - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.synchronized¶
- Core property:
Pane.Synchronized - Wire name:
pane_synchronized - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.historySize¶
- Core property:
Pane.HistorySize - Wire name:
history_size - Value type:
int - Operators:
eq,ne,lt,le,gt,ge,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.deadStatus¶
- Core property:
Pane.DeadStatus - Wire name:
pane_dead_status - Value type:
int option - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.tty¶
- Core property:
Pane.Tty - Wire name:
pane_tty - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
PaneFields.startCommand¶
- Core property:
Pane.StartCommand - Wire name:
pane_start_command - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Panes - Schema version:
2
Clients¶
ClientFields.name¶
- Core property:
Client.Name - Wire name:
client_name - Value type:
string - Operators:
eq,ne,eqIgnoreCase,isNull,startsWith,startsWithIgnoreCase,endsWith,endsWithIgnoreCase,contains,containsIgnoreCase,matches,matchesIgnoreCase,oneOf,notOneOf - Required depth:
Sessions - Schema version:
2
ClientFields.controlMode¶
- Core property:
Client.IsControlClient - Wire name:
client_control_mode - Value type:
bool - Operators:
eq,ne,oneOf,notOneOf - Required depth:
Sessions - Schema version:
2
Limits¶
The core wire catalog also reserves client_id. The core client model has no
typed client ID, so the F# façade does not invent one. session_windows and
window_panes each appear twice: as counts, SessionFields.windowCount and
WindowFields.paneCount, and as the relations SessionFields.windows and
WindowFields.panes that Filter.any and Filter.all walk.
A tmux format outside this catalog, such as session_created or
pane_dead_signal, filters through Query.whereUnsafe, which hands tmux a raw
filter such as UnsafeTmuxFilter "#{e|>|:#{session_created},1700000000}".
tmux evaluates it and nothing rechecks it, so it has none of the typed fields’
guarantees, and a malformed or unknown token keeps no rows rather than raising.
allOf [] matches everything, and anyOf [], oneOf [] match nothing;
notOneOf [] matches everything. Each is a Boolean constant predicate, which
serializes and travels like any other document.