mirror of
https://github.com/tmux/tmux.git
synced 2024-12-13 01:48:47 +00:00
Add a default-terminal option to set the starting value of $TERM in new
windows. This is "screen" by default and must be either that or something closely related. This does makes it easier to customise it if necessary.
This commit is contained in:
parent
25d5734496
commit
daa1faa905
@ -53,6 +53,7 @@ const struct set_option_entry set_option_table[NSETOPTION] = {
|
|||||||
{ "buffer-limit", SET_OPTION_NUMBER, 1, INT_MAX, NULL },
|
{ "buffer-limit", SET_OPTION_NUMBER, 1, INT_MAX, NULL },
|
||||||
{ "default-command", SET_OPTION_STRING, 0, 0, NULL },
|
{ "default-command", SET_OPTION_STRING, 0, 0, NULL },
|
||||||
{ "default-path", SET_OPTION_STRING, 0, 0, NULL },
|
{ "default-path", SET_OPTION_STRING, 0, 0, NULL },
|
||||||
|
{ "default-terminal", SET_OPTION_STRING, 0, 0, NULL },
|
||||||
{ "display-time", SET_OPTION_NUMBER, 1, INT_MAX, NULL },
|
{ "display-time", SET_OPTION_NUMBER, 1, INT_MAX, NULL },
|
||||||
{ "history-limit", SET_OPTION_NUMBER, 0, INT_MAX, NULL },
|
{ "history-limit", SET_OPTION_NUMBER, 0, INT_MAX, NULL },
|
||||||
{ "lock-after-time", SET_OPTION_NUMBER, 0, INT_MAX, NULL },
|
{ "lock-after-time", SET_OPTION_NUMBER, 0, INT_MAX, NULL },
|
||||||
|
@ -29,8 +29,8 @@ int server_lock_callback(void *, const char *);
|
|||||||
const char **
|
const char **
|
||||||
server_fill_environ(struct session *s)
|
server_fill_environ(struct session *s)
|
||||||
{
|
{
|
||||||
static const char *env[] = { NULL /* TMUX= */, "TERM=screen", NULL };
|
static const char *env[] = { NULL /* TMUX= */, NULL /* TERM */, NULL };
|
||||||
static char tmuxvar[MAXPATHLEN + 256];
|
static char tmuxvar[MAXPATHLEN + 256], termvar[256];
|
||||||
u_int idx;
|
u_int idx;
|
||||||
|
|
||||||
if (session_index(s, &idx) != 0)
|
if (session_index(s, &idx) != 0)
|
||||||
@ -40,6 +40,10 @@ server_fill_environ(struct session *s)
|
|||||||
"TMUX=%s,%ld,%u", socket_path, (long) getpid(), idx);
|
"TMUX=%s,%ld,%u", socket_path, (long) getpid(), idx);
|
||||||
env[0] = tmuxvar;
|
env[0] = tmuxvar;
|
||||||
|
|
||||||
|
xsnprintf(termvar, sizeof termvar,
|
||||||
|
"TERM=%s", options_get_string(&s->options, "default-terminal"));
|
||||||
|
env[1] = termvar;
|
||||||
|
|
||||||
return (env);
|
return (env);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
12
tmux.1
12
tmux.1
@ -1090,6 +1090,18 @@ environment variable or, if it is unset, the user's shell returned by
|
|||||||
Set the default working directory for processes created from keys, or
|
Set the default working directory for processes created from keys, or
|
||||||
interactively from the prompt.
|
interactively from the prompt.
|
||||||
The default is the current working directory when the server is started.
|
The default is the current working directory when the server is started.
|
||||||
|
.It Ic default-terminal Ar terminal
|
||||||
|
Set the default terminal for new windows created in this session - the
|
||||||
|
default value of the
|
||||||
|
.Ev TERM
|
||||||
|
environment variable.
|
||||||
|
For
|
||||||
|
.Nm
|
||||||
|
to work correctly, this
|
||||||
|
.Em must
|
||||||
|
be set to
|
||||||
|
.Ql screen
|
||||||
|
or a derivative of it.
|
||||||
.It Ic display-time Ar time
|
.It Ic display-time Ar time
|
||||||
Set the amount of time for which status line messages are displayed.
|
Set the amount of time for which status line messages are displayed.
|
||||||
.Ar time
|
.Ar time
|
||||||
|
1
tmux.c
1
tmux.c
@ -270,6 +270,7 @@ main(int argc, char **argv)
|
|||||||
options_set_number(&global_s_options, "bell-action", BELL_ANY);
|
options_set_number(&global_s_options, "bell-action", BELL_ANY);
|
||||||
options_set_number(&global_s_options, "buffer-limit", 9);
|
options_set_number(&global_s_options, "buffer-limit", 9);
|
||||||
options_set_string(&global_s_options, "default-command", "%s", "");
|
options_set_string(&global_s_options, "default-command", "%s", "");
|
||||||
|
options_set_string(&global_s_options, "default-terminal", "screen");
|
||||||
options_set_number(&global_s_options, "display-time", 750);
|
options_set_number(&global_s_options, "display-time", 750);
|
||||||
options_set_number(&global_s_options, "history-limit", 2000);
|
options_set_number(&global_s_options, "history-limit", 2000);
|
||||||
options_set_number(&global_s_options, "lock-after-time", 0);
|
options_set_number(&global_s_options, "lock-after-time", 0);
|
||||||
|
2
tmux.h
2
tmux.h
@ -935,7 +935,7 @@ struct set_option_entry {
|
|||||||
};
|
};
|
||||||
extern const struct set_option_entry set_option_table[];
|
extern const struct set_option_entry set_option_table[];
|
||||||
extern const struct set_option_entry set_window_option_table[];
|
extern const struct set_option_entry set_window_option_table[];
|
||||||
#define NSETOPTION 25
|
#define NSETOPTION 26
|
||||||
#define NSETWINDOWOPTION 19
|
#define NSETWINDOWOPTION 19
|
||||||
|
|
||||||
/* tmux.c */
|
/* tmux.c */
|
||||||
|
Loading…
Reference in New Issue
Block a user