aboutsummaryrefslogtreecommitdiff
path: root/server-fn.c
Commit message (Collapse)AuthorAge
...
| * Honour renumber-windows when unlinking a window, from Thomas Adam.nicm2015-04-19
| |
| * Rewrite of tmux mouse support which was a mess. Instead of havingnicm2015-04-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | options for "mouse-this" and "mouse-that", mouse events may be bound as keys and there is one option "mouse" that turns on mouse support entirely (set -g mouse on). See the new MOUSE SUPPORT section of the man page for description of the key names and new flags (-t= to specify the pane or window under mouse as a target, and send-keys -M to pass through a mouse event). The default builtin bindings for the mouse are: bind -n MouseDown1Pane select-pane -t=; send-keys -M bind -n MouseDown1Status select-window -t= bind -n MouseDrag1Pane copy-mode -M bind -n MouseDrag1Border resize-pane -M To get the effect of turning mode-mouse off, do: unbind -n MouseDrag1Pane unbind -temacs-copy MouseDrag1Pane The old mouse options are now gone, set-option -q may be used to suppress warnings if mixing configuration files.
* | Merge branch 'obsd-master'Thomas Adam2015-04-19
|\|
| * Fix some format specifier nits, from Ben Boeckel.nicm2015-03-31
| |
* | Merge branch 'obsd-master'Thomas Adam2015-01-10
|\|
| * Unzoom before kill, from Thomas Adam.nicm2015-01-06
| |
* | No need for $Id$ now.Nicholas Marriott2014-11-08
| |
* | Merge branch 'obsd-master'Thomas Adam2014-10-21
|\| | | | | | | | | | | | | | | | | | | Conflicts: Makefile cmd-list-commands.c cmd-suspend-client.c job.c tmux.h xmalloc.c
| * Tidy up some includes.nicm2014-10-20
| |
* | Merge branch 'obsd-master'Thomas Adam2014-04-23
|\| | | | | | | | | | | | | Conflicts: Makefile tmux.1 window.c
| * Some more long lines.nicm2014-04-17
| |
* | Use utempter to update utmp if it's around for configure, from madmaverick9 atNicholas Marriott2014-02-24
| | | | | | | | roxxmail dot eu.
* | Merge branch 'obsd-master'Thomas Adam2014-02-16
|\| | | | | | | | | | | Conflicts: tmux.1 tmux.c
| * Style nit - no space between function name and bracket.nicm2014-02-14
| |
| * Alter how tmux handles the working directory to internally use filenicm2013-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | descriptors rather than strings. - Each session still has a current working directory. - New sessions still get their working directory from the client that created them or its attached session if any. - New windows are created by default in the session working directory. - The -c flag to new, neww, splitw allows the working directory to be overridden. - The -c flag to attach let's the session working directory be changed. - The default-path option has been removed. To get the equivalent to default-path '.', do: bind c neww -c $PWD To get the equivalent of default-path '~', do: bind c neww -c ~ This also changes the client identify protocol to be a set of messages rather than one as well as some other changes that should make it easier to make backwards-compatible protocol changes in future.
| * Similarly for MSG_COMMAND - allow full imsg limit not arbitrary 2048.nicm2013-10-10
| |
| * Grouped sessions were being leaked on destroy, correctly free them.nicm2013-10-10
| |
* | Alter how tmux handles the working directory to internally use file descriptorsNicholas Marriott2013-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rather than strings. - Each session still has a current working directory. - New sessions still get their working directory from the client that created them or its attached session if any. - New windows are created by default in the session working directory. - The -c flag to new, neww, splitw allows the working directory to be overridden. - The -c flag to attach let's the session working directory be changed. - The default-path option has been removed. To get the equivalent to default-path '.', do: bind c neww -c $PWD To get the equivalent of default-path '', do: bind c neww -c '#{pane_current_path}' The equivalent of default-path '~' is left as an exercise for the reader. This also changes the client identify protocol to be a set of messages rather than one as well as some other changes that should make it easier to make backwards-compatible protocol changes in future.
* | Similarly for MSG_COMMAND - allow full imsg limit not arbitrary 2048.Nicholas Marriott2013-10-06
| |
* | Instead of fixed size buffers for some messages, send only the string length.Nicholas Marriott2013-10-06
| |
* | Grouped sessions were being leaked on destroy, correctly free them.Nicholas Marriott2013-08-01
| |
* | Merge branch 'obsd-master'Thomas Adam2013-07-06
|\|
| * When the session option renumber-window is used, ensure we iterate overNicholas Marriott2013-07-05
| | | | | | | | | | all sessions in that group when the winlinks are reordered, otherwise the winlink lists are out of sync with one another. From Thomas Adam.
* | Merge branch 'obsd-master'Thomas Adam2013-04-23
|\| | | | | | | Sync from OpenBSD.
| * Call recalculate_sizes() after killing window in case it is in a groupedNicholas Marriott2013-04-22
| | | | | | | | session, from Daniel Ralston.
| * Use single stdout and stderr for control clients.Nicholas Marriott2013-03-25
| |
| * Rename session idx to session id throughout and add $ prefix to targetsNicholas Marriott2013-03-25
| | | | | | | | to use it, extended from a diff from George Nachman.
| * Add resize-pane -Z to temporary zoom the active pane to occupy the fullNicholas Marriott2013-03-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | window or unzoom (restored to the normal layout) if it already zoomed, bound to C-b z by default. The pane is unzoomed on pretty much any excuse whatsoever. We considered making this a new layout but the requirements are quite different from layouts so decided it is better as a special case. Each current layout cell is saved, a temporary one-cell layout generated and all except the active pane set to NULL. Prompted by suggestions and scripts from several. Thanks to Aaron Jensen and Thiago Padilha for testing an earlier version.
| * Add a command queue to standardize and simplify commands that call otherNicholas Marriott2013-03-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * Prevent lock on control clients, not on others.Nicholas Marriott2013-03-22
| |
| * No more lint means no more ARGSUSED.Nicholas Marriott2013-03-22
| |
| * Add various checks to turn off bits that can't work in control modeNicholas Marriott2013-03-21
| | | | | | | | (such as lock).
| * If stdin in the client is enable immediately, tmux will eat anythingNicholas Marriott2012-09-03
| | | | | | | | | | | | | | sent to stdin before it is needed, which can be inconvenient (eg pasting commands). Instead, start with stdin disabled and reuse MSG_STDIN from server->client to mean that stdin should be enabled. Based on a diff from Chris Johnsen.
| * xfree is not particularly helpful, remove it. From Thomas Adam.Nicholas Marriott2012-07-10
| |
| * Add a skeleton mode to tmux (called "control mode") that let's tmuxNicholas Marriott2012-06-18
| | | | | | | | | | | | | | 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.
| * Add a helper function to send ready message.Nicholas Marriott2012-05-22
| |
| * Instead of passing stdin/stdout/stderr file descriptors over imsg andNicholas Marriott2012-05-21
| | | | | | | | | | | | | | | | | | | | | | handling them in the server, handle them in the client and pass buffers over imsg. This is much tidier for some upcoming changes and the performance hit isn't critical. The tty fd is still passed to the server as before. This bumps the tmux protocol version so new clients and old servers are incompatible.
| * Add a flag to move-window to renumber the windows in a session (closingNicholas Marriott2012-04-29
| | | | | | | | | | any gaps) and add an option to do this automatically each time a window is killed. From Thomas Adam.
| * Add notify hooks for various events, the functions are currently emptyNicholas Marriott2012-03-17
| | | | | | | | stubs but will be filled in for control mode later. From George Nachman.
| * Check event_initialized before event_del if event may not have been setNicholas Marriott2012-03-17
| | | | | | | | up; libevent2 complains about this. Reported by Moriyoshi Koizumi.
| * Call bufferevent_free before closing file descriptor associated with itNicholas Marriott2012-01-29
| | | | | | | | | | or bugs in $EventMechanism on $OtherOS makes libevent get it's knickers in a twist. From Dylan Alex Simon.
| * Support for \e[3J to clear the history. Also send the correspondingNicholas Marriott2011-10-23
| | | | | | | | terminfo code (E3) before locking.
| * Mark dead panes with some text saying they are dead, suggested by andNicholas Marriott2011-09-05
| | | | | | | | with help from Randy Stauner.
| * Set $TMUX without the session when background jobs are run.Nicholas Marriott2011-01-23
| |
| * Don't reset the activity timer for unattached sessions every second,Nicholas Marriott2011-01-01
| | | | | | | | | | | | | | this screws up the choice of most-recently-used. Instead, break the time update into a little function and do it when the session is attached. Pointed out by joshe@.
| * server_kill_window can modify the RB tree so don't use RB_FOREACH, fixesNicholas Marriott2010-12-23
| | | | | | | | crash seen by Dan Harnett.
| * Store sessions in an RB tree by name rather than a list, this is tidierNicholas Marriott2010-12-21
| | | | | | | | | | | | | | | | | | and allows them to easily be shown sorted in various lists (list-sessions/choose-sessions). Keep a session index which is used in a couple of places internally but make it an ever-increasing number rather than filling in gaps with new sessions.
| * Use pointer rather than index for the client's last session.Nicholas Marriott2010-12-20
| |
| * Track the last session for a client and add a flag to switch-client andNicholas Marriott2010-12-11
| | | | | | | | a key binding (L) to move a client back to its last session.
| * Set cause when failing due to linking a window to itself, from MartinNicholas Marriott2010-10-09
| | | | | | | | Pieuchot.