summaryrefslogtreecommitdiff
path: root/usr.bin/tmux/tmux.c
AgeCommit message (Collapse)Author
2013-04-24Rename global configuration define.Nicholas Marriott
2013-04-11Call setlocale(LC_TIME) at startup.Nicholas Marriott
2013-03-27Add TMUX_TMPDIR variable to put the socket directory outsideNicholas Marriott
TMPDIR. From Ben Boeckel.
2013-03-27Remove tmux's (already minimal) 88 colour support. Such terminals areNicholas Marriott
few and unnecessary.
2013-03-25Rename session idx to session id throughout and add $ prefix to targetsNicholas Marriott
to use it, extended from a diff from George Nachman.
2013-03-24Add a command queue to standardize and simplify commands that call otherNicholas Marriott
commands and allow a command to block execution of subsequent commands. This allows run-shell and if-shell to be synchronous which has been much requested. Each client has a default command queue and commands are consumed one at a time from it. A command may suspend execution from the queue by returning CMD_RETURN_WAIT and then resume it by calling cmd_continue() - for example run-shell does this from the callback that is fired after the job is freed. When the command queue becomes empty, command clients are automatically exited (unless attaching). A callback is also fired - this is used for nested commands in, for example, if-shell which can block execution of the client's cmdq until a new cmdq becomes empty. Also merge all the old error/info/print functions together and lose the old curclient/cmdclient distinction - a cmdq is bound to one client (or none if in the configuration file), this is a command client if c->session is NULL otherwise an attached client.
2012-11-27Correctly aggregate together errors from nested config files (withNicholas Marriott
source-file). Fix by Thomas Adam, reported by Sam Livingstone-Gray
2012-11-26Call realpath earlier on the socket directory path rather than on theNicholas Marriott
socket file path because the latter may not exist yet and in that case realpath is allowed to fail. From Romain Francoise.
2012-07-10xfree is not particularly helpful, remove it. From Thomas Adam.Nicholas Marriott
2012-06-18Add a skeleton mode to tmux (called "control mode") that let's tmuxNicholas Marriott
commands be sent and output received on stdout. This can be used to integrate with other terminal emulators and should allow some other things to be made simpler later. More to come so doesn't do much yet and deliberately not documented.
2012-05-30Do not use stderr for log file and don't call log_close when not needed.Nicholas Marriott
2012-05-25Simplify logging and just fprintf(stderr, ...) for early errors.Nicholas Marriott
2012-01-21Drop the ability to have a list of keys in the prefix in favour of twoNicholas Marriott
separate options, prefix and prefix2. This simplifies the code and gets rid the data options type which was only used for this one option. Also add a -2 flag to send-prefix to send the secondary prefix key, fixing a cause of minor irritation. People who want three prefix keys are out of luck :-).
2011-10-23Try to resolve relative paths for loadb and saveb (first using clientNicholas Marriott
working directory if any then default-path or session wd).
2011-10-23Ignore LC_ALL and LC_CTYPE if they are empty as well as unset.Nicholas Marriott
2011-09-25Reject $SHELL if it is not a full path.Nicholas Marriott
2011-03-04Two fixes by Micah Cowan: make mouse work properly beyond >127 on signedNicholas Marriott
char architectures and properly parse $TMUX by stopping the socket path at the first comma.
2011-01-23Set $TMUX without the session when background jobs are run.Nicholas Marriott
2011-01-12Use TMPDIR if set, from Han Boetes.Nicholas Marriott
2011-01-08Move all calls to fcntl(...O_NONBLOCK) into a function and clear theNicholas Marriott
flag on the stdio file descriptors before closing them (fixes things like "tmux ls && cat").
2011-01-03Support for UTF-8 mouse input (\033[1005h). This was added in xterm 262Nicholas Marriott
and supports larger terminals than the older way. If the new mouse-utf8 option is on, UTF-8 mouse input is enabled for all UTF-8 terminals. The option defaults to on if LANG etc are set in the same manner as the utf8 option. With help and based on code from hsim at gmx.li.
2011-01-01Move the user-visible parts of all options (names, types, limit, defaultNicholas Marriott
values) together into one set of tables in options-table.c. Also clean up and simplify cmd-set-options.c and move a common print function into option-table.c.
2010-12-30Change from a per-session stack of buffers to one global stack which isNicholas Marriott
much more convenient and also simplifies lot of code. This renders copy-buffer useless and makes buffer-limit now a server option. By Tiago Cunha.
2010-12-19Add other-pane-height and other-pane-width options, allowing the widthNicholas Marriott
or height of the smaller panes in the main-horizontal and main-vertical layouts to be set. Mostly from David Goodlad.
2010-12-08In the built-in layouts, distribute the panes more evenly. Set theNicholas Marriott
default value of main-pane-width to 80, rather than 81. By Micah Cowan.
2010-12-06Add an option to alert (monitor) for silence (lack of activity) in aNicholas Marriott
window. From Thomas Adam.
2010-11-29If VISUAL or EDITOR contains "vi", configure mode-keys and status-keysNicholas Marriott
to vi. Based on a diff from martynas@, previously requested by a couple of other people.
2010-11-11Add XAUTHORITY to update-environment, requested by Andreas Kloeckner.Nicholas Marriott
2010-10-18Merge the before and after attach client code into one in client.cNicholas Marriott
(instead of two in tmux.c and client.c).
2010-10-16Make stdio blocking again before calling shell command with -c.Nicholas Marriott
2010-10-16Trying to set FD_CLOEXEC on every fd is a lost cause, just useNicholas Marriott
closefrom() before exec.
2010-10-14Use an explicit event rather than event_once for the main event so itNicholas Marriott
can be removed when the client becomes ready.
2010-09-26Two new options:Nicholas Marriott
- server option "exit-unattached" makes the server exit when no clients are attached, even if sessions are present; - session option "destroy-unattached" destroys a session once no clients are attached to it. These are useful for preventing tmux remaining in the background where it is undesirable and when using tmux as a login shell to keep a limit on new sessions.
2010-08-19Do not call event_del() for signals after fork(), just use sigaction()Nicholas Marriott
directly instead - calling libevent functions after fork() w/o event_reinit() is a bad idea, even if in this case it was harmless.
2010-08-04switch back to kqueue for now, since (a) kqueue has been fixed to dealTheo de Raadt
with strange devices and (b) since there appears to be a bull in the poll code in libevent as well... requested by nicm who is away
2010-07-24kqueue(2) is currently broken when used with /dev/null and a few otherNicholas Marriott
devices. An upcoming fix for some problems with the client stdout/stderr handling relies on it working, so make tmux force libevent to use poll(2) via EVENT_NOKQUEUE, until we have fixed kqueue.
2010-07-11Return the command client return code with MSG_EXIT now that MSG_ERROR andNicholas Marriott
MSG_PRINT are unused. New clients should be compatible with old tmux servers but vice versa may print an error.
2010-06-28Send all three of stdin, stdout, stderr from the client to the server, so thatNicholas Marriott
commands can directly make use of them. This means that load-buffer and save-buffer can have "-" as the file to read from stdin or write to stdout. This is a protocol version bump so the tmux server will need to be restarted after upgrade (or an older client used).
2010-06-27Store the current working directory in the session, change the default-pathNicholas Marriott
option to default to empty and make that mean that the stored session CWD is used.
2010-06-27New option, detach-on-destroy, to set what happens to a client when the sessionNicholas Marriott
it is attached to is destroyed. If on (the default), it is detached; if off, it is switched to the most recently active session.
2010-06-26Setting the cmdlist pointer in the bind-key to NULL to prevent it being freedNicholas Marriott
after the command is executing is bogus because it may still be needed if the same command is going to be executed again (for example if you "bind-key a bind-key b ..."). Making a copy is hard, so instead add a reference count to the cmd_list. While here, also print bind-key -n and the rest of the flags properly. Fixes problem reported by mcbride@.
2010-05-14Colour+attribute options for status line alerts, from Alex Alexander.Nicholas Marriott
2010-05-04Put this back in with the initialisation in the right order.Nicholas Marriott
2010-05-04Revert last change, it appears to be broken somehow.Nicholas Marriott
2010-05-03Make signal handler setup/teardown two common functions instead of six,Nicholas Marriott
and reset SIGCHLD after fork to fix problems with some shells. From Romain Francois.
2010-04-28Make the active pane border have a green foreground instead ofNicholas Marriott
background by default.
2010-04-18Catch SIGCHLD to avoid a zombie, from patrick keshishian.Nicholas Marriott
2010-02-22Option to set the characters considered word separators in copy mode, fromNicholas Marriott
Micah Cowan.
2010-02-08Add an option to disable the smcup/rmcup alternate screen behaviour insideNicholas Marriott
tmux. From clemens fischer.
2010-02-06Change nested check to compare server socket path rather than just assumingNicholas Marriott
that if $TMUX is set it is nested. From Micah Cowan.