aboutsummaryrefslogtreecommitdiff
path: root/screen.c
Commit message (Collapse)AuthorAge
* Merge branch 'obsd-master'Thomas Adam2019-11-15
|\
| * Handle OSC 7 (a VTE extension) and put the result in a new format (pane_path).nicm2019-11-15
| |
* | Merge branch 'obsd-master'Thomas Adam2019-04-02
|\|
| * Store and restore cursor across reflow by working out a position basednicm2019-04-02
| | | | | | | | | | on unwrapped lines, rather than a grid offset. Fixes problems reported by Thomas Sattler and Paul de Weerd.
* | Merge branch 'obsd-master'Thomas Adam2019-03-20
|\|
| * Improve cursor positioning after reflow by storing the position as annicm2019-03-20
| | | | | | | | offset into the entire history before reflow and restoring it aftewards.
* | Merge branch 'obsd-master'Thomas Adam2019-01-15
|\|
| * Do not highlight characters which will not be copied, reported bynicm2019-01-15
| | | | | | | | Jaroslaw Rzeszotko.
* | Merge branch 'obsd-master'Thomas Adam2018-07-31
|\|
| * Move struct screen_sel into screen.c and tidy up members that are onlynicm2018-07-31
| | | | | | | | used by copy mode.
* | Merge branch 'obsd-master'Thomas Adam2018-07-04
|\|
| * Add accessors for grid linedata member, for some future work. From Dannicm2018-07-04
| | | | | | | | Aloni.
* | Merge branch 'obsd-master'Thomas Adam2017-11-15
|\|
| * Completely rewrite the reflow code to correctly handle double widthnicm2017-11-15
| | | | | | | | characters (previously they were not accounted for).
* | Merge branch 'obsd-master'Thomas Adam2017-11-02
|\|
| * There is no point in reflowing panes which have not changed width.nicm2017-11-02
| |
* | Merge branch 'obsd-master'Thomas Adam2017-10-06
|\|
| * Add support for the xterm(1) title stack, from Brad Town, GitHub issuenicm2017-10-05
| | | | | | | | 1075.
* | Linux build fixesThomas Adam2017-06-05
|/ | | | Linux doesn't have vis.h
* Be more strict about escape sequences that rename windows or set titles:nicm2017-06-04
| | | | | ignore any that not valid UTF-8 outright, and for good measure pass the result through our UTF-8-aware vis(3).
* Collect sequences of printable ASCII characters and process themnicm2017-02-08
| | | | | | | | | | | | | | | together instead of handling them one by one. This is significantly faster. Sequences are terminated when we reach the end of the line, fill the internal buffer, or a different character is seen by the input parser (an escape sequence, or UTF-8). Rather than writing collected sequences out immediately, hold them until it is necessary (another screen modification, or we consume all available data). This means we can discard changes that would have no effect (for example, lines that would just be scrolled off the screen or cleared). This reduces the total amount of data we write out to the terminal - not important for fast terminals, but a big help with slow (like xterm).
* Make the selection able to exist independent of the cursor position, sonicm2016-11-24
| | | | | | | | | | | | that it is not affected by scrolling. If MouseDragEnd1Pane is bound to the new "stop-selection" command: bind -Tcopy-mode MouseDragEnd1Pane stop-selection A selection made with the mouse will stay as it is after button 1 is released. (It also works bound to a key.) From Artem Fokin.
* Add support for BCE (background colour erase). This makes various escapenicm2016-10-13
| | | | | | | | | | | | 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.
* Redraw selection in tty_draw_line, so it appears when redrawing wholenicm2016-10-12
| | | | pane. Reported by Theo Buehler.
* Add static in window-*.c and move some internal functions out of tmux.h.nicm2016-10-11
|
* Loads more static, except for cmd-*.c and window-*.c.nicm2016-10-10
|
* Remember the number of lines scrolled into the history (versus clearednicm2016-09-02
| | | | | | into the history) and when resizing only use scrolled lines and not cleared lines (which are probably not intended to reappear). From Chaoren Lin.
* Don't update cells in each block of data read from a pane immediately,nicm2016-07-15
| | | | | | 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).
* Spelling error (incrased -> increased), from Josh Soref.nicm2016-06-10
|
* I no longer use my SourceForge address so replace it.nicm2016-01-19
|
* Couple of trivial style nits.nicm2015-12-28
|
* Count brackets in #{?...} so that nested conditional formats work, fromnicm2015-10-27
| | | | Daniel De Graaf.
* Only set default title to hostname on screens that are being used for anicm2015-08-28
| | | | window pane, no point in calling gethostname() for temporary screens.
* correctly use HOST_NAME_MAX.deraadt2015-01-11
| | | | | | | | | | | | | | | | | Some notes: POSIX HOST_NAME_MAX doesn't include the NUL. POSIX LOGIN_NAME_MAX and TTY_NAME_MAX do include the NUL. BSD MAXHOSTNAMELEN includes the NUL. Actually, most of the historical BSD MAX* defines did include the NUL, except for the historical mistake of utmp fields without NULs in the string, which directly led to strncpy.. just showing how error prone this kind of accounting is. CSRG did right. Somehow POSIX missed the memo on the concepts of carefulness and consistancy, and we are still paying the price when people trip over this. Of course, glibc is even more amazing (that is a hint to blackhats) ok guenther
* Add V for select line with vi(1) keys. From Juho Pohjala.nicm2014-11-06
|
* Tidy up some includes.nicm2014-10-20
|
* Add xreallocarray and remove nmemb argument from xrealloc.nicm2014-10-08
|
* Various minor style and spacing nits.nicm2014-09-01
|
* Fix two copy mode problems:nicm2014-08-11
| | | | | | | | | 1. In vi mode the selection doesn't include the last character if you moved the cursor up or left. 2. In emacs mode the selection includes the last character if you moved the cursor to the left. From Balazs Kezes.
* Three small changes from Tiago Cunha:nicm2014-01-09
| | | | | | - Check for truncation when copying path. - Don't need to use a temporary buffer in screen_set_title. - Include strerror in output when connecting to server fails.
* Don't let cursor position overflow when reflowing, from ChristopherNicholas Marriott2013-05-15
| | | | Collins.
* Rework reflow code so it does not do so much allocation which should beNicholas Marriott2013-03-21
| | | | faster with large histories.
* Automatically reflow wrapped lines when a pane is resized, requested byNicholas Marriott2013-02-05
| | | | many over the years and finally implemented by Richard Woodbury.
* xfree is not particularly helpful, remove it. From Thomas Adam.Nicholas Marriott2012-07-10
|
* Michael Krysiak points out that some terminals (eg mintty) have cursorNicholas Marriott2012-03-17
| | | | styles 5 and 6 too, so allow them to be set.
* Support DECSCUSR sequence to set the cursor style with two newNicholas Marriott2011-05-20
| | | | terminfo(5) extensions, Cs and Csr. Written by Ailin Nemui.
* Support xterm(1) cursor colour change sequences through terminfo(5) CcNicholas Marriott2011-05-20
| | | | | (set) and Cr (reset) extensions. Originally by Sean Estabrooks, tweaked by me and Ailin Nemui.
* Don't need vis.h anymore.Nicholas Marriott2011-05-04
|
* Don't use strnvis for the title as it breaks UTF-8. set-titles is nowNicholas Marriott2011-05-04
| | | | | off by default and we have to trust the terminal can understand what we send it anyway so there isn't any harm.
* Fix rectangle copy to behave like emacs - the cursor is not part of theNicholas Marriott2010-12-11
| | | | selection on the right edge but on the left it is.