aboutsummaryrefslogtreecommitdiff
path: root/tmux.h
Commit message (Collapse)AuthorAge
...
* Sync OpenBSD patchset 806:Tiago Cunha2010-12-22
| | | | | | | | | | | Store sessions in an RB tree by name rather than a list, this is tidier 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.
* Sync OpenBSD patchset 803:Tiago Cunha2010-12-22
| | | | | | Dead sessions are never on the active sessions list, so the SESSION_DEAD flag is effectively unused. Remove it.
* Sync OpenBSD patchset 802:Tiago Cunha2010-12-22
| | | | | Use pointer rather than index for the client's last session.
* Sync OpenBSD patchset 801:Tiago Cunha2010-12-22
| | | | | | | Unify the way sessions are used by callbacks - store the address and use the reference count, then check it is still on the global sessions list in the callback.
* 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.
* Make the prompt history global for all clients which is much more usefulNicholas Marriott2010-12-11
| | | | | than per-client history.
* Add an option to alert (monitor) for silence (lack of activity) in aNicholas Marriott2010-12-06
| | | | | window. From Thomas Adam.
* PatchSet 789Nicholas Marriott2010-12-06
| | | | | | | | | | | | | | | | | | | | Date: 2010/11/22 21:13:13 Author: nicm Branch: HEAD Tag: (none) Log: There is somewhere that WINDOW_HIDDEN is getting set when it shouldn't be and I can't find it, but the flag itself is a useless optimisation that only applies to automatic-resize windows, so just dispose of it entirely. Fixes problems reported by Nicholas Riley. Members: resize.c:1.5->1.6 tmux.h:1.246->1.247 tty.c:1.92->1.93
* PatchSet 783Nicholas Marriott2010-12-06
| | | | | | | | | | | | | Date: 2010/11/11 20:51:30 Author: nicm Branch: HEAD Tag: (none) Log: Declaration in header should be extern. Members: tmux.h:1.245->1.246
* |---------------------Nicholas Marriott2010-12-06
| | | | | | | | | | | | | | | | | | |PatchSet 781 |Date: 2010/10/29 21:11:57 |Author: nicm |Branch: HEAD |Tag: (none) |Log: |We now send argv to the server after parsing it in the client to get the |command, so the client should not modify it. Instead, take a copy. Fixes |parsing command lists, reported by mcbride@. | |Members: | cmd-list.c:1.5->1.6 | cmd.c:1.45->1.46 | tmux.h:1.244->1.245
* Sync OpenBSD patchset 780:Tiago Cunha2010-10-24
| | | | | | Add a last-pane command (bound to ; by default). Requested ages ago by somebody whose name I have forgotten.
* Sync OpenBSD patchset 777:Tiago Cunha2010-10-24
| | | | | | Merge the before and after attach client code into one in client.c (instead of two in tmux.c and client.c).
* Sync OpenBSD patchset 767:Tiago Cunha2010-10-09
| | | | | Nuke a leftover RB tree declaration spotted by blambert.
* Sync OpenBSD patchset 766:Tiago Cunha2010-10-09
| | | | | | | | | | | | | | | Two new options: - 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.
* Sync OpenBSD patchset 762:Tiago Cunha2010-09-18
| | | | | | | | | | Use UTF-8 line drawing characters on UTF-8 terminals. Fixes some stupid terminals (I'm looking at you, putty) which disable the vt100 ACS mode switching sequences in UTF-8 mode. Also on terminals without ACS at all, use ASCII equivalents where obvious.
* Sync OpenBSD patchset 759:Tiago Cunha2010-09-10
| | | | | | | | | Add -n and -p flags to switch-client to move to the next and previous session (yes, it doesn't match window/pane, but so what, nor does switch-client). Based on a diff long ago from "edsouza".
* Solaris 9 has no stdint.h, ugh. Reported by a couple of people mostNicholas Marriott2010-09-07
| | | | | recently Timothy Larson.
* Sync OpenBSD patchset 751:Tiago Cunha2010-08-29
| | | | | | | Do not call event_del() for signals after fork(), just use sigaction() directly instead - calling libevent functions after fork() w/o event_reinit() is a bad idea, even if in this case it was harmless.
* Sync OpenBSD patchset 745:Tiago Cunha2010-08-11
| | | | | | | | | | | | Change the way backoff works. Instead of stopping reading from the pty when the client tty backs up too much, just stop updating the tty and only update the internal screen. Then when the tty recovers, force a redraw. This prevents a dodgy client from causing other clients to go into backoff while still allowing tmux to be responsive (locally) when seeing lots of output.
* Sync OpenBSD patchset 741:Tiago Cunha2010-08-09
| | | | | | | | | | | | | | | | | | | | When changing so that the client passes its stdout and stderr as well as stdin up to the server, I forgot one essential point - the tmux server could now be both the producer and consumer. This happens when tmux is run inside tmux, as well as when piping tmux commands together. So, using stdio(3) was a bad idea - if sufficient data was written, this could block in write(2). When that happened and the server was both producer and consumer, it deadlocks. Change to use libevent bufferevents for the client stdin, stdout and stderr instead. This is trivial enough for output but requires a callback mechanism to trigger when stdin is finished. This relies on the underlying polling mechanism for libevent to work with whatever devices to which the user could redirect stdin, stdout or stderr, hence the change to use poll(2) over kqueue(2) for tmux.
* Sync OpenBSD patchset 735:Tiago Cunha2010-07-17
| | | | | | Make pane/window wrapping more logical (so with 10 windows, +10 from window 5 stays in the same place), and tidy the code. From Tiago Cunha.
* Sync OpenBSD patchset 734:Tiago Cunha2010-07-17
| | | | | | | | | Return the command client return code with MSG_EXIT now that MSG_ERROR and MSG_PRINT are unused. New clients should be compatible with old tmux servers but vice versa may print an error.
* Sync OpenBSD patchset 733:Tiago Cunha2010-07-02
| | | | | replace some magic mouse constants with defines for clarity. ok nicm
* Sync OpenBSD patchset 732:Tiago Cunha2010-07-02
| | | | | | | Custom layouts. list-windows command displays the layout as a string (such as "bb62,159x48,0,0{79x48,0,0,79x48,80,0}") and it can be applied to another window (with the same number of panes or fewer) using select-layout.
* Sync OpenBSD patchset 731:Tiago Cunha2010-07-02
| | | | | | | | | | Send all three of stdin, stdout, stderr from the client to the server, so that 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).
* Sync OpenBSD patchset 730:Tiago Cunha2010-07-02
| | | | | | | Store the current working directory in the session, change the default-path option to default to empty and make that mean that the stored session CWD is used.
* Sync OpenBSD patchset 727:Tiago Cunha2010-07-02
| | | | | | | | | | | | | Setting the cmdlist pointer in the bind-key to NULL to prevent it being freed 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@.
* Sync OpenBSD patchset 726:Tiago Cunha2010-06-22
| | | | | Add a choose-buffer command for easier use of the paste buffer stack.
* Sync OpenBSD patchset 725:Tiago Cunha2010-06-22
| | | | | | Extend the -t:+ and -t:- window targets for next and previous window to accept an offset such as -t:+2. From Tiago Cunha.
* Sync OpenBSD patchset 724:Tiago Cunha2010-06-22
| | | | | | Having a list of winlinks->alerts for each session is stupid, just store the alert flags directly in the winlink itself.
* Sync OpenBSD patchset 716:Tiago Cunha2010-06-06
| | | | | | | | | | | | | | | | | | | | Fix problems with window sizing seen by Raghavendra D Prabhu when starting tmux from .xinitrc. One of the very few things the server relies on the client for now is to pass through a message on SIGWINCH, but there is a condition where potentially a SIGWINCH may be lost during the transition from unattached (main.c) to attached (client.c). So trigger a size change immediately after the client installs its SIGWINCH handler. Also, when the terminal is resized, reset the scroll region and cursor position. Previously, we were clearing our saved idea of these, but in fact some terminals do not reset them on resize, so this caused problems during redraw. While here make a resize to the same size not cause a redraw and rename the tmux.out output log file to include the tmux PID.
* Sync OpenBSD patchset 710:Tiago Cunha2010-06-06
| | | | | | | | | | When the mode-mouse option is on, support dragging to make a selection in copy mode. Also support the scroll wheel, although xterm strangely does not ignore it in application mouse mode, causing redraw artifacts when scrolling up (other terminals appear to be better behaved).
* Use a macro-based mask for obtaining a key or modifier-set from the combination.Micah Cowan2010-06-05
| | | | | Display C-@, etc, as C-Space, in list-keys.
* Pass in the session, rather than the client, to window modes' key() function.Micah Cowan2010-05-22
| | | | | We were only ever using the client to find the session anyway.
* Sync OpenBSD patchset 697:Tiago Cunha2010-05-14
| | | | | | | Identical behaviour to select-prompt can now be obtained with command-prompt, so remove select-prompt and change ' to be bound to command-prompt -p index "select-window -t :%%".
* Sync OpenBSD patchset 696:Tiago Cunha2010-05-14
| | | | | | | Make signal handler setup/teardown two common functions instead of six, and reset SIGCHLD after fork to fix problems with some shells. From Romain Francoise.
* Run job commands explicitly in the global enviroment (which can beNicholas Marriott2010-04-06
| | | | | | modified with setenv -g) rather than with the environment tmux started with.
* Squash a function that is only called in a callback into theNicholas Marriott2010-04-06
| | | | | callback function.
* Stupid style nits.Nicholas Marriott2010-04-06
|
* Merge output (more) and copy modes into one single mode (called copy).Micah Cowan2010-04-05
|
* Nuke unused functions.Nicholas Marriott2010-03-27
|
* Jump-forward, jump-backward in copy mode, based on vi's F and f commands.Micah Cowan2010-03-16
|
* Support up, down, left, right movement through panes with -UDLR flags toNicholas Marriott2010-03-15
| | | | | | | | select-pane. Also remove up- and down-pane: equivalent behaviour is now available using -t :.+ and -t :.-.
* New input parser based on http://vt100.net/emu/dec_ansi_parser.Nicholas Marriott2010-03-15
|
* Sync OpenBSD patchset 658:Tiago Cunha2010-03-08
| | | | | | | | Permit keys in copy mode to be prefixed by a repeat count, entered with [1-9] in vi mode, or M-[1-9] in emacs mode. From Micah Cowan, tweaked a little by me.
* Sync OpenBSD patchset 648:Tiago Cunha2010-02-26
| | | | | | copy mode uses the real screen as backing and if it is updated while copying, strange things can happen. So, freeze reading from the pty while in copy mode.
* Sync OpenBSD patchset 644:Tiago Cunha2010-02-18
| | | | | | Add "N" key to search the opposite way from the last search (reverse of "n"), from Micah Cowan.
* Sync OpenBSD patchset 640:Tiago Cunha2010-02-08
| | | | | Use the array.h code for the causes list.
* Sync OpenBSD patchset 639:Tiago Cunha2010-02-08
| | | | | | Support attaching a client read-only with a new -r flag to the attach-session command.
* Sync OpenBSD patchset 636:Tiago Cunha2010-02-08
| | | | | Rectangle copy support, from Robin Lee Powell.