Thomas Adam
a131b82e95
Merge branch 'obsd-master'
...
Conflicts:
client.c
2014-08-09 20:31:36 +01:00
nicm
b8b00aad5d
Revert the up/down wheel emulation for now, there will be a better way
...
to do this along later for those who want it.
2014-07-21 20:45:35 +00:00
nicm
2056a9ef9e
Drop explicit support for F13-F20 and change to match the xterm terminfo
...
entry:
F13-F24 are S-F1 to S-F12
F25-F36 are C-F1 to C-F12
F37-F48 are C-S-F1 to C-S-F12
F49-F60 are M-F1 to M-F12
and F61-F63 are M-S-F1 to M-S-F3
This should be no difference for applications inside tmux, but means
that any key binding for F13 will need to be replaced by S-F1 and so on.
2014-07-21 10:25:48 +00:00
Thomas Adam
bae95844d7
Merge branch 'obsd-master'
...
Conflicts:
format.c
window.c
2014-05-13 21:58:48 +01:00
nicm
353d1825d5
Send up and down keys for mouse wheel in alternate screen mode (when it
...
normally does nothing), from Marcel Partap.
2014-05-08 07:59:16 +00:00
Thomas Adam
3f54c9292f
Merge branch 'obsd-master'
2014-04-24 12:59:00 +01:00
nicm
bec6c807cd
There is no longer a need for a paste_stack struct or for global_buffers
...
to be global. Move to paste.c.
2014-04-24 09:14:43 +00:00
Thomas Adam
0c99c7dbff
Merge branch 'obsd-master'
...
Conflicts:
Makefile
tty-keys.c
2014-04-05 12:36:14 +01:00
nicm
8824dae6f7
A couple of trivial mouse-related style nits.
2014-04-03 08:15:17 +00:00
nicm
48478ea0a9
Remove log_debug2 as well and simplify log.c.
2014-03-31 21:42:45 +00:00
Nicholas Marriott
b1a87b2ee4
Remove log_debug2 as well and simplify log.c.
2014-03-07 16:05:29 +00:00
Thomas Adam
76cb088d16
Merge branch 'obsd-master'
...
Conflicts:
tmux.h
2013-05-25 11:48:12 +01:00
Nicholas Marriott
66f4c60a84
Don't limit width and height to 222 in standard mouse mode.
2013-05-07 11:00:16 +00:00
Nicholas Marriott
c71844de63
Add resize-pane -Z to temporary zoom the active pane to occupy the full
...
window or unzoom (restored to the normal layout) if it already zoomed,
bound to C-b z by default. The pane is unzoomed on pretty much any
excuse whatsoever.
We considered making this a new layout but the requirements are quite
different from layouts so decided it is better as a special case. Each
current layout cell is saved, a temporary one-cell layout generated and
all except the active pane set to NULL.
Prompted by suggestions and scripts from several. Thanks to Aaron Jensen
and Thiago Padilha for testing an earlier version.
2013-03-24 09:57:59 +00:00
Nicholas Marriott
67b4d5b609
Support the latest theory for mouse input, this is enabled/disabled with
...
SM/RM 1006 and is similar in style to SGR input: \033[<b;x;yM or
\033[b;x;ym. From Egmont Koblinger.
2013-03-22 10:33:50 +00:00
Nicholas Marriott
c5239c5984
Add resize-pane -Z to temporary zoom the active pane to occupy the full window
...
or unzoom (restored to the normal layout) if it already zoomed, bound to C-b z
by default. The pane is unzoomed on pretty much any excuse whatsoever.
We considered making this a new layout but the requirements are quite different
from layouts so decided it is better as a special case. Each current layout
cell is saved, a temporary one-cell layout generated and all except the active
pane set to NULL.
Prompted by suggestions and scripts from several. Thanks to Aaron Jensen and
Thiago Padilha for testing an earlier version.
2013-02-24 00:25:03 +00:00
Nicholas Marriott
e5eee7de0c
Support the latest theory for mouse input, this is enabled/disabled with SM/RM
...
1006 and is similar in style to SGR input: \033[<b;x;yM or \033[b;x;ym. From
Egmont Koblinger.
2013-02-18 14:52:27 +00:00
Thomas Adam
739a76634c
Merge branch 'obsd-master'
...
Sync from OpenBSD.
2012-11-27 22:24:00 +00:00
Nicholas Marriott
47c097cb51
Support middle-click paste, based on a diff from Ailin Nemui.
2012-11-27 20:22:12 +00:00
Thomas Adam
47fbf87185
Merge branch 'obsd-master'
...
Sync from OpenBSD.
2012-10-26 20:28:58 +01:00
Nicholas Marriott
d210d99cce
Make mouse event structure clearer by defining events (up, click, drag)
...
and simplifying how buttons and wheels are represented, from Ailin
Nemui. Should be no functional changes.
2012-10-26 14:35:42 +00:00
Tiago Cunha
a432fcd306
Sync OpenBSD patchset 1150:
...
xfree is not particularly helpful, remove it. From Thomas Adam.
2012-07-11 19:34:16 +00:00
Nicholas Marriott
df912e3540
xfree is not particularly helpful, remove it. From Thomas Adam.
2012-07-10 11:53:01 +00:00
Tiago Cunha
2f0db58777
Sync OpenBSD patchset 1110:
...
Only enter copy mode on scroll up, from Ailin Nemui.
2012-05-12 14:59:17 +00:00
Nicholas Marriott
218b692221
Only enter copy mode on scroll up, from Ailin Nemui.
2012-05-05 18:48:31 +00:00
Tiago Cunha
bd6153195f
Sync OpenBSD patchset 1088:
...
Simplify mouse input function.
2012-04-10 09:54:59 +00:00
Nicholas Marriott
18d3498fb2
Simplify mouse input function.
2012-04-01 20:56:47 +00:00
Tiago Cunha
3ce1b91b1b
Sync OpenBSD patchset 941:
...
Extend the mode-mouse option to add a third choice which means the mouse
does not enter copy mode. Patch from SF bug 3374493.
In future the mode-mouse option is likely to die and be broken into
several smaller options.
2011-08-04 17:05:35 +00:00
Nicholas Marriott
cc5bcbfb59
Extend the mode-mouse option to add a third choice which means the mouse
...
does not enter copy mode. Patch from SF bug 3374493.
In future the mode-mouse option is likely to die and be broken into
several smaller options.
2011-07-30 18:01:26 +00:00
Tiago Cunha
391f1f08c0
Expand the Id keyword.
2011-07-09 09:42:33 +00:00
Tiago Cunha
215ee46106
Sync OpenBSD patchset 896:
...
When mode-mouse is on (it is off by default), automatically enter copy
mode when the mouse is dragged or the mouse wheel is used. Also exit
copy mode when the mouse wheel is scrolled off the bottom. Discussed
with and written by hsim at gmx dot li.
2011-04-25 20:33:42 +00:00
Nicholas Marriott
8738141913
When mode-mouse is on (it is off by default), automatically enter copy
...
mode when the mouse is dragged or the mouse wheel is used. Also exit
copy mode when the mouse wheel is scrolled off the bottom. Discussed
with and written by hsim at gmx dot li.
2011-04-19 21:31:33 +00:00
Tiago Cunha
219442cff7
Sync OpenBSD patchset 828:
...
Support for UTF-8 mouse input (\033[1005h). This was added in xterm 262
and supports larger terminals than the older way.
If the new mouse-utf8 option is on, UTF-8 mouse input is enabled for all
UTF-8 terminals. The option defaults to on if LANG etc are set in the
same manner as the utf8 option.
With help and based on code from hsim at gmx.li.
2011-01-07 14:34:45 +00:00
Nicholas Marriott
ac3b78a841
Support for UTF-8 mouse input (\033[1005h). This was added in xterm 262
...
and supports larger terminals than the older way.
If the new mouse-utf8 option is on, UTF-8 mouse input is enabled for all
UTF-8 terminals. The option defaults to on if LANG etc are set in the
same manner as the utf8 option.
With help and based on code from hsim at gmx.li.
2011-01-03 23:35:21 +00:00
Tiago Cunha
a24b67fc5a
Sync OpenBSD patchset 824:
...
Last few tables that should be const.
2011-01-03 23:32:04 +00:00
Nicholas Marriott
f833b885a1
Last few tables that should be const.
2011-01-01 03:43:20 +00:00
Tiago Cunha
095e1b410a
Sync OpenBSD patchset 812:
...
Support all four of the xterm mouse modes. Based on a diff from hsim at
gmx.li.
2010-12-30 22:27:38 +00:00
Nicholas Marriott
f7c42c21ba
Support all four of the xterm mouse modes. Based on a diff from hsim at
...
gmx.li.
2010-12-29 21:49:06 +00:00
Nicholas Marriott
f54482a461
Solaris 9 has no stdint.h, ugh. Reported by a couple of people most
...
recently Timothy Larson.
2010-09-07 19:32:58 +00:00
Tiago Cunha
cc094fdfe6
Sync OpenBSD patchset 581:
...
Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last
time now I've configured emacs to make them displayed in really annoying
colours...
2009-12-04 22:14:47 +00:00
Nicholas Marriott
15a64b805e
Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last
...
time now I've configured emacs to make them displayed in really annoying
colours...
2009-12-03 22:50:09 +00:00
Tiago Cunha
635d36f928
Sync OpenBSD patchset 562:
...
Output the right keys for application and number keypad modes (they were the
wrong way round).
2009-11-28 14:41:17 +00:00
Nicholas Marriott
094bca5ac3
Output the right keys for application and number keypad modes (they were the
...
wrong way round).
2009-11-25 12:24:31 +00:00
Tiago Cunha
ba7aa506f3
Sync OpenBSD patchset 525:
...
Don't output rxvtisms either.
2009-11-10 23:32:53 +00:00
Nicholas Marriott
d9961f40bf
Don't output rxvtisms either.
2009-11-10 18:48:03 +00:00
Tiago Cunha
0cd4f4e321
Sync OpenBSD patchset 502:
...
It would help if I read my own comments... make alt keys work again by sending
alt AND the key not alt instead of it.
2009-11-08 23:08:12 +00:00
Tiago Cunha
2df0882722
Sync OpenBSD patchset 498:
...
Convert the window pane (pty master side) fd over to use a bufferevent.
The evbuffer API is very similar to the existing tmux buffer API so this was
remarkably painless. Not many possible ways to do it, I suppose.
2009-11-08 23:02:56 +00:00
Nicholas Marriott
6a6a42aa3a
It would help if I read my own comments... make alt keys work again by sending
...
alt AND the key not alt instead of it.
2009-11-04 23:00:22 +00:00
Nicholas Marriott
a02c7e804c
Convert the window pane (pty master side) fd over to use a bufferevent.
...
The evbuffer API is very similar to the existing tmux buffer API so this was
remarkably painless. Not many possible ways to do it, I suppose.
2009-11-04 22:43:11 +00:00
Tiago Cunha
31bb577075
Sync OpenBSD patchset 460:
...
Not all terminals swap CSI and SS3 on ctrl, so remove that.
Also mark the rxvt special-cases as such until terminfo is updated to have
kLFT5, kRIT5 etc.
2009-10-28 23:05:01 +00:00
Tiago Cunha
10aab82539
Sync OpenBSD patchset 459:
...
Rewrite xterm-keys code (both input and output) so that works (doesn't always
output the same modifiers, accepts all the possible input keys) and is more
understandable.
2009-10-28 23:03:51 +00:00
Tiago Cunha
8ff0d06d34
Sync OpenBSD patchset 457:
...
On second thoughts, drop the rxvt output entirely.
2009-10-28 23:00:21 +00:00
Tiago Cunha
6cf9965e42
Sync OpenBSD patchset 456:
...
Set the output code for ctrl+cursor keys correctly, and disable (comment)
rxvt-style output.
2009-10-28 22:59:01 +00:00
Tiago Cunha
98122860cc
Sync OpenBSD patchset 453:
...
Drop INPUTKEY_CTRL and just handle it as part of the table.
2009-10-28 22:56:05 +00:00
Tiago Cunha
dd8174f545
Sync OpenBSD patchset 452:
...
Add or fix some comments.
2009-10-28 22:54:54 +00:00
Tiago Cunha
5350212e53
Sync OpenBSD patchset 451:
...
Tidy up table.
2009-10-28 22:54:00 +00:00
Tiago Cunha
4f7e669271
Sync OpenBSD patchset 450:
...
Rename keypad keys to something more useful.
2009-10-28 22:53:03 +00:00
Tiago Cunha
165538b4bd
Sync OpenBSD patchset 449:
...
Remove the xterm-keys code which is broken (a replacement is coming but some
more cleanup is needed first).
2009-10-28 22:51:55 +00:00
Nicholas Marriott
e831649b64
Not all terminals swap CSI and SS3 on ctrl, so remove that.
...
Also mark the rxvt special-cases as such until terminfo is updated to have
kLFT5, kRIT5 etc.
2009-10-26 17:59:46 +00:00
Nicholas Marriott
fd2ef18a70
Rewrite xterm-keys code (both input and output) so that works (doesn't always
...
output the same modifiers, accepts all the possible input keys) and is more
understandable.
2009-10-26 17:46:33 +00:00
Nicholas Marriott
bbca6fe5b0
On second thoughts, drop the rxvt output entirely.
2009-10-26 14:30:57 +00:00
Nicholas Marriott
5cce40d4c3
Set the output code for ctrl+cursor keys correctly, and disable (comment)
...
rxvt-style output.
2009-10-26 14:27:13 +00:00
Nicholas Marriott
a0ec4a11ee
Drop INPUTKEY_CTRL and just handle it as part of the table.
2009-10-26 13:34:26 +00:00
Nicholas Marriott
25d2000625
Add or fix some comments.
2009-10-26 13:29:24 +00:00
Nicholas Marriott
b3604dcf83
Tidy up table.
2009-10-26 13:22:30 +00:00
Nicholas Marriott
db4452d307
Rename keypad keys to something more useful.
2009-10-26 13:13:33 +00:00
Nicholas Marriott
10a656eedb
Remove the xterm-keys code which is broken (a replacement is coming but some
...
more cleanup is needed first).
2009-10-26 13:02:53 +00:00
Tiago Cunha
b26ea8462e
Sync OpenBSD patchset 381:
...
Clean up by introducing a wrapper struct for mouse clicks rather than passing
three u_chars around.
As a side-effect this fixes incorrectly rejecting high cursor positions
(because it was comparing them as signed char), reported by Tom Doherty.
2009-10-12 00:18:19 +00:00
Nicholas Marriott
4bc0f6e7e9
Clean up by introducing a wrapper struct for mouse clicks rather than passing
...
three u_chars around.
As a side-effect this fixes incorrectly rejecting high cursor positions
(because it was comparing them as signed char), reported by Tom Doherty.
2009-10-11 07:01:10 +00:00
Tiago Cunha
361801aaaa
Sync OpenBSD patchset 184:
...
Detect backspace by looking at termios VERASE and translate it into \177
(which matches screen's behaviour if not its termcap/terminfo entry). The
terminfo kbs cap is often wrong or missing so it can't be used, and just
assuming \177 may be wrong.
2009-07-28 22:37:02 +00:00
Nicholas Marriott
639fbe0392
Detect backspace by looking at termios VERASE and translate it into \177 (which
...
matches screen's behaviour if not its termcap/terminfo entry). The terminfo kbs
cap is often wrong or missing so it can't be used, and just assuming \177 may
be wrong.
2009-07-26 21:42:08 +00:00
Tiago Cunha
a734488a4b
Sync OpenBSD patchset 151:
...
Tidy up keys: use an enum for the key codes, and remove the macros which just
wrap flag sets/clears/tests.
2009-07-22 16:24:59 +00:00
Nicholas Marriott
725938fb85
Tidy up keys: use an enum for the key codes, and remove the macros which just
...
wrap flag sets/clears/tests.
2009-07-21 17:57:29 +00:00
Nicholas Marriott
35876eaab9
Import tmux, a terminal multiplexor allowing (among other things) a single
...
terminal to be switched between several different windows and programs
displayed on one terminal be detached from one terminal and moved to another.
ok deraadt pirofti
2009-06-01 22:58:49 +00:00
Nicholas Marriott
143aa718e5
Space trimmage mega-diff.
2009-05-04 17:58:27 +00:00
Nicholas Marriott
171256057e
Extra function keys from Dashing dashing at hushmail dot com
2009-03-02 18:05:40 +00:00
Nicholas Marriott
4428987e95
* Better support for at least the most common variant of mouse input: parse it and adjust for different panes. Also support mouse in window/session choice mode.
...
* Bring back the fancy window titles with session/window names: it is easy to work around problems with elinks (see FAQ).
2009-01-28 19:52:21 +00:00
Nicholas Marriott
e099a78b4c
Make shift arrow keys work.
2009-01-12 22:53:52 +00:00
Nicholas Marriott
a88eba3805
More hacks for key handling.
2009-01-12 22:48:00 +00:00
Nicholas Marriott
dbbc314cc9
Handle ctrl/shift modifiers better.
2009-01-12 21:47:03 +00:00
Nicholas Marriott
162bacdcd9
Window splitting. Two vertical panes fixed 50% each. This is a huge diff, still a couple of bugs (notably heap corruption somewhere causing segfault on exit).
2009-01-11 23:31:46 +00:00
Nicholas Marriott
312633203d
Support btab.
2009-01-10 18:28:09 +00:00
Nicholas Marriott
a1b43faa43
Trim spaces.
2009-01-10 01:51:22 +00:00
Nicholas Marriott
ed1031b358
Update key handling code. Simplify, support ctrl properly and add a new window option (xterm-keys) to output xterm key codes including ctrl and, if available, alt and shift.
2009-01-09 16:45:58 +00:00
Nicholas Marriott
622d4def22
Give up the farce of caring about any keys aside from the ones in the screen termcap and the ones termcap doesn't handle that we hardcode manually.
2009-01-08 22:28:02 +00:00
Nicholas Marriott
4846ad1657
Introduce nitems() and use it; use bsearch.
2009-01-07 22:52:33 +00:00
Nicholas Marriott
b457479904
Make home and end work.
2008-12-22 17:26:51 +00:00
Nicholas Marriott
3337dfcae5
Support keypad mode, and get rid of SCREEN_DEF*. Meant to commit these separately but forgot :-/.
2008-07-24 21:42:40 +00:00
Nicholas Marriott
ee8a9d2458
Handle kcursor+kkeypad (switch to OA from [A).
2008-07-24 00:03:15 +00:00
Nicholas Marriott
e00736b811
Revert this, it breaks emacs.
2008-07-23 23:46:51 +00:00
Nicholas Marriott
97212771b5
Support keypad. Change cursor key output.
2008-07-23 23:44:50 +00:00
Nicholas Marriott
758efb3947
Handle escaped keys properly and use M-f/M-b in copy mode.
2008-06-25 07:30:08 +00:00
Nicholas Marriott
91f3165b2d
IRIX fixes thanks to Elias Pipping.
2008-06-23 16:58:49 +00:00
Nicholas Marriott
99df48d70f
Trimify.
2008-06-18 22:21:51 +00:00
Nicholas Marriott
6a187bb8d3
Some Linux fixes; some code tidying. Don't redraw status bar so often.
2008-06-06 17:20:30 +00:00
Nicholas Marriott
205b78ec58
Some key tweaks, fix status bar to not rely on attr.
2008-01-03 21:32:11 +00:00
Nicholas Marriott
cb353fb97c
home and end appear to be find/select with rxvt...
2007-12-01 11:24:17 +00:00
Nicholas Marriott
76c8a590db
Big internal reorganisation to move tty control into parent.
2007-11-27 19:23:34 +00:00
Nicholas Marriott
9a6e47cfa8
Initial history support.
2007-11-21 13:11:41 +00:00
Nicholas Marriott
1b9647669a
Kill window command. Nuke some backspace stuff.
2007-10-19 11:10:35 +00:00
Nicholas Marriott
aafee17de6
New input parser via state machine.
2007-09-28 22:47:22 +00:00