aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* Look for setrgbf and setrgbb terminfo extensions for RGB colour. This isnicm2017-05-31
| | | | | the most reasonable of the various (some bizarre) suggestions for capabilities.
* Rewrite of choose mode, both to simplify and tidy the code and to addnicm2017-05-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | some modern features. Now the common code is in mode-tree.c, which provides an API used by the three modes now separated into window-{buffer,client,tree}.c. Buffer mode shows buffers, client mode clients and tree mode a tree of sessions, windows and panes. Each mode has a common set of key bindings plus a few that are specific to the mode. Other changes are: - each mode has a preview pane: for buffers this is the buffer content (very useful), for others it is a preview of the pane; - items may be sorted in different ways ('O' key); - multiple items may be tagged and an operation applied to all of them (for example, to delete multiple buffers at once); - in tree mode a command may be run on the selected item (session, window, pane) or on tagged items (key ':'); - displayed items may be filtered in tree mode by using a format (this is used to implement find-window) (key 'f'); - the custom format (-F) for the display is no longer available; - shortcut keys change from 0-9, a-z, A-Z which was always a bit weird with keys used for other uses to 0-9, M-a to M-z. Now that the code is simpler, other improvements will come later. Primary key bindings for each mode are documented under the commands in the man page (choose-buffer, choose-client, choose-tree). Parts written by Thomas Adam.
* Preserve search string when entering prompt again.nicm2017-05-30
|
* Add a flag to stop the prompt input being expanded.nicm2017-05-29
|
* Store a copy of the old status line, will be needed soon for new choose mode.nicm2017-05-29
|
* Function to count clients.nicm2017-05-29
|
* Add ||, && format operators and C: to search pane content.nicm2017-05-29
|
* Add m: for fnmatch(3) format matching.nicm2017-05-29
|
* Do not factor in screen_hsize() for the visible copy mode screen whennicm2017-05-29
| | | | | adjusting the selection, it should never have any useful history (and when it does, after resize, we shouldn't use it). From Michal Mazurek.
* Tweak text to mention initial size, from John Hood.nicm2017-05-29
|
* Support OSC 10 and 11 to set foreground and background colours, fromnicm2017-05-28
| | | | "bertnp" in GitHub issue 942.
* Change so that sessions created detached (-d or no client) are alwaysnicm2017-05-28
| | | | | 80x24 and the status line is not applied until they attach. Also make -x and -y work for control clients whether the session is detached or not.
* Also recalculate session sizes when refreh-client -C is used. GitHubnicm2017-05-28
| | | | issue 947.
* Tidy command prompt callbacks and pass in the client.nicm2017-05-17
|
* Line length and spaces to tabs.nicm2017-05-16
|
* Check the terminfo(5) U8 capability and disable using UTF-8 for ACS ifnicm2017-05-15
| | | | | | it is present and zero. This is useful for users with terminals or fonts that do not correctly support UTF-8 line drawing characters. GitHub issue 927, reported by Hiroaki Yamazoe and Akinori Hattori.
* Notify layout changed when choosing predefined layouts, from Joshua Brot.nicm2017-05-15
|
* The Konsole SU bug means it can't clear the entire scroll region (itnicm2017-05-15
| | | | | | ignores if >= size, not if > as I first thought). So we can't effectively fix it in code - remove the workarounds which just cause bugs on other terminals.
* Scroll the right number of lines off the region when clearing.nicm2017-05-13
|
* Some other unused variables.nicm2017-05-13
|
* Compare >= for columns not >.nicm2017-05-12
|
* Can scroll away full lines to clear them too.nicm2017-05-12
|
* Remove an unused variable.nicm2017-05-12
|
* When expanding a line in order to clear it, we need to use the defaultnicm2017-05-12
| | | | | background colour - there may be portions that we do not want to clear with the new background colour.
* Need to store bg for ECH.nicm2017-05-12
|
* Cannot rely on cursor position after DL and IL (some terminals move tonicm2017-05-12
| | | | column 0, some do not).
* Need to clear tty context before using it.nicm2017-05-12
|
* Only redraw single client, and tweak some logging.nicm2017-05-12
|
* Scrolling needs to use background colour.nicm2017-05-12
|
* Regions can't be smaller than 2 so don't try to clear them by scrolling if so.nicm2017-05-12
|
* Can use INDN to clear regions with default background colour if marginsnicm2017-05-12
| | | | are supported.
* ECH needs to use background colour.nicm2017-05-12
|
* Store copy mode search string in pane so search-again command works evennicm2017-05-12
| | | | | if you exit and reenter copy mode (it doesn't remember the position, just the search string), suggested by espie@.
* Clear to start of screen needs to use background colour.nicm2017-05-11
|
* Need to redraw out to cellsize (total cells used in a line) rather thannicm2017-05-11
| | | | | cellused (only non-space cells) because there may be cells with a nondefault background.
* Make environ_log prefix take a format.nicm2017-05-11
|
* Change how we resolve which pane is dragging when there are multiplenicm2017-05-11
| | | | | options - choose the largest pane, which is more likely to be the one the user wants to resize. Prompted by a report from Thomas Sattler.
* Move to the right cursor position before using spaces to clear.nicm2017-05-10
|
* Prevent control clients from affecting the session size until they havenicm2017-05-10
| | | | | specified a size with refresh-client -C. Prompted by a different change with the same purpose from George Nachman.
* We can use ECH to clear sections of lines, so use it for internal panesnicm2017-05-10
| | | | | (that don't touch an edge). Move all the tty clear code into two common functions rather than having the same bunch of checks everywhere.
* Expand formats in option names and add -F flag to do so in option values as ↵nicm2017-05-10
| | | | well.
* Insert copy mode bindings at the right place in the command queue.nicm2017-05-10
|
* If the target pane for send-keys in in a mode with a key table (that is,nicm2017-05-09
| | | | | | copy mode), then look the key up in the table and fire any command instead of delivering the key to the pane directly where it will be ignored. This makes C-b C-b (send-prefix) work in copy mode again.
* If the current screen was complex enough, it was possible to make redrawnicm2017-05-09
| | | | | | itself hit the "terminal can't keep up" check. To avoid this, record how much data we send during redraw (we know we will be starting with 0) and skip the check until it has been flushed. GitHub issue 912.
* Set current pane in rotate-window.nicm2017-05-09
|
* Add a format for the name of the pane's mode, lets it be used as anicm2017-05-07
| | | | conditional for key bindings.
* Up to now, tmux sees \033\033[OA as M-Up and since we turned onnicm2017-05-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | xterm-keys by default, generates \033[1;3A instead of \033\033[OA. Unfortunately this confuses vi, which doesn't understand xterm keys and now sees Escape+Up pressed within escape-time as Escape followed by A. The issue doesn't happen in xterm itself because it gets the keys from X and can distinguish between a genuine M-Up and Escape+Up. Because xterm can, tmux can too: xterm will give us \033[1;3A (that is, kUP3) for a real M-Up and \033\033OA for Escape+Up - in fact, we can be sure any \033 preceding an xterm key is a real Escape key press because Meta would be part of the xterm key instead of a separate \033. So change tmux to recognise both sequences as M-Up for its own purposes, but generate the xterm version of M-Up only if it originally received the xterm version from the terminal. This means we will return to sending \033\033OA instead of the xterm key for terminals that do not support xterm keys themselves, but there is no practical way around this because they do not allow us to distinguish between Escape+Up and M-Up. xterm style escape sequences are now the de facto standard for these keys in any case. Problem reported by jsing@ and subsequently by Cecile Tonglet in GitHub issue 907.
* Add some formats to look at the session window stack, suggested by Scottnicm2017-05-05
| | | | ROCHFORD.
* Some new notifications, mainly for active pane and current window andnicm2017-05-04
| | | | | | | | | | | session: pane-mode-changed window-pane-changed client-session-changed session-window-changed From Joshua Brot.
* Add a format for the last search string in copy mode and fix the promptnicm2017-05-03
| | | | so it can work when in -I, suggested by Suraj N Kurapati.