aboutsummaryrefslogtreecommitdiff
path: root/screen.c
Commit message (Collapse)AuthorAge
* Add support for OSC 8 hyperlinks (a VTE extension now supported by othernicm2022-06-30
| | | | | | terminals such as iTerm2). Originally written by me then extended and completed by first Will Noble and later Jeff Chiang. GitHub issues 911, 2621, 2890, 3240.
* Spacing/style nits.nicm2022-05-30
|
* Preserve CRLF flag when respawning.nicm2022-04-01
|
* Add a cursor-style option, from Alexis Hildebrandt in GitHub issue 2960.nicm2021-11-03
|
* Add a cursor-colour option, from Alexis Hildebrandt in GitHub issuenicm2021-11-01
| | | | 2959.
* Separate "very visible" flag from blinking flag, it should not affectnicm2021-10-05
| | | | DECSCUSR. GitHub issue 2891.
* Fix parsing of aliases again (GitHub issue 2842), also make argumentnicm2021-09-09
| | | | parsing a bit simpler and fix the names of some client flags.
* Remove stray spaces after function names.nicm2021-08-20
|
* Improve logging of screen mode changes.nicm2021-06-10
|
* Change cursor style handling so tmux understands which sequences containnicm2021-06-10
| | | | | blinking and sets the flag appropriately, means that it works whether cnorm disables blinking or not. GitHub issue 2682.
* Add an "always" value to the extended-keys option to always forwardnicm2021-06-10
| | | | these keys to applications inside tmux.
* Fix so tmux correctly sends the cvvis (cursor very visible) capabilitynicm2021-03-12
| | | | | rather than sending it and then immediately undoing it with cnorm. Also turn it off when the cursor shape is changed like xterm.
* Always resize the original screen before copying when exiting thenicm2021-01-26
| | | | alternate screen, GitHub issue 2536.
* Do not leak path when freeing screen, from Sergey Nizovtsev.nicm2020-10-30
|
* Store and restore cursor position when copy mode is resized, fromnicm2020-05-16
| | | | Anindya Mukherjee.
* Update the cursor position when deleting lines from screens withoutnicm2020-04-22
| | | | history, GitHub issue 2173.
* A resize can realloc so cannot cache the value of the list pointer.nicm2020-04-18
|
* There is no point in keeping a bunch of different text buffers for eachnicm2020-04-18
| | | | | line when writing, we only need one as big as the line width - there can't be any more text than that since newer will overwrite older.
* Make sure the cursor position is still on screen after we have trimmednicm2020-04-17
| | | | empty lines. Also improve some log messages.
* Instead of fixing with the cursor position when the copied screen isnicm2020-04-15
| | | | | | created, resize it and let the resize/reflow code fix it up and return it. Solves various problems with cursor position and resizing when in copy mode. With Anindya Mukherjee.
* Use grid_empty_line rather than memset when adding new lines on resize.nicm2020-04-15
| | | | Also remove some old test code.
* Do not restore history flag if it was never set.nicm2020-04-07
|
* Move alternate screen into the screen rather than the pane.nicm2020-03-31
|
* Make list-keys description clearer in tmux.1 and remove an unused variable.nicm2020-02-05
|
* Instead of passing titles through vis() which doubles backslashes, justnicm2020-02-03
| | | | ignore any containing control characters or invalid UTF-8. GitHub issue 2070.
* Handle OSC 7 (a VTE extension) and put the result in a new format (pane_path).nicm2019-11-15
|
* 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.
* Improve cursor positioning after reflow by storing the position as annicm2019-03-20
| | | | offset into the entire history before reflow and restoring it aftewards.
* Do not highlight characters which will not be copied, reported bynicm2019-01-15
| | | | Jaroslaw Rzeszotko.
* Move struct screen_sel into screen.c and tidy up members that are onlynicm2018-07-31
| | | | used by copy mode.
* Add accessors for grid linedata member, for some future work. From Dannicm2018-07-04
| | | | Aloni.
* Completely rewrite the reflow code to correctly handle double widthnicm2017-11-15
| | | | characters (previously they were not accounted for).
* There is no point in reflowing panes which have not changed width.nicm2017-11-02
|
* Add support for the xterm(1) title stack, from Brad Town, GitHub issuenicm2017-10-05
| | | | 1075.
* 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
|