summaryrefslogtreecommitdiffstats
path: root/input.c
AgeCommit message (Collapse)Author
2012-07-10xfree is not particularly helpful, remove it. From Thomas Adam.Nicholas Marriott
2012-04-25Add a buffer with all input from last ground state, will be used forNicholas Marriott
control mode. From George Nachman.
2012-03-20Add a simple form of output rate limiting by counting the number ofNicholas Marriott
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.
2012-03-15Respond to secondary DA requests.Nicholas Marriott
2012-03-03Support "bracketed paste" mode. This adds a -p flag to paste-buffer - ifNicholas Marriott
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.
2012-02-02Move window name changes into wrapper function window_set_name, fromNicholas Marriott
George Nachman.
2012-01-21Add strings to allow the aixterm bright colours to be used whenNicholas Marriott
configuring colours, requested by Elliott Cable a few months ago.
2012-01-21One day I will actually fix ALL the warnings before I commit...Nicholas Marriott
2012-01-21Add a -R flag to send-keys to reset the terminal. Written ages ago andNicholas Marriott
Suggested by someone, I forget who.
2012-01-20Add an option to disable the window rename escape sequence, from RomainNicholas Marriott
Francoise.
2011-12-29Add CNL and CPL escape sequences.Nicholas Marriott
2011-12-27Add \033[s and \033[u to save and restore cursor position.Nicholas Marriott
2011-10-23Support for \e[3J to clear the history. Also send the correspondingNicholas Marriott
terminfo code (E3) before locking.
2011-07-08Fix a couple of comments.Nicholas Marriott
2011-05-20Support DECSCUSR sequence to set the cursor style with two newNicholas Marriott
terminfo(5) extensions, Cs and Csr. Written by Ailin Nemui.
2011-05-20Support xterm(1) cursor colour change sequences through terminfo(5) CcNicholas Marriott
(set) and Cr (reset) extensions. Originally by Sean Estabrooks, tweaked by me and Ailin Nemui.
2011-03-07Support passing through escape sequences to the underlying terminal byNicholas Marriott
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.
2011-03-03Fix a typo that meant we did not reset the background colour when it wasNicholas Marriott
omitted in a 256-colour SGR ([48;5m). From Yusuke ENDOH.
2011-01-28Use input_clear to reset the APC, DCS, OSC state or it could be reusedNicholas Marriott
improperly by a later state. From Kevin Goodsell.
2011-01-15Mouse highlight mode (1001) requires a program to cooperate soNicholas Marriott
supporting it through tmux is not as easy as this, remove it for now.
2011-01-03Support for UTF-8 mouse input (\033[1005h). This was added in xterm 262Nicholas Marriott
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.
2010-12-29Support all four of the xterm mouse modes. Based on a diff from hsim atNicholas Marriott
gmx.li.
2010-12-23Style tweaks.Nicholas Marriott
2010-12-06Add an option to alert (monitor) for silence (lack of activity) in aNicholas Marriott
window. From Thomas Adam.
2010-04-17Fix typo in escape state table leading to fatal() when \033} or \033~Nicholas Marriott
was entered, from Chris Johnsen.
2010-03-22New input parser based on http://vt100.net/emu/dec_ansi_parser.Nicholas Marriott
2010-02-08Add an option to disable the smcup/rmcup alternate screen behaviour insideNicholas Marriott
tmux. From clemens fischer.
2010-01-06Correctly clear 256-colour flag for aixterm colours.Nicholas Marriott
2009-12-14Pass through the aixterm bright colours if the terminal supports them (>= 16Nicholas Marriott
colours).
2009-12-03Massive spaces->tabs and trailing whitespace cleanup, hopefully for the lastNicholas Marriott
time now I've configured emacs to make them displayed in really annoying colours...
2009-11-27Add a couple of comments.Nicholas Marriott
2009-11-04Convert the window pane (pty master side) fd over to use a bufferevent.Nicholas Marriott
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-10-26tabs are better; ok nicmTheo Deraadt
2009-10-23Support the bright fg/bg colour SGR 90-97 and 100-107.Nicholas Marriott
Reported by Tim Allen.
2009-10-20%zu not %u, doh.Nicholas Marriott
2009-10-20Try to reduce the UTF-8 mess.Nicholas Marriott
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.
2009-10-13Handle DECCOLM by just emulating its side-effect of clearing the screen.Nicholas Marriott
2009-10-12When backspace is received at the beginning of a line and the previous line wasNicholas Marriott
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...
2009-08-20Nuke unused variable.Nicholas Marriott
2009-08-19Handle the device attributes (DA) escape sequence.Nicholas Marriott
2009-08-18Instead of just checking for an empty buffer, which may not be the case ifNicholas Marriott
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.
2009-08-08Add a flags member to the grid_line struct and use it to differentiate linesNicholas Marriott
wrapped at the screen edge from those terminated by a newline. Then use this when copying to combine wrapped lines together into one.
2009-08-07Using the alternative screen (smcup/rmcup) should also preserve the currentNicholas Marriott
colours and attributes. Found thanks to a report from Taylor Venable. While here also nuke a couple of extra blank lines.
2009-07-21Make some functions which return unused values void (mostly found by lint) andNicholas Marriott
tweak a redundant expression in window_pane_set_mode.
2009-07-13Support "alternate screen" mode (terminfo smcup/rmcup) typically used by fullNicholas Marriott
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.
2009-06-04Implement the CBT (backward tab) sequence (\033[Z).Nicholas Marriott
2009-06-04Proper support for tab stops (\033H etc), using a bitstring(3). Makes anotherNicholas Marriott
vttest test happy.
2009-06-04Okay, so I screwed up when testing this, doh. Unbreak so that CAN/SUB actuallyNicholas Marriott
do cancel the sequence, and tweak to make the code more clear.
2009-06-04Oops, CAN and SUB should abort the sequence (return to first state), not remainNicholas Marriott
in the same state.
2009-06-04More input compatibility love. Support C0 within escape sequences, and the C0Nicholas Marriott
control character VT (vertical tab, \013), which is treated as LF like VT102. Makes another vttest happy.