summaryrefslogtreecommitdiffstats
path: root/usr.bin/tmux/tmux.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Add support for BCE (background colour erase). This makes various escapenicm2016-10-131-30/+36
| | | | | | | | | | | | sequences (notable EL and ED but also IL, DL, ICH, DCH) create blank cells using the current background colour rather than the default colour. On modern systems BCE doesn't really have many benefits, but most other terminals now support it, some (lazy) applications rely on it, and it is not hard to include now that we have pane background colours anyway. Mostly written by Sean Haugh.
* Some improvements and bug fixes for hooks:nicm2016-10-131-1/+2
| | | | | | | | | | | | | | | | | | | | | - Prepare the state again before the "after" hooks are run, because the command may have killed or moved windows. - Use the hooks list from the newly prepared target, not the old hooks list (only matters for new-session really). - Correctly detect an invalid current state and ignore it in cmd_find_target ("killw; swapw"). - Change neww, new, killp, killw, splitw, swapp, swapw to update the current state (used if no explicit target is given) to something more useful after they have finished. For example, neww changes it to the newly created window. Hooks are still relatively new and primitive so there are likely to be more changes to come. Parts based on bug reports from Uwe Werler and Iblis Lin.
* bind-key -c has gone, remove from man page, and unused table declarations.nicm2016-10-121-3/+1
|
* Drop the edit mode key tables and just use fixed key bindings for thenicm2016-10-121-37/+2
| | | | command prompt.
* Redraw selection in tty_draw_line, so it appears when redrawing wholenicm2016-10-121-1/+3
| | | | pane. Reported by Theo Buehler.
* The repeat prompt in both emacs and vi (and the old one in tmux) doesn'tnicm2016-10-121-2/+3
| | | | | | support line editing and instead executes a command as soon as a non-number key is pressed. Add a -N flag to command-prompt for the same in copy mode. Reported by Theo Buehler.
* Some other stuff that can be local to one file.nicm2016-10-111-10/+2
|
* Add static in window-*.c and move some internal functions out of tmux.h.nicm2016-10-111-22/+1
|
* Support double and triple clicks (they are cumulative, so double isnicm2016-10-111-1/+15
| | | | | fired then triple), and use for select-word and select-line in copy mode. Inspired by a different solution from Omar Sandoval.
* Fundamental change to how copy mode key bindings work:nicm2016-10-111-57/+9
| | | | | | | | | | | | | | | | | | | | | | | | | The vi-copy and emacs-copy mode key tables are gone, and instead copy mode commands are bound in one of two normal key tables ("copy-mode" or "copy-mode-vi"). Keys are bound to "send-keys -X copy-mode-command". So: bind -temacs-copy C-Up scroll-up bind -temacs-copy -R5 WheelUpPane scroll-up Becomes: bind -Tcopy-mode C-Up send -X scroll-up bind -Tcopy-mode WheelUpPane send -N5 -X scroll-up This allows the full command parser and command set to be used - for example, we can use the normal command prompt for searching, jumping, and so on instead of a custom one: bind -Tcopy-mode C-r command-prompt -p'search up' "send -X search-backward '%%'" command-prompt also gets a -1 option to only require on key press, which is needed for jumping. The plan is to get rid of mode keys entirely, so more to come eventually.
* Support UTF-8 entry into the command prompt.nicm2016-10-111-2/+4
|
* Do not allow the opposite pane to resize when dragging with the mousenicm2016-10-101-2/+2
| | | | | because it is not possible to keep the mouse on the border when the minimum size is reached.
* Some more static.nicm2016-10-101-3/+1
|
* Make the CLIENT_STATUS flag imply that pane status lines are redrawn ifnicm2016-10-091-1/+2
| | | | | they are enabled and break the actual screen generation code into a separate function. Fixes problems reported by Romain Francoise.
* Keep buffer creation time and add accessors for it and the order number.nicm2016-10-051-1/+3
|
* Rate limit TIOCSWINSZ on a timer to avoid programs getting hammered withnicm2016-09-281-1/+3
| | | | | SIGWINCH when the size changes rapidly. To help a problem reported by Rui Pinheiro.
* Swap watermarks from high (4096) to low (128) when we get full buffersnicm2016-09-161-3/+16
| | | | | | | | | into the read callback several times in succession; swap back when we see empty buffers several times. This hopefully limits how much programs that print a lot for a long period can monopolize tmux (like large, fast compiling), without penalizing programs that print a lot briefly (like most curses applications). Helps a lot for me, the actual numbers may need tweaking later.
* Allow repeat count to be specified in mode key tables with bind-key -R,nicm2016-09-121-2/+3
| | | | | and set the default repeat count to 5 for WheelUp and WheelDown in copy-mode.
* Add support for performing a full width split (with splitw -f), rathernicm2016-09-041-2/+2
| | | | than splitting the current cell. From Stephen Kent.
* Remember the number of lines scrolled into the history (versus clearednicm2016-09-021-1/+2
| | | | | | into the history) and when resizing only use scrolled lines and not cleared lines (which are probably not intended to reappear). From Chaoren Lin.
* Fix minimum size when pane status line is enabled, reported by Y Petremann.nicm2016-08-031-5/+4
|
* Tweak output of environment logging.nicm2016-07-151-2/+2
|
* Log environment to new panes.nicm2016-07-151-1/+2
|
* Don't update cells in each block of data read from a pane immediately,nicm2016-07-151-16/+25
| | | | | | instead track them as change (dirty) and update them once at the end, saves much time if repeatedly writing the same cell. Also fix comparison of cells being equal in a few places (memcmp is not enough).
* Instead of representing colours in several different forms with variousnicm2016-07-151-22/+11
| | | | | | cell flags, convert to use an int with flags marking 256 or RGB colours in the top byte (except in cells, which we don't want to make any bigger). From Brad Town.
* Allow a command to be specified to display-panes, similar tonicm2016-06-161-2/+4
| | | | command-prompt, rather than always just selecting the pane.
* Copy mode needs to keep the original grid intact so it can copy from itnicm2016-06-151-1/+4
| | | | | | if needed, so it disables reading from the pane. This can be problem with some programs. So make tmux automatically exit all modes after 180 seconds of inactivity and if there is pending output.
* Cache selected state so that cells going from selected to unselected are notnicm2016-06-061-1/+2
| | | | skipped, reported by Omar Sandoval.
* Insert new panes after the pane being split in the list rather thannicm2016-06-061-2/+3
| | | | | always after the active pane. This is more sensible when doing it with commands rather than keys.
* Cache the window styles and do not look up the window-style optionsnicm2016-05-301-1/+5
| | | | unless they have changed.
* Use getprogname() instead of __progname to make portability easier.nicm2016-05-271-2/+1
|
* - Rework load_cfg() error handling a little.tim2016-05-121-2/+2
| | | | | | - Add -q to source-file to suppress errors about nonexistent files. Input and OK nicm@
* Use the same code for half page scrolling as full, from Michal Mazurek.nicm2016-05-011-2/+2
|
* tty_client_ready can not be internal to tty.c again.nicm2016-04-301-2/+1
|
* Add option to include status text in the pane borders. Ifnicm2016-04-291-1/+4
| | | | | | | | | pane-border-status is set to "top" or "bottom" (rather than "off"), every pane has a permanent top or bottom border containing the text from pane-border-format. Based on a diff sent long ago by Jonathan Slenders, mostly rewritten and simplified by me.
* The backoff timer is causing no end of trouble with disconnected clientsnicm2016-04-291-11/+3
| | | | | stopping data in attached ones. So get rid of it and see how we get on with just a high watermark on each pane.
* Make the grid_cell passed into screen_write_* const.nicm2016-04-291-6/+6
|
* Add next/previous paragraph, from J Raynor.nicm2016-04-271-1/+3
|
* Instead of reusing MouseUp at the finish of a drag, add a new keynicm2016-03-181-1/+4
| | | | MouseDragEnd. It can be useful to bind them separately in copy mode.
* Handle wcwidth() and mbtowc() failures in better style and dropnicm2016-03-021-3/+2
| | | | | characters where we can't find the width (wcwidth() fails) on input, the same as we drop invalid UTF-8. Suggested by schwarze@.
* Use system wcwidth() instead of carrying around UTF-8 width tables.nicm2016-03-011-5/+5
|
* Whoops, need this for the previous reverse trim commit too.nicm2016-01-311-1/+2
|
* Support for RGB colour, using the extended cell mechanism to avoidnicm2016-01-291-3/+19
| | | | | | | | wasting unnecessary space. The 'Tc' flag must be set in the external TERM entry (using terminal-overrides or a custom terminfo entry), if not tmux will map to the closest of the 256 or 16 colour palettes. Mostly from Suraj N Kurapati, based on a diff originally by someone else.
* Split out getting the current state from the target search so it can benicm2016-01-191-4/+8
| | | | replaced if we already know the current.
* I no longer use my SourceForge address so replace it.nicm2016-01-191-2/+2
|
* Add hooks for alerts (bell, silence, activity), from Thomas Adam.nicm2016-01-161-1/+3
|
* A couple of missing printflike attributes, from Andrey Starodubtsev.nicm2016-01-151-2/+2
|
* send-keys -R should reset the input parser to ground state (so it can benicm2015-12-161-2/+2
| | | | used to escape from, for example, printf '\033]2;').
* Add infrastructure to work out the best target given a pane or windownicm2015-12-161-6/+13
| | | | alone and use it to add pane_died and pane_exited hooks.
* Some hooks API changes to fire a hook while waiting another cmdq andnicm2015-12-151-2/+8
| | | | infrastructure that will be needed soon.