mirror of
https://github.com/tmux/tmux.git
synced 2025-01-14 12:48:56 +00:00
Sync OpenBSD patchset 309:
Accept -l to make it easier for people who use tmux as a login shell to use $SHELL. Originally from martynas@, tweaked by me.
This commit is contained in:
parent
c274551db6
commit
884ebb6dab
@ -1,4 +1,4 @@
|
||||
/* $Id: cmd-server-info.c,v 1.26 2009-08-20 11:35:16 tcunha Exp $ */
|
||||
/* $Id: cmd-server-info.c,v 1.27 2009-09-03 21:02:55 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -68,8 +68,9 @@ cmd_server_info_exec(unused struct cmd *self, struct cmd_ctx *ctx)
|
||||
*strchr(tim, '\n') = '\0';
|
||||
ctx->print(ctx,
|
||||
"tmux " BUILD ", pid %ld, started %s", (long) getpid(), tim);
|
||||
ctx->print(ctx, "socket path %s, debug level %d%s",
|
||||
socket_path, debug_level, be_quiet ? ", quiet" : "");
|
||||
ctx->print(ctx, "socket path %s, debug level %d%s%s",
|
||||
socket_path, debug_level, be_quiet ? ", quiet" : "",
|
||||
login_shell ? ", login shell" : "");
|
||||
if (uname(&un) == 0) {
|
||||
ctx->print(ctx, "system is %s %s %s %s",
|
||||
un.sysname, un.release, un.version, un.machine);
|
||||
|
8
tmux.1
8
tmux.1
@ -1,4 +1,4 @@
|
||||
.\" $Id: tmux.1,v 1.163 2009-09-03 20:44:38 tcunha Exp $
|
||||
.\" $Id: tmux.1,v 1.164 2009-09-03 21:02:55 tcunha Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
.\"
|
||||
@ -23,7 +23,7 @@
|
||||
.Sh SYNOPSIS
|
||||
.Nm tmux
|
||||
.Bk -words
|
||||
.Op Fl 28dqUuv
|
||||
.Op Fl 28dlqUuv
|
||||
.Op Fl f Ar file
|
||||
.Op Fl L Ar socket-name
|
||||
.Op Fl S Ar socket-path
|
||||
@ -120,6 +120,10 @@ commands which are executed in sequence when the server is first started.
|
||||
If a command in the configuration file fails,
|
||||
.Nm
|
||||
will report an error and exit without executing further commands.
|
||||
.It Fl l
|
||||
Behave as a login shell.
|
||||
This flag currently has no effect and is for compatibility with other shells
|
||||
when using tmux as a login shell.
|
||||
.It Fl L Ar socket-name
|
||||
.Nm
|
||||
stores the server socket in a directory under
|
||||
|
15
tmux.c
15
tmux.c
@ -1,4 +1,4 @@
|
||||
/* $Id: tmux.c,v 1.169 2009-09-03 20:44:38 tcunha Exp $ */
|
||||
/* $Id: tmux.c,v 1.170 2009-09-03 21:02:55 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -62,6 +62,7 @@ int debug_level;
|
||||
int be_quiet;
|
||||
time_t start_time;
|
||||
char *socket_path;
|
||||
int login_shell;
|
||||
|
||||
__dead void usage(void);
|
||||
char *makesockpath(const char *);
|
||||
@ -77,8 +78,8 @@ __dead void
|
||||
usage(void)
|
||||
{
|
||||
fprintf(stderr,
|
||||
"usage: %s [-28dqUuv] [-f file] [-L socket-name] [-S socket-path]\n"
|
||||
" [command [flags]]\n",
|
||||
"usage: %s [-28dlqUuv] [-f file] [-L socket-name]\n"
|
||||
" [-S socket-path] [command [flags]]\n",
|
||||
__progname);
|
||||
exit(1);
|
||||
}
|
||||
@ -325,8 +326,9 @@ main(int argc, char **argv)
|
||||
|
||||
unlock = flags = 0;
|
||||
label = path = NULL;
|
||||
while ((opt = getopt(argc, argv, "28df:L:qS:uUv")) != -1) {
|
||||
switch (opt) {
|
||||
login_shell = (**argv == '-');
|
||||
while ((opt = getopt(argc, argv, "28df:lL:qS:uUv")) != -1) {
|
||||
switch (opt) {
|
||||
case '2':
|
||||
flags |= IDENTIFY_256COLOURS;
|
||||
flags &= ~IDENTIFY_88COLOURS;
|
||||
@ -343,6 +345,9 @@ main(int argc, char **argv)
|
||||
xfree(cfg_file);
|
||||
cfg_file = xstrdup(optarg);
|
||||
break;
|
||||
case 'l':
|
||||
login_shell = 1;
|
||||
break;
|
||||
case 'L':
|
||||
if (label != NULL)
|
||||
xfree(label);
|
||||
|
3
tmux.h
3
tmux.h
@ -1,4 +1,4 @@
|
||||
/* $Id: tmux.h,v 1.435 2009-09-03 20:44:38 tcunha Exp $ */
|
||||
/* $Id: tmux.h,v 1.436 2009-09-03 21:02:55 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -1115,6 +1115,7 @@ extern int debug_level;
|
||||
extern int be_quiet;
|
||||
extern time_t start_time;
|
||||
extern char *socket_path;
|
||||
extern int login_shell;
|
||||
void logfile(const char *);
|
||||
void siginit(void);
|
||||
void sigreset(void);
|
||||
|
Loading…
Reference in New Issue
Block a user