summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2022-05-20 08:49:05 +0100
committerNicholas Marriott <nicholas.marriott@gmail.com>2022-05-20 08:49:05 +0100
commit1b28b2b51d264544a7c9490087561c9192459ba5 (patch)
treed0ed275c8a0ee1007ac763be32190411f40de97e
parent95baa32383bf095daf1a1e707de6b540ddb05d37 (diff)
Add pane_start_path to match start_command.
-rw-r--r--format.c17
-rw-r--r--tmux.11
2 files changed, 18 insertions, 0 deletions
diff --git a/format.c b/format.c
index 5e04a6a2..ccd259ec 100644
--- a/format.c
+++ b/format.c
@@ -801,6 +801,20 @@ format_cb_start_command(struct format_tree *ft)
return (cmd_stringify_argv(wp->argc, wp->argv));
}
+/* Callback for pane_start_path. */
+static void *
+format_cb_start_path(struct format_tree *ft)
+{
+ struct window_pane *wp = ft->wp;
+
+ if (wp == NULL)
+ return (NULL);
+
+ if (wp->cwd == NULL)
+ return (xstrdup(""));
+ return (xstrdup(wp->cwd));
+}
+
/* Callback for pane_current_command. */
static void *
format_cb_current_command(struct format_tree *ft)
@@ -2898,6 +2912,9 @@ static const struct format_table_entry format_table[] = {
{ "pane_start_command", FORMAT_TABLE_STRING,
format_cb_start_command
},
+ { "pane_start_path", FORMAT_TABLE_STRING,
+ format_cb_start_path
+ },
{ "pane_synchronized", FORMAT_TABLE_STRING,
format_cb_pane_synchronized
},
diff --git a/tmux.1 b/tmux.1
index e1115fe2..61834a94 100644
--- a/tmux.1
+++ b/tmux.1
@@ -5195,6 +5195,7 @@ The following variables are available, where appropriate:
.It Li "pane_right" Ta "" Ta "Right of pane"
.It Li "pane_search_string" Ta "" Ta "Last search string in copy mode"
.It Li "pane_start_command" Ta "" Ta "Command pane started with"
+.It Li "pane_start_path" Ta "" Ta "Path pane started with"
.It Li "pane_synchronized" Ta "" Ta "1 if pane is synchronized"
.It Li "pane_tabs" Ta "" Ta "Pane tab positions"
.It Li "pane_title" Ta "#T" Ta "Title of pane (can be set by application)"