diff options
Diffstat (limited to 'crates/dinggerd/src/tmux.rs')
| -rw-r--r-- | crates/dinggerd/src/tmux.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/crates/dinggerd/src/tmux.rs b/crates/dinggerd/src/tmux.rs index 9fcccf3..b743256 100644 --- a/crates/dinggerd/src/tmux.rs +++ b/crates/dinggerd/src/tmux.rs @@ -30,6 +30,8 @@ pub struct Pane { pub written_session: String, /// `@dingger_importance`: unset for normal. pub written_importance: String, + pub written_extension: String, + pub written_control: String, } @@ -111,14 +113,16 @@ pub fn list_panes() -> Result<Vec<Pane>, String> { "#{pane_current_path}\t", "#{@agent_name}\t", "#{@agent_session}\t", - "#{@dingger_importance}", + "#{@dingger_importance}\t", + "#{@dingger_extension}\t", + "#{@dingger_control}", ); let out = run_tmux(&["list-panes", "-a", "-F", format])?; let mut panes: Vec<Pane> = Vec::new(); let mut process_tree = None; for line in out.lines() { let fields: Vec<&str> = line.split('\t').collect(); - if fields.len() < 20 { + if fields.len() < 22 { continue; } let attended = fields[4] == "1" && fields[5] != "0"; @@ -161,6 +165,8 @@ pub fn list_panes() -> Result<Vec<Pane>, String> { written_name: fields[17].to_string(), written_session: fields[18].to_string(), written_importance: fields[19].to_string(), + written_extension: fields[20].to_string(), + written_control: fields[21].to_string(), }); } Ok(panes) |
