aboutsummaryrefslogtreecommitdiff
path: root/input.c
Commit message (Collapse)AuthorAge
* Sync OpenBSD patchset 1102:Tiago Cunha2012-05-03
| | | | | | Add a buffer with all input from last ground state, will be used for control mode. From George Nachman.
* Sync OpenBSD patchset 1072:Tiago Cunha2012-03-29
| | | | | | | | | | | | | | | | | | | | Add a simple form of output rate limiting by counting the number of certain C0 sequences (linefeeds, backspaces, carriage returns) and if it exceeds a threshold (current default 50/millisecond), start to redraw the pane every 100 milliseconds instead of making each change as it comes. Two configuration options - c0-change-trigger and c0-change-interval. This makes tmux much more responsive under very fast output (for example yes(1) or accidentally cat'ing a large file) but may not be perfect on all terminals and connections - feedback very welcome, particularly where this change has a negative rather than positive effect (making it off by default is a possibility). After much experimentation based originally on a request Robin Lee Powell (which ended with a completely different solution), this idea from discussion with Ailin Nemui.
* Sync OpenBSD patchset 1053:Tiago Cunha2012-03-18
| | | | | Respond to secondary DA requests.
* Sync OpenBSD patchset 1037:Tiago Cunha2012-03-07
| | | | | | | | | Support "bracketed paste" mode. This adds a -p flag to paste-buffer - if this is used and the application has requested bracketed pastes, then tmux surrounds the pasted text by \033[200~ and \033[201~. Applications like vim can (apparently) use this to avoid, for example, indenting the text. From Ailin Nemui.
* Sync OpenBSD patchset 1024:Tiago Cunha2012-02-02
| | | | | | Move window name changes into wrapper function window_set_name, from George Nachman.
* Sync OpenBSD patchset 1006:Tiago Cunha2012-01-21
| | | | | | Add strings to allow the aixterm bright colours to be used when configuring colours, requested by Elliott Cable a few months ago.
* Sync OpenBSD patchset 1005:Tiago Cunha2012-01-21
| | | | | One day I will actually fix ALL the warnings before I commit...
* Sync OpenBSD patchset 1004:Tiago Cunha2012-01-21
| | | | | | Add a -R flag to send-keys to reset the terminal. Written ages ago and Suggested by someone, I forget who.
* Sync OpenBSD patchset 999:Tiago Cunha2012-01-20
| | | | | | Add an option to disable the window rename escape sequence, from Romain Francoise.
* Sync OpenBSD patchset 994:Tiago Cunha2011-12-30
| | | | | Add CNL and CPL escape sequences.
* Sync OpenBSD patchset 992:Tiago Cunha2011-12-30
| | | | | Add \033[s and \033[u to save and restore cursor position.
* Sync OpenBSD patchset 969:Tiago Cunha2011-10-23
| | | | | | Support for \e[3J to clear the history. Also send the corresponding terminfo code (E3) before locking.
* Sync OpenBSD patchset 933:Tiago Cunha2011-07-08
| | | | | Fix a couple of comments.
* Sync OpenBSD patchset 916:Tiago Cunha2011-05-22
| | | | | | Support DECSCUSR sequence to set the cursor style with two new terminfo(5) extensions, Cs and Csr. Written by Ailin Nemui.
* Sync OpenBSD patchset 915:Tiago Cunha2011-05-22
| | | | | | | Support xterm(1) cursor colour change sequences through terminfo(5) Cc (set) and Cr (reset) extensions. Originally by Sean Estabrooks, tweaked by me and Ailin Nemui.
* Sync OpenBSD patchset 866:Tiago Cunha2011-03-19
| | | | | | | | | | | | Support passing through escape sequences to the underlying terminal by using DCS with a "tmux;" prefix. Escape characters in the sequences must be doubled. For example: $ printf '\033Ptmux;\033\033]12;red\007\033\\' Will pass \033]12;red\007 to the terminal (and change the cursor colour in xterm). From Kevin Goodsell.
* Sync OpenBSD patchset 864:Tiago Cunha2011-03-19
| | | | | | Fix a typo that meant we did not reset the background colour when it was omitted in a 256-colour SGR ([48;5m). From Yusuke ENDOH.
* Sync OpenBSD patchset 857:Tiago Cunha2011-02-15
| | | | | | Use input_clear to reset the APC, DCS, OSC state or it could be reused improperly by a later state. From Kevin Goodsell.
* Sync OpenBSD patchset 845:Tiago Cunha2011-01-21
| | | | | | Mouse highlight mode (1001) requires a program to cooperate so supporting it through tmux is not as easy as this, remove it for now.
* 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 812:Tiago Cunha2010-12-30
| | | | | | Support all four of the xterm mouse modes. Based on a diff from hsim at gmx.li.
* Sync OpenBSD patchset 807:Tiago Cunha2010-12-25
| | | | | Style tweaks.
* Add an option to alert (monitor) for silence (lack of activity) in aNicholas Marriott2010-12-06
| | | | | window. From Thomas Adam.
* Sync OpenBSD patchset 683:Tiago Cunha2010-04-18
| | | | | | Fix typo in escape state table leading to fatal() when \033} or \033~ was entered, from Chris Johnsen.
* New input parser based on http://vt100.net/emu/dec_ansi_parser.Nicholas Marriott2010-03-15
|
* Sync OpenBSD patchset 642:Tiago Cunha2010-02-08
| | | | | | Add an option to disable the smcup/rmcup alternate screen behaviour inside tmux. From clemens fischer.
* Sync OpenBSD patchset 599:Tiago Cunha2010-01-08
| | | | | Correctly clear 256-colour flag for aixterm colours.
* Sync OpenBSD patchset 589:Tiago Cunha2009-12-16
| | | | | | Pass through the aixterm bright colours if the terminal supports them (>= 16 colours).
* 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 574:Tiago Cunha2009-11-28
| | | | | Add a couple of comments.
* Sync OpenBSD patchset 498:Tiago Cunha2009-11-08
| | | | | | | | 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.
* Sync OpenBSD patchset 467:Tiago Cunha2009-10-28
| | | | | tabs are better; ok nicm
* Sync OpenBSD patchset 441:Tiago Cunha2009-10-25
| | | | | | | Support the bright fg/bg colour SGR 90-97 and 100-107. Reported by Tim Allen.
* Sync OpenBSD patchset 424:Tiago Cunha2009-10-23
| | | | | %zu not %u, doh.
* Sync OpenBSD patchset 421:Tiago Cunha2009-10-23
| | | | | | | | | | | | | | | Try to reduce the UTF-8 mess. Get rid of passing around u_char[4]s and define a struct utf8_data which has character data, size (sequence length) and width. Move UTF-8 character collection into two functions utf8_open/utf8_append in utf8.c which fill in this struct and use these functions from input.c and the various functions in screen-write.c. Space for rather more data than is necessary for one UTF-8 sequence is in the utf8_data struct because screen_write_copy is still nasty and needs to reinject the character (after combining) into screen_write_cell.
* Sync OpenBSD patchset 408:Tiago Cunha2009-10-15
| | | | | Handle DECCOLM by just emulating its side-effect of clearing the screen.
* Sync OpenBSD patchset 400:Tiago Cunha2009-10-15
| | | | | | | | | | When backspace is received at the beginning of a line and the previous line was wrapped, move the cursor back up to the end of the previous line. Another one of the forgotten persons requested this quite a while ago (I need to start noting names on todo items...) when it was quite hard to implement. Now it is easy and I don't see it can do any harm, so hey presto...
* Sync OpenBSD patchset 281:Tiago Cunha2009-08-21
| | | | | Nuke unused variable.
* Sync OpenBSD patchset 280:Tiago Cunha2009-08-20
| | | | | Handle the device attributes (DA) escape sequence.
* Sync OpenBSD patchset 275:Tiago Cunha2009-08-20
| | | | | | | | | Instead of just checking for an empty buffer, which may not be the case if there is unconsumed data, save the previous size and use it instead. This means that activity monitoring should work in this (unlikely) event. Also remove a debugging statement that no longer seems necessary.
* Didn't mean to commit this stuff.Nicholas Marriott2009-08-19
|
* This is a better fix for OS X stupidity.Nicholas Marriott2009-08-19
|
* Sync OpenBSD patchset 227:Tiago Cunha2009-08-09
| | | | | | | Add a flags member to the grid_line struct and use it to differentiate lines wrapped at the screen edge from those terminated by a newline. Then use this when copying to combine wrapped lines together into one.
* Sync OpenBSD patchset 223:Tiago Cunha2009-08-09
| | | | | | | | Using the alternative screen (smcup/rmcup) should also preserve the current colours and attributes. Found thanks to a report from Taylor Venable. While here also nuke a couple of extra blank lines.
* Sync OpenBSD patchset 155:Tiago Cunha2009-07-22
| | | | | | Make some functions which return unused values void (mostly found by lint) and tweak a redundant expression in window_pane_set_mode.
* Support "alternate screen" mode (terminfo smcup/rmcup) typically used by fullNicholas Marriott2009-07-14
| | | | | | | | screen interactive programs to preserve the screen contents. When activated, it saves a copy of the visible grid and disables scrolling into and resizing out of the history; when deactivated the visible data is restored and the history reenabled.
* Restore $Id$ and add script to do so.Nicholas Marriott2009-06-25
|
* Implement the CBT (backward tab) sequence (\033[Z).Nicholas Marriott2009-06-25
|
* Proper support for tab stops (\033H etc), using a bitstring(3). Makes anotherNicholas Marriott2009-06-25
| | | | | vttest test happy.
* Okay, so I screwed up when testing this, doh. Unbreak so that CAN/SUB actuallyNicholas Marriott2009-06-25
| | | | | do cancel the sequence, and tweak to make the code more clear.