mirror of
https://github.com/tmate-io/tmate.git
synced 2024-11-23 08:33:17 +01:00
Add a -r flag to switch-client to toggle the client read-only flag. From
Johan Commelin.
This commit is contained in:
parent
f95f792ddf
commit
88e9079870
@ -76,9 +76,11 @@ cmd_choose_client_exec(struct cmd *self, struct cmd_ctx *ctx)
|
|||||||
idx++;
|
idx++;
|
||||||
|
|
||||||
window_choose_add(wl->window->active, i,
|
window_choose_add(wl->window->active, i,
|
||||||
"%s: %s [%ux%u %s]%s", c->tty.path,
|
"%s: %s [%ux%u %s]%s%s", c->tty.path,
|
||||||
c->session->name, c->tty.sx, c->tty.sy,
|
c->session->name, c->tty.sx, c->tty.sy,
|
||||||
c->tty.termname, c->tty.flags & TTY_UTF8 ? " (utf8)" : "");
|
c->tty.termname,
|
||||||
|
c->tty.flags & TTY_UTF8 ? " (utf8)" : "",
|
||||||
|
c->flags & CLIENT_READONLY ? " (ro)" : "");
|
||||||
}
|
}
|
||||||
|
|
||||||
cdata = xmalloc(sizeof *cdata);
|
cdata = xmalloc(sizeof *cdata);
|
||||||
|
@ -33,7 +33,7 @@ const struct cmd_entry cmd_list_clients_entry = {
|
|||||||
"list-clients", "lsc",
|
"list-clients", "lsc",
|
||||||
"t:", 0, 0,
|
"t:", 0, 0,
|
||||||
CMD_TARGET_SESSION_USAGE,
|
CMD_TARGET_SESSION_USAGE,
|
||||||
0,
|
CMD_READONLY,
|
||||||
NULL,
|
NULL,
|
||||||
NULL,
|
NULL,
|
||||||
cmd_list_clients_exec
|
cmd_list_clients_exec
|
||||||
@ -68,9 +68,10 @@ cmd_list_clients_exec(struct cmd *self, struct cmd_ctx *ctx)
|
|||||||
|
|
||||||
if (s != NULL && s != c->session)
|
if (s != NULL && s != c->session)
|
||||||
continue;
|
continue;
|
||||||
ctx->print(ctx, "%s: %s [%ux%u %s]%s", c->tty.path,
|
ctx->print(ctx, "%s: %s [%ux%u %s]%s%s", c->tty.path,
|
||||||
c->session->name, c->tty.sx, c->tty.sy,
|
c->session->name, c->tty.sx, c->tty.sy,
|
||||||
c->tty.termname, s_utf8);
|
c->tty.termname, s_utf8,
|
||||||
|
c->flags & CLIENT_READONLY ? " (ro)" : "");
|
||||||
}
|
}
|
||||||
|
|
||||||
return (0);
|
return (0);
|
||||||
|
@ -32,9 +32,9 @@ int cmd_switch_client_exec(struct cmd *, struct cmd_ctx *);
|
|||||||
|
|
||||||
const struct cmd_entry cmd_switch_client_entry = {
|
const struct cmd_entry cmd_switch_client_entry = {
|
||||||
"switch-client", "switchc",
|
"switch-client", "switchc",
|
||||||
"lc:npt:", 0, 0,
|
"lc:npt:r", 0, 0,
|
||||||
"[-lnp] [-c target-client] [-t target-session]",
|
"[-lnpr] [-c target-client] [-t target-session]",
|
||||||
0,
|
CMD_READONLY,
|
||||||
cmd_switch_client_key_binding,
|
cmd_switch_client_key_binding,
|
||||||
NULL,
|
NULL,
|
||||||
cmd_switch_client_exec
|
cmd_switch_client_exec
|
||||||
@ -67,6 +67,16 @@ cmd_switch_client_exec(struct cmd *self, struct cmd_ctx *ctx)
|
|||||||
if ((c = cmd_find_client(ctx, args_get(args, 'c'))) == NULL)
|
if ((c = cmd_find_client(ctx, args_get(args, 'c'))) == NULL)
|
||||||
return (-1);
|
return (-1);
|
||||||
|
|
||||||
|
if (args_has(args, 'r')) {
|
||||||
|
if (c->flags & CLIENT_READONLY) {
|
||||||
|
c->flags &= ~CLIENT_READONLY;
|
||||||
|
ctx->info(ctx, "made client writable");
|
||||||
|
} else {
|
||||||
|
c->flags |= CLIENT_READONLY;
|
||||||
|
ctx->info(ctx, "made client read-only");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
s = NULL;
|
s = NULL;
|
||||||
if (args_has(args, 'n')) {
|
if (args_has(args, 'n')) {
|
||||||
if ((s = session_next_session(c->session)) == NULL) {
|
if ((s = session_next_session(c->session)) == NULL) {
|
||||||
|
10
tmux.1
10
tmux.1
@ -558,7 +558,9 @@ is specified, any other clients attached to the session are detached.
|
|||||||
.Fl r
|
.Fl r
|
||||||
signifies the client is read-only (only keys bound to the
|
signifies the client is read-only (only keys bound to the
|
||||||
.Ic detach-client
|
.Ic detach-client
|
||||||
command have any effect)
|
or
|
||||||
|
.Ic switch-client
|
||||||
|
commands have any effect)
|
||||||
.Pp
|
.Pp
|
||||||
If no server is started,
|
If no server is started,
|
||||||
.Ic attach-session
|
.Ic attach-session
|
||||||
@ -714,7 +716,7 @@ Suspend a client by sending
|
|||||||
.Dv SIGTSTP
|
.Dv SIGTSTP
|
||||||
(tty stop).
|
(tty stop).
|
||||||
.It Xo Ic switch-client
|
.It Xo Ic switch-client
|
||||||
.Op Fl lnp
|
.Op Fl lnpr
|
||||||
.Op Fl c Ar target-client
|
.Op Fl c Ar target-client
|
||||||
.Op Fl t Ar target-session
|
.Op Fl t Ar target-session
|
||||||
.Xc
|
.Xc
|
||||||
@ -730,6 +732,10 @@ or
|
|||||||
.Fl p
|
.Fl p
|
||||||
is used, the client is moved to the last, next or previous session
|
is used, the client is moved to the last, next or previous session
|
||||||
respectively.
|
respectively.
|
||||||
|
.Fl r
|
||||||
|
toggles whether a client is read-only (see the
|
||||||
|
.Ic attach-session
|
||||||
|
command).
|
||||||
.El
|
.El
|
||||||
.Sh WINDOWS AND PANES
|
.Sh WINDOWS AND PANES
|
||||||
A
|
A
|
||||||
|
Loading…
Reference in New Issue
Block a user