Add a -k flag to unlink-window which makes it behave the same as the old

kill-window - if a window is linked into only one session it unlinked and
destroyed.
This commit is contained in:
Nicholas Marriott 2009-07-15 08:05:56 +00:00
parent 9601b72e4c
commit aa3403a343
2 changed files with 12 additions and 5 deletions

View File

@ -28,8 +28,8 @@ int cmd_unlink_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_unlink_window_entry = { const struct cmd_entry cmd_unlink_window_entry = {
"unlink-window", "unlinkw", "unlink-window", "unlinkw",
CMD_TARGET_WINDOW_USAGE, "[-k] " CMD_TARGET_WINDOW_USAGE,
0, 0, 0, CMD_CHFLAG('k'),
cmd_target_init, cmd_target_init,
cmd_target_parse, cmd_target_parse,
cmd_unlink_window_exec, cmd_unlink_window_exec,
@ -52,7 +52,7 @@ cmd_unlink_window_exec(struct cmd *self, struct cmd_ctx *ctx)
if ((wl = cmd_find_window(ctx, data->target, &s)) == NULL) if ((wl = cmd_find_window(ctx, data->target, &s)) == NULL)
return (-1); return (-1);
if (wl->window->references == 1) { if (!(data->chflags & CMD_CHFLAG('k')) && wl->window->references == 1) {
ctx->error(ctx, "window is only linked to one session"); ctx->error(ctx, "window is only linked to one session");
return (-1); return (-1);
} }

11
tmux.1
View File

@ -1555,13 +1555,20 @@ to
Unbind the key bound to Unbind the key bound to
.Ar key . .Ar key .
.It Xo Ic unlink-window .It Xo Ic unlink-window
.Op Fl k
.Op Fl t Ar target-window .Op Fl t Ar target-window
.Xc .Xc
.D1 (alias: Ic unlinkw ) .D1 (alias: Ic unlinkw )
Unlink Unlink
.Ar target-window . .Ar target-window .
A window may be unlinked only if it is linked to multiple sessions - windows may Unless
not be linked to no sessions. .Fl k
is given, a window may be unlinked only if it is linked to multiple sessions -
windows may not be linked to no sessions;
if
.Fl k
is specified and the window is linked to only one session, it is unlinked and
destroyed.
.It Xo Ic up-pane .It Xo Ic up-pane
.Op Fl p Ar pane-index .Op Fl p Ar pane-index
.Op Fl t Ar target-window .Op Fl t Ar target-window