mirror of
https://github.com/tmux/tmux.git
synced 2025-12-23 16:56:06 +00:00
Add {current}/{active} for -t for current window or active pane, from
Manuel Einfalt in GitHub issue 4766.
This commit is contained in:
15
cmd-find.c
15
cmd-find.c
@@ -925,6 +925,7 @@ cmd_find_target(struct cmd_find_state *fs, struct cmdq_item *item,
|
||||
const char *target, enum cmd_find_type type, int flags)
|
||||
{
|
||||
struct mouse_event *m;
|
||||
struct client *c;
|
||||
struct cmd_find_state current;
|
||||
char *colon, *period, *copy = NULL, tmp[256];
|
||||
const char *session, *window, *pane, *s;
|
||||
@@ -991,6 +992,20 @@ cmd_find_target(struct cmd_find_state *fs, struct cmdq_item *item,
|
||||
if (target == NULL || *target == '\0')
|
||||
goto current;
|
||||
|
||||
if (strcmp(target, "@") == 0 ||
|
||||
strcmp(target, "{active}") == 0 ||
|
||||
strcmp(target, "{current}") == 0) {
|
||||
c = cmdq_get_client(item);
|
||||
if (c == NULL) {
|
||||
cmdq_error(item, "no current client");
|
||||
goto error;
|
||||
}
|
||||
fs->wl = c->session->curw;
|
||||
fs->wp = c->session->curw->window->active;
|
||||
fs->w = c->session->curw->window;
|
||||
goto found;
|
||||
}
|
||||
|
||||
/* Mouse target is a plain = or {mouse}. */
|
||||
if (strcmp(target, "=") == 0 || strcmp(target, "{mouse}") == 0) {
|
||||
m = &cmdq_get_event(item)->m;
|
||||
|
||||
@@ -439,6 +439,7 @@ key_bindings_init(void)
|
||||
|
||||
/* Mouse button 1 down on pane. */
|
||||
"bind -n MouseDown1Pane { select-pane -t=; send -M }",
|
||||
"bind -n C-MouseDown1Pane { swap-pane -s@ }",
|
||||
|
||||
/* Mouse button 1 drag on pane. */
|
||||
"bind -n MouseDrag1Pane { if -F '#{||:#{pane_in_mode},#{mouse_any_flag}}' { send -M } { copy-mode -M } }",
|
||||
@@ -460,6 +461,7 @@ key_bindings_init(void)
|
||||
|
||||
/* Mouse button 1 down on status line. */
|
||||
"bind -n MouseDown1Status { switch-client -t= }",
|
||||
"bind -n C-MouseDown1Status { swap-window -t@ }",
|
||||
|
||||
/* Mouse wheel down on status line. */
|
||||
"bind -n WheelDownStatus { next-window }",
|
||||
|
||||
2
tmux.1
2
tmux.1
@@ -839,6 +839,7 @@ Each has a single-character alternative form.
|
||||
.It Li "{last}" Ta "!" Ta "The last (previously current) window"
|
||||
.It Li "{next}" Ta "+" Ta "The next window by number"
|
||||
.It Li "{previous}" Ta "-" Ta "The previous window by number"
|
||||
.It Li "{current}" Ta "@" Ta "The current window"
|
||||
.El
|
||||
.Pp
|
||||
.Ar target-pane
|
||||
@@ -871,6 +872,7 @@ The following special tokens are available for the pane index:
|
||||
.It Li "{down-of}" Ta "" Ta "The pane below the active pane"
|
||||
.It Li "{left-of}" Ta "" Ta "The pane to the left of the active pane"
|
||||
.It Li "{right-of}" Ta "" Ta "The pane to the right of the active pane"
|
||||
.It Li "{active}" Ta "@" Ta "The active pane"
|
||||
.El
|
||||
.Pp
|
||||
The tokens
|
||||
|
||||
Reference in New Issue
Block a user