Applied with some trivial tweaks, thanks. On Sat, Dec 15, 2012 at 05:32:17AM +0530, Raghavendra D Prabhu wrote: > This is to simulate a behavior similar to what is found in window managers > where > using the same key used to switched to the workspace returns to previous > workspace; since this allows faster switching (by making use of locality of > the > key). To keep the existing default behavior, added as a flag 'T' to > select-window. Also updated the man-page for select-window to include the new > flag 'T'. > > Signed-off-by: Raghavendra D Prabhu <rpra...@wnohang.net> > > diff --git a/cmd-select-window.c b/cmd-select-window.c > index 5d87e59..d62c1be 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 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/tmux.1 b/tmux.1 > index 213db74..20a61af 100644 > --- a/tmux.1 > +++ b/tmux.1 > @@ -1637,12 +1637,18 @@ 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 ) > Select the window at > .Ar target-window . > +If invoked with > +.Fl T > +on same window as current window alongside > +.Fl t, > +it chooses last-window and > +toggle betweens them in future runs. > .Fl l , > .Fl n > and > -- > 1.8.0.2 > > > ------------------------------------------------------------------------------ > 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-users mailing list > tmux-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/tmux-users
------------------------------------------------------------------------------ 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-users mailing list tmux-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tmux-users