Try to change the window title to match the command running it in. This is done

by reading argv[0] from the process group leader of the group that owns the tty
(tcgetpgrp()). This can't be done portably so some OS-dependent code is
introduced (ugh); OpenBSD, FreeBSD and Linux are supported at the moment.

A new window flag, automatic-rename, is available: if this is set to off, the
window name is not changed. Specifying a name with the new-window, new-session
or rename-window commands will automatically set this flag to off for the
window in question. To disable it entirely set the option to off globally (setw
-g automatic-rename off).
This commit is contained in:
Nicholas Marriott
2009-01-20 19:35:03 +00:00
parent d4f034beb4
commit 2d15f59859
16 changed files with 399 additions and 50 deletions

View File

@ -1,4 +1,4 @@
/* $Id: cmd-new-session.c,v 1.36 2009-01-19 18:23:40 nicm Exp $ */
/* $Id: cmd-new-session.c,v 1.37 2009-01-20 19:35:03 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -169,6 +169,8 @@ cmd_new_session_exec(struct cmd *self, struct cmd_ctx *ctx)
if (data->winname != NULL) {
xfree(s->curw->window->name);
s->curw->window->name = xstrdup(data->winname);
options_set_number(
&s->curw->window->options, "automatic-rename", 0);
}
if (data->flag_detached) {