nicm
6e0c663a89
Fix the color space parameter in RGB SGR, from Brad Town.
2019-05-20 05:35:46 +00:00
nicm
1ee944a19d
Add support for overline (SGR 53), from Ricardo Banffy.
2019-05-13 20:10:23 +00:00
nicm
69440d19b7
Do not use evbuffer_add_buffer because it is destructive and doesn't
...
work in newer libevent.
2019-05-07 10:25:15 +00:00
nicm
9f75635596
Allow panes to be empty (no command), output can be piped to them with
...
split-window or display-message -I.
2019-05-03 20:44:24 +00:00
nicm
7bcc0d16f2
Add an argument to copy commands to set the prefix for the buffer name,
...
allows buffers for different sessions to be named separately.
2019-04-02 09:03:39 +00:00
nicm
13f9a061ac
Add a wrapper (struct style) around styles rather than using the
...
grid_cell directly. There will be some non-cell members soon.
2019-03-14 09:53:52 +00:00
nicm
2fbd491ff0
Add actual HPA (\033[`), the existing one is CHA. From Marc Reisner.
2019-03-14 06:33:43 +00:00
nicm
feaa5660a3
Do not use origin for VPA.
2019-03-13 07:34:36 +00:00
nicm
938156d73b
DECRC and DECSC apparently need to preserve origin mode as well, based
...
on a fix from Marc Reisner.
2019-03-12 20:02:47 +00:00
nicm
2796ae81d0
Fix HPA in origin mode.
2019-03-12 18:30:08 +00:00
nicm
f3f534a3a0
Tidy up a lot of &ictx->ctx by using a local variable.
2019-03-12 18:26:57 +00:00
nicm
7804fa1b82
Revert to not clearing history on RIS, apparently some bootloaders send
...
this and it doesn't really do any harm.
2019-03-12 12:58:40 +00:00
nicm
3f6bfbaf2b
Allow multiple modes to be open in a pane. A stack of open modes is kept
...
and the previous restored when the top is exited. If a mode that is
already on the stack is entered, the existing instance is moved to the
top as the active mode rather than being opened new.
2019-03-12 11:16:49 +00:00
nicm
ff4c80d53d
Add support for origin mode (DECOM, SM/RM ?6), from Marc Reisner.
2019-03-12 07:39:27 +00:00
nicm
4e3d661284
Fix parsing of empty colon-separated fields, reported by Siarhei Siniak.
2018-12-17 21:52:59 +00:00
nicm
749f67b7d8
evbuffer_new and bufferevent_new can both fail (when malloc fails) and
...
return NULL. GitHub issue 1547.
2018-11-19 13:35:40 +00:00
nicm
a51668ca06
Support OSC 52 ? to read the top buffer inside tmux (when set-clipboard
...
is changed to on), also add refresh-client -l to ask tmux to use the
same mechanism to get the clipboard from the terminal outside
tmux. GitHub issue 1477.
2018-10-18 08:04:14 +00:00
nicm
bc0e527f32
Support for extended underline styles on terminals which offer them,
...
enabled by adding the Smulx capability with terminal-overrides (add
something like ',vte*:Smulx=\E[4\:%p1%dm'). GitHub issue 1492.
2018-10-18 07:57:57 +00:00
nicm
a9ffb56b65
Add the KEYC_XTERM flag to all function keys that imply a modifier so
...
that they are correctly translated into xterm(1)-style keys. GitHub
issue 1437.
2018-08-16 14:04:03 +00:00
nicm
80bdd89856
Clear history on RIS like most other terminals do.
2018-07-31 10:32:19 +00:00
nicm
051a29ca03
A couple of fixes to the : form of SGR. Apparently there is an extra
...
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.
2018-04-10 11:20:15 +00:00
nicm
5d616f4c72
Fix link, from Eliran Gonen.
2018-04-06 09:09:38 +00:00
nicm
85c48aafff
For some reason tmux treats SGR 10 as SGR 0. It has done since the first
...
version and I'm not sure why since no other terminal appears to. Change
to just ignore SGR 10 instead.
2018-03-05 12:32:28 +00:00
nicm
6ae04dd5a0
Support ISO colon-separated SGR.
2018-02-19 21:20:10 +00:00
nicm
c03565611e
Simplify UTF-8 states down into one state.
2018-01-12 16:32:12 +00:00
nicm
88517ceebb
Add support for the xterm(1) title stack, from Brad Town, GitHub issue
...
1075.
2017-10-05 13:29:18 +00:00
nicm
8405fcdd9b
Apply timeout to CAN and RS which also wait for ST.
2017-09-10 08:01:23 +00:00
nicm
5fc0be5045
Support REP escape sequence (\033[b).
2017-08-29 09:28:45 +00:00
nicm
74b2deae1c
Add a hook when the clipboard is set.
2017-06-09 09:21:24 +00:00
nicm
c5b7faaefc
Add a timeout to prevent the sequences which wait for a specific
...
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.
2017-06-04 09:22:34 +00:00
nicm
8149bc3fa6
Be more strict about escape sequences that rename windows or set titles:
...
ignore any that not valid UTF-8 outright, and for good measure pass the
result through our UTF-8-aware vis(3).
2017-06-04 09:02:36 +00:00
nicm
3442066054
Make set-clipboard a three-state option so tmux itself can ignore the
...
sequencess.
2017-06-03 17:43:01 +00:00
nicm
d5158620bb
Support OSC 10 and 11 to set foreground and background colours, from
...
"bertnp" in GitHub issue 942.
2017-05-28 23:23:40 +00:00
nicm
18bab30792
Scrolling needs to use background colour.
2017-05-12 13:00:56 +00:00
nicm
886d50dcab
ECH needs to use background colour.
2017-05-12 10:50:11 +00:00
nicm
bcab77e266
We need to collect UTF-8 characters so that width != 1 characters are
...
correctly flushed.
2017-04-22 08:33:28 +00:00
nicm
df3ab87964
Add support for the strikethrough attribute (SGR 9), using the new smxx
...
terminfo capability. This means there are now nine attribute bits, so
anything above 0xff uses an extended cell.
2017-03-22 07:16:54 +00:00
nicm
f27e1d07fc
Add SGR 28 to clear hidden flag.
2017-02-19 07:55:11 +00:00
nicm
82db1fa9e5
There are buggy terminals out there that do not move the cursor to 0,0
...
after CSR, so invalidate the cursor position rather than assuming 0,0.
2017-02-16 12:56:01 +00:00
nicm
e100d465da
Add support for scroll up escape sequence (CSI S) and use it when
...
possible instead of sending individual line feeds.
2017-02-08 17:31:09 +00:00
nicm
13a0b6bb3f
Collect sequences of printable ASCII characters and process them
...
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).
2017-02-08 16:45:18 +00:00
nicm
7475165cd8
Some other tidying bits.
2017-02-08 15:49:29 +00:00
nicm
d60e585d9e
Use DECFRA on VT420 compatible terminals (so, xterm) and ED on all
...
others for clearing panes.
2017-02-06 22:05:11 +00:00
nicm
10e14ae504
Add BCE for clear to start of screen, which was somehow missed.
2017-02-06 19:26:49 +00:00
nicm
d150d9b384
Fix logging of CSI parameters.
2017-02-06 13:25:15 +00:00
nicm
dd0c814779
Implement "all event" (1003) mouse mode but in a way that works. The
...
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.
2017-02-01 09:55:07 +00:00
nicm
4ede35c48c
Accept the OSC 52 escape sequence inside tmux to add a new buffer, from
...
harry dot gindi at live dot com.
2017-01-22 19:00:01 +00:00
nicm
314e933914
Add support for the OSC 4 and OSC 104 palette setting escape sequences,
...
from S Gilles.
2017-01-07 15:28:13 +00:00
nicm
bee95bf378
Spacing nits.
2016-12-09 21:39:27 +00:00
nicm
4179b42424
Add support for BCE (background colour erase). This makes various escape
...
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.
2016-10-13 20:27:27 +00:00