aboutsummaryrefslogtreecommitdiff
path: root/tty-keys.c
Commit message (Collapse)AuthorAge
* Expand the Id keyword. Tiago Cunha2011-07-09
|
* Make sure non-UTF8 mouse coordinates are kept to 8-bit values.Micah Cowan2011-03-04
|
* Sync OpenBSD patchset 828:Tiago Cunha2011-01-07
| | | | | | | | | | | | 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.
* Sync OpenBSD patchset 821:Tiago Cunha2011-01-03
| | | | | Key table should be const.
* Sync OpenBSD patchset 710:Tiago Cunha2010-06-06
| | | | | | | | | | When the mode-mouse option is on, support dragging to make a selection in copy mode. Also support the scroll wheel, although xterm strangely does not ignore it in application mouse mode, causing redraw artifacts when scrolling up (other terminals appear to be better behaved).
* Accept a full key match (not a partial) even if there is data left inNicholas Marriott2010-03-15
| | | | | the buffer.
* Sync OpenBSD patchset 590:Tiago Cunha2009-12-18
| | | | | | Allow keys to be replaced and reorder the table so that terminfo-defined keys (or terminal-overrides) take precedence over internally defined.
* Sync OpenBSD patchset 587:Tiago Cunha2009-12-16
| | | | | | New server option, escape-time, to set the timeout used to detect if escapes are alone or part of a function key or meta sequence.
* Sync OpenBSD patchset 581:Tiago Cunha2009-12-04
| | | | | | | 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...
* Sync OpenBSD patchset 576:Tiago Cunha2009-12-02
| | | | | | Look for mice and xterm keys before standard function keys as they are less likely to be partial versions.
* Sync OpenBSD patchset 575:Tiago Cunha2009-12-02
| | | | | Handle partial xterm function key sequences.
* Sync OpenBSD patchset 568:Tiago Cunha2009-11-28
| | | | | | Continue rather than returning if not a mouse key, to avoid hanging on any function key...
* Sync OpenBSD patchset 567:Tiago Cunha2009-11-28
| | | | | | Remove a couple of unused arguments where possible, and add /* ARGSUSED */ to the rest to reduce lint output.
* Sync OpenBSD patchset 564:Tiago Cunha2009-11-28
| | | | | Handle the possibility of partial mouse reads, and fix a comment while here.
* Sync OpenBSD patchset 531:Tiago Cunha2009-11-13
| | | | | | | Support rxvt-style keys again, but this time: support all the variations, put them in as raw escape sequences rather than fiddling with the values from terminfo, put them /after/ the terminfo values so the latter take precedence.
* Sync OpenBSD patchset 524:Tiago Cunha2009-11-10
| | | | | | Twiddling the last bit is an rxvtism, so do not support it in the table by default.
* Sync OpenBSD patchset 519:Tiago Cunha2009-11-10
| | | | | | The input key should be a u_char. Fixes top-bit-set input problem reported by ajacoutot@.
* Sync OpenBSD patchset 518:Tiago Cunha2009-11-10
| | | | | Constify buf.
* Sync OpenBSD patchset 514:Tiago Cunha2009-11-08
| | | | | Unused variable. Aargh.
* Sync OpenBSD patchset 513:Tiago Cunha2009-11-08
| | | | | | | | | Switch the tty key tree over to an (unbalanced) ternary tree which allows partial matches to be done (they wait for further data or a timer to expire, like a naked escape). Mouse and xterm-style keys still expect to be atomic.
* Sync OpenBSD patchset 511:Tiago Cunha2009-11-08
| | | | | | Key flags are only used for initialisation so they are not needed in the main tty_key struct.
* Sync OpenBSD patchset 508:Tiago Cunha2009-11-08
| | | | | | | | | | | | Switch tty key input over to happen on a read event. This is a bit more complicated because of escape input, but in that case instead of processing a key immediately, schedule a timer and reprocess the bufer when it expires. This currently assumes that keys will be atomic (ie that if eg F1 is pressed the entire sequence is present in the buffer). This is usually but not always true, a change in the tree format so it can differentiate potential (partial) key sequences will happens soon and will allow this to be fixed.
* Sync OpenBSD patchset 495:Tiago Cunha2009-11-08
| | | | | Switch tty fds over to a bufferevent.
* Sync OpenBSD patchset 460:Tiago Cunha2009-10-28
| | | | | | | | 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.
* Sync OpenBSD patchset 459:Tiago Cunha2009-10-28
| | | | | | | 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.
* Sync OpenBSD patchset 458:Tiago Cunha2009-10-28
| | | | | | | Support the (mostly new) function key+modifier caps (kIC-kIC7). Most of these will be caught (soon) by the xterm keys code in xterm itself but some other descriptions such as rxvt define them as well.
* Sync OpenBSD patchset 455:Tiago Cunha2009-10-28
| | | | | | | | As we always put the cursor keys into application mode, assume keys sent with CSI have ctrl. Also add a couple of comments.
* Sync OpenBSD patchset 454:Tiago Cunha2009-10-28
| | | | | Tidy up table.
* Sync OpenBSD patchset 450:Tiago Cunha2009-10-28
| | | | | Rename keypad keys to something more useful.
* Sync OpenBSD patchset 449:Tiago Cunha2009-10-28
| | | | | | Remove the xterm-keys code which is broken (a replacement is coming but some more cleanup is needed first).
* Sync OpenBSD patchset 381:Tiago Cunha2009-10-12
| | | | | | | | | 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.
* Sync OpenBSD patchset 332:Tiago Cunha2009-09-20
| | | | | Regularise some fatal messages.
* Sync OpenBSD patchset 184:Tiago Cunha2009-07-28
| | | | | | | | 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.
* Sync OpenBSD patchset 151:Tiago Cunha2009-07-22
| | | | | | Tidy up keys: use an enum for the key codes, and remove the macros which just wrap flag sets/clears/tests.
* RB_INSERT returns &item if already exists, so use that rather than doing aNicholas Marriott2009-05-04
| | | | | check beforehand.
* Space trimmage mega-diff.Nicholas Marriott2009-05-04
|
* Remove the right number of characters from the buffer when escape then a cursorNicholas Marriott2009-04-17
| | | | | key (or other key prefixed by \033) is pressed. Reported by Stuart Henderson.
* Extra function keys from Dashing dashing at hushmail dot comNicholas Marriott2009-03-02
|
* Sort out escape key handling so it works.Nicholas Marriott2009-03-02
|
* Don't leak existing keys.Nicholas Marriott2009-02-16
|
* * Better support for at least the most common variant of mouse input: parse ↵Nicholas Marriott2009-01-28
| | | | | | | 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).
* More hacks for key handling.Nicholas Marriott2009-01-12
|
* Handle ctrl/shift modifiers better.Nicholas Marriott2009-01-12
|
* Support btab.Nicholas Marriott2009-01-10
|
* Trim spaces.Nicholas Marriott2009-01-10
|
* Build array of codes, stop using ncurses global variables and push ncurses ↵Nicholas Marriott2009-01-09
| | | | crap into tty-term.c.
* Handle arrow key variants.Nicholas Marriott2009-01-09
|
* Update key handling code. Simplify, support ctrl properly and add a new ↵Nicholas Marriott2009-01-09
| | | | window option (xterm-keys) to output xterm key codes including ctrl and, if available, alt and shift.
* Give up the farce of caring about any keys aside from the ones in the screen ↵Nicholas Marriott2009-01-08
| | | | termcap and the ones termcap doesn't handle that we hardcode manually.
* Introduce nitems() and use it; use bsearch.Nicholas Marriott2009-01-07
|