Age | Commit message (Collapse) | Author |
|
argument that nobody knew about, so skip that if it exists. Also there
are a bunch of useless optional arguments at the end, so ignore those.
|
|
|
|
version and I'm not sure why since no other terminal appears to. Change
to just ignore SGR 10 instead.
|
|
|
|
|
|
1075.
|
|
|
|
|
|
|
|
terminator (OSC, APC and DCS) waiting forever, which helps to avoid
garbage (cat /dev/random) locking up panes completely. This (and the
last commit) prompted by a discussion with theo.
|
|
ignore any that not valid UTF-8 outright, and for good measure pass the
result through our UTF-8-aware vis(3).
|
|
sequencess.
|
|
"bertnp" in GitHub issue 942.
|
|
|
|
|
|
correctly flushed.
|
|
terminfo capability. This means there are now nine attribute bits, so
anything above 0xff uses an extended cell.
|
|
|
|
after CSR, so invalidate the cursor position rather than assuming 0,0.
|
|
possible instead of sending individual line feeds.
|
|
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).
|
|
|
|
others for clearing panes.
|
|
|
|
|
|
main issue is that if we have two panes, A with 1002 and B with 1003, we
need to set 1003 outside tmux in order to get all the mouse events, but
then we need to suppress the ones that pane A doesn't want. This is easy
in SGR mouse mode, because buttons == 3 is only used for movement events
(for other events the trailing m/M marks a release instead), but in
normal mouse mode we can't tell so easily. So for that, look at the
previous event instead - if it is drag+release as well, then the current
event is a movement event.
|
|
harry dot gindi at live dot com.
|
|
from S Gilles.
|
|
|
|
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.
|
|
functions static.
|
|
|
|
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.
|
|
characters where we can't find the width (wcwidth() fails) on input, the
same as we drop invalid UTF-8. Suggested by schwarze@.
|
|
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.
|
|
|
|
|
|
used to escape from, for example, printf '\033]2;').
|
|
mode inside tmux, just no longer support it for tmux itself.
|
|
poor idea that was fairly quickly replaced by SGR mouse input (which is
now widespread). It is impossible to tell the difference between UTF-8
and non-UTF-8 mouse input; since the mouse-utf8 option was removed tmux
has not handled it correctly in any case; and it is ridiculous to have
three different forms of mouse input.
|
|
of xrealloc, xvasprintf, xvsnprintf.
|
|
|
|
|
|
|
|
|
|
of storing a full grid_cell with UTF-8 data and everything, store a new
type grid_cell_entry. This can either be the cell itself (for ASCII
cells), or an offset into an extended array (per line) for UTF-8
data.
This avoid a large (8 byte) overhead on non-UTF-8 cells (by far the
majority for most users) without the complexity of the shadow array we
had before. Grid memory without any UTF-8 is about half.
The disadvantage that cells can no longer be modified in place and need
to be copied out of the grid and back but it turned out to be lot less
complicated than I expected.
|
|
terminal. We still support non-UTF-8 terminals outside tmux, but inside
it is always UTF-8 (as when the utf8 and status-utf8 options were on).
|
|
|
|
|
|
|