aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmd-find.c8
-rw-r--r--tmux.115
2 files changed, 21 insertions, 2 deletions
diff --git a/cmd-find.c b/cmd-find.c
index 0c86e548..e8c82772 100644
--- a/cmd-find.c
+++ b/cmd-find.c
@@ -111,7 +111,7 @@ cmd_find_inside_pane(struct client *c)
return (NULL);
RB_FOREACH(wp, window_pane_tree, &all_window_panes) {
- if (strcmp(wp->tty, c->ttyname) == 0)
+ if (wp->fd != -1 && strcmp(wp->tty, c->ttyname) == 0)
break;
}
if (wp != NULL)
@@ -222,7 +222,7 @@ fail:
}
/*
- * Find the best winlink for a window (the current if it contains the pane,
+ * Find the best winlink for a window (the current if it contains the window,
* otherwise the first).
*/
static int
@@ -919,6 +919,10 @@ cmd_find_from_client(struct cmd_find_state *fs, struct client *c, int flags)
cmd_find_log_state(__func__, fs);
return (0);
}
+ else {
+ log_debug("%s: session $%u does not have pane %%%u",
+ __func__, s->id, wp->id);
+ }
}
/*
diff --git a/tmux.1 b/tmux.1
index d184b7a6..d6cb65b3 100644
--- a/tmux.1
+++ b/tmux.1
@@ -3578,6 +3578,21 @@ if
is enabled, or
.Ql no
if not.
+Conditionals can be nested arbitrarily.
+Inside a conditional,
+.Ql \&,
+and
+.Ql }
+must be escaped as
+.Ql #,
+and
+.Ql #} ,
+unless they are part of a
+.Ql #{...}
+replacement. For example:
+.Bd -literal -offset indent
+#{?pane_in_mode,#[fg=white#,bg=red],#[fg=red#,bg=white]}#W .
+.Ed
.Pp
Comparisons may be expressed by prefixing two comma-separated
alternatives by