The branch, master has been updated
via 854e8ae04d15c16b688ba38119656aee134548dd (commit)
via 3e6d45acf67e37db3614a581ab5aaa3b9509a430 (commit)
via a2c8af97e9b1f2ade071de31d97eccc3219949d9 (commit)
via b18ff676469e197000cd89965c41f015b47862da (commit)
from 6a5adfc0baeb178a1b785068e118a524284498f4 (commit)
- Log -----------------------------------------------------------------
commit 854e8ae04d15c16b688ba38119656aee134548dd
Author: Nicholas Marriott <[email protected]>
Commit: Nicholas Marriott <[email protected]>
Add ^ and $ special command targets to select lowest and highest
numbered windows, from Raghavendra D Prabhu.
---
cmd.c | 4 ++++
tmux.1 | 19 ++++++++++++++++---
2 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/cmd.c b/cmd.c
index a9594c0..c0888a2 100644
--- a/cmd.c
+++ b/cmd.c
@@ -863,6 +863,10 @@ cmd_find_window(struct cmd_ctx *ctx, const char *arg,
struct session **sp)
wl = s->curw;
else if (winptr[0] == '!' && winptr[1] == '\0')
wl = TAILQ_FIRST(&s->lastw);
+ else if (winptr[0] == '^' && winptr[1] == '\0')
+ wl = RB_MIN(winlinks, &s->windows);
+ else if (winptr[0] == '$' && winptr[1] == '\0')
+ wl = RB_MAX(winlinks, &s->windows);
else if (winptr[0] == '+' || winptr[0] == '-')
wl = cmd_find_window_offset(winptr, s, &ambiguous);
else
diff --git a/tmux.1 b/tmux.1
index 349c23f..7abb8f8 100644
--- a/tmux.1
+++ b/tmux.1
@@ -408,11 +408,15 @@ otherwise the current window in
is chosen.
The special character
.Ql \&!
-uses the last (previously current) window, or
+uses the last (previously current) window,
+.Ql ^
+selects the highest numbered window,
+.Ql $
+selects the lowest numbered window, and
.Ql +
and
.Ql -
-are the next window or the previous window by number.
+select the next window or the previous window by number.
When the argument does not contain a colon,
.Nm
first attempts to parse it as window; if that fails, an attempt is made to
@@ -1126,6 +1130,7 @@ This command works only from inside
.Ic choose-tree
.Op Fl s
.Op Fl w
+.Op Fl u
.Op Fl b Ar session-template
.Op Fl c Ar window-template
.Op Fl S Ar format
@@ -1151,6 +1156,9 @@ If
.Fl w
is given, will show windows.
If
+.Fl u
+is given, the tree is uncollapsed by default.
+If
.Fl b
is given, will override the default session command.
Note that
@@ -1639,7 +1647,7 @@ is the same as using the
.Ic last-pane
command.
.It Xo Ic select-window
-.Op Fl lnp
+.Op Fl lnpT
.Op Fl t Ar target-window
.Xc
.D1 (alias: Ic selectw )
@@ -1655,6 +1663,11 @@ are equivalent to the
and
.Ic previous-window
commands.
+If
+.Fl T
+is given and the selected window is already the current window,
+the command behaves like
+.Ic last-window .
.It Xo Ic split-window
.Op Fl dhvP
.Op Fl c Ar start-directory
commit 3e6d45acf67e37db3614a581ab5aaa3b9509a430
Author: Nicholas Marriott <[email protected]>
Commit: Nicholas Marriott <[email protected]>
Add -T option to select-window to toggle to last window if already
current, from Raghavendra D Prabhu.
---
cmd-select-window.c | 16 +++++++++++++---
window-choose.c | 2 --
2 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/cmd-select-window.c b/cmd-select-window.c
index eaa3e88..70d60be 100644
--- a/cmd-select-window.c
+++ b/cmd-select-window.c
@@ -31,8 +31,8 @@ enum cmd_retval cmd_select_window_exec(struct cmd *,
struct cmd_ctx *);
const struct cmd_entry cmd_select_window_entry = {
"select-window", "selectw",
- "lnpt:", 0, 0,
- "[-lnp] " CMD_TARGET_WINDOW_USAGE,
+ "lnpTt:", 0, 0,
+ "[-lnpT] " CMD_TARGET_WINDOW_USAGE,
0,
cmd_select_window_key_binding,
NULL,
@@ -130,7 +130,17 @@ cmd_select_window_exec(struct cmd *self, struct cmd_ctx
*ctx)
if (wl == NULL)
return (CMD_RETURN_ERROR);
- if (session_select(s, wl->idx) == 0)
+ /*
+ * If -T and select-window is invoked on same window as
+ * current, switch to previous window.
+ */
+ if (args_has(self->args, 'T') && wl == s->curw) {
+ if (session_last(s) != 0) {
+ ctx->error(ctx, "no last window");
+ return (-1);
+ }
+ server_redraw_session(s);
+ } else if (session_select(s, wl->idx) == 0)
server_redraw_session(s);
}
recalculate_sizes();
diff --git a/window-choose.c b/window-choose.c
index ab0d803..20482a6 100644
--- a/window-choose.c
+++ b/window-choose.c
@@ -43,7 +43,6 @@ void window_choose_scroll_down(struct window_pane *);
void window_choose_collapse(struct window_pane *, struct session *);
void window_choose_expand(struct window_pane *, struct session *, u_int);
void window_choose_collapse_all(struct window_pane *);
-void window_choose_expand_all(struct window_pane *);
enum window_choose_input_type {
WINDOW_CHOOSE_NORMAL = -1,
@@ -118,7 +117,6 @@ window_choose_ready(struct window_pane *wp, u_int cur,
ARRAY_CONCAT(&data->old_list, &data->list);
window_choose_collapse_all(wp);
- window_choose_redraw_screen(wp);
}
struct screen *
commit a2c8af97e9b1f2ade071de31d97eccc3219949d9
Author: Nicholas Marriott <[email protected]>
Commit: Nicholas Marriott <[email protected]>
Add missing function prototype.
---
tmux.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/tmux.h b/tmux.h
index 429f2d7..c1fec02 100644
--- a/tmux.h
+++ b/tmux.h
@@ -2243,6 +2243,7 @@ struct window_choose_data
*window_choose_add_session(struct window_pane *,
struct window_choose_data *window_choose_add_item(struct window_pane *,
struct cmd_ctx *, struct winlink *, const char *,
char *, u_int);
+void window_choose_expand_all(struct window_pane *);
/* names.c */
void queue_window_name(struct window *);
commit b18ff676469e197000cd89965c41f015b47862da
Author: Nicholas Marriott <[email protected]>
Commit: Nicholas Marriott <[email protected]>
Add a -u flag to choose-tree to start uncollapsed, from Raghavendra D
Prabhu.
---
cmd-choose-tree.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/cmd-choose-tree.c b/cmd-choose-tree.c
index 52f06dc..24c4299 100644
--- a/cmd-choose-tree.c
+++ b/cmd-choose-tree.c
@@ -39,8 +39,8 @@ void cmd_choose_tree_free(struct window_choose_data *);
const struct cmd_entry cmd_choose_tree_entry = {
"choose-tree", NULL,
- "S:W:swb:c:t:", 0, 1,
- "[-sw] [-b session-template] [-c window template] [-S format] " \
+ "S:W:swub:c:t:", 0, 1,
+ "[-swu] [-b session-template] [-c window template] [-S format] " \
"[-W format] " CMD_TARGET_WINDOW_USAGE,
0,
NULL,
@@ -232,6 +232,9 @@ windows_only:
window_choose_ready(wl->window->active, cur_win,
cmd_choose_tree_callback, cmd_choose_tree_free);
+ if (args_has(args, 'u'))
+ window_choose_expand_all(wl->window->active);
+
return (CMD_RETURN_NORMAL);
}
-----------------------------------------------------------------------
Summary of changes:
cmd-choose-tree.c | 7 +++++--
cmd-select-window.c | 16 +++++++++++++---
cmd.c | 4 ++++
tmux.1 | 19 ++++++++++++++++---
tmux.h | 1 +
window-choose.c | 2 --
6 files changed, 39 insertions(+), 10 deletions(-)
hooks/post-receive
--
tmux
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
tmux-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tmux-cvs