summaryrefslogtreecommitdiffstats
path: root/tty.c
AgeCommit message (Collapse)Author
2012-07-10xfree is not particularly helpful, remove it. From Thomas Adam.Nicholas Marriott
2012-06-20Remove a couple of unused variables from redbrain at gcc dot gnu dot org.Nicholas Marriott
2012-05-22Store client in tty struct directly instead of using a callback functionNicholas Marriott
pointer.
2012-05-22Use tty_pane_full_width macro in some more places.Nicholas Marriott
2012-05-22If there are any terminals with insert mode but not ich1, they can goNicholas Marriott
through the slow path. Tidies code slightly.
2012-05-22Move some common code to repeat spaces into a function.Nicholas Marriott
2012-05-05Tidy up by adding a macro for the pane being the full screen width, fromNicholas Marriott
Ailin Nemui.
2012-05-05Missing ()s in macros.Nicholas Marriott
2012-05-05Pull CRA out into a separate function and add ERA, from Ailin Nemui.Nicholas Marriott
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-17On xterm 271 and later, put the terminal into SCL 5 and use DECCRA forNicholas Marriott
scrolling the region in panes (if the large region check isn't hit). With help from Ailin Nemui.
2012-03-17Break out termios initialization into a separate function, from GeorgeNicholas Marriott
Nachman.
2012-03-17Do not clear to end of line if the line is full, fixes missing lastNicholas Marriott
character in rightmost pane.
2012-03-17Use the region lower not the pane size to work out where the bottom lineNicholas Marriott
is.
2012-03-17Tweak last fix to actually hit the right end of pane.Nicholas Marriott
2012-03-17Check event_initialized before event_del if event may not have been setNicholas Marriott
up; libevent2 complains about this. Reported by Moriyoshi Koizumi.
2012-03-17Revert screen-write.c r1.54 and fix the bug properly. After wrapping aNicholas Marriott
line in a pane, the cursor needs to move to the next line unless it scrolled.
2012-03-15Send secondary DA to terminals with XT in terminfo when starting up andNicholas Marriott
parse it to work out the xterm version.
2012-03-15Fix a warning. Doh.Nicholas Marriott
2012-03-15Add a helper function for enabling an optimization to make some codeNicholas Marriott
clearer.
2012-03-12Erm, use EL in a way that actually works...Nicholas Marriott
2012-03-12Use EL to clear to end of line if possible.Nicholas Marriott
2012-03-09Remove some bits leftover from unused backoff code.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-15Add a wrapper function tty_set_size from George Nachman.Nicholas Marriott
2012-01-29Add an option to move the status line to the top of the screen,Nicholas Marriott
requested by many.
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-15Calculate last position correctly for UTF-8 wide characters, reported byNicholas Marriott
Matthias Lederhofer.
2011-08-24Add a tty_bell wrapper function, from Dylan Alex Simon.Nicholas Marriott
2011-05-26Trim another useless if statement, from Ailin Nemui.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-05-18Support setting the xterm clipboard when copying from copy mode usingNicholas Marriott
the xterm escape sequence for the purpose (if xterm is configured to allow it). Written by and much discussed Ailin Nemui, guidance on xterm/termcap/terminfo from Thomas Dickey.
2011-05-08Use the tsl and fsl terminfo(5) capabilities to update terminal titleNicholas Marriott
and automatically fill them in on terminals with the XT capability (which means their title setting is xterm-compatible). From hsim at gmx.li.
2011-04-09If the terminal supports sitm for italics, use it instead of standoutNicholas Marriott
(smso). From Tiago Resende.
2011-03-27Set the terminal blocking again earlier, before sending the resetNicholas Marriott
sequences.
2011-03-26Fix to properly wrap wide characters, from Micah Cowan.Nicholas Marriott
2011-03-08Fix an incorrect test which was always true (oupper is always < olower),Nicholas Marriott
from Yusuke ENDOH.
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-01-29Accept tcgetattr/tcsetattr failure, fixes problems with fatal() if theNicholas Marriott
terminal disappears while locked.
2011-01-15Only set a mouse mode for mouse-select-pane if none already set by theNicholas Marriott
mode (any will do).
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-08Move all calls to fcntl(...O_NONBLOCK) into a function and clear theNicholas Marriott
flag on the stdio file descriptors before closing them (fixes things like "tmux ls && cat").
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-11-22There is somewhere that WINDOW_HIDDEN is getting set when it shouldn'tNicholas Marriott
be and I can't find it, but the flag itself is a useless optimisation that only applies to automatic-resize windows, so just dispose of it entirely. Fixes problems reported by Nicholas Riley.
2010-10-16Trying to set FD_CLOEXEC on every fd is a lost cause, just useNicholas Marriott
closefrom() before exec.
2010-09-11Ugh. Pass the right type into tty_term_has. Teaches me to make lastNicholas Marriott
minute changes :-/.
2010-09-11Use UTF-8 line drawing characters on UTF-8 terminals. Fixes some stupidNicholas Marriott
terminals (I'm looking at you, putty) which disable the vt100 ACS mode switching sequences in UTF-8 mode. Also on terminals without ACS at all, use ASCII equivalents where obvious.
2010-08-11Change the way backoff works. Instead of stopping reading from the ptyNicholas Marriott
when the client tty backs up too much, just stop updating the tty and only update the internal screen. Then when the tty recovers, force a redraw. This prevents a dodgy client from causing other clients to go into backoff while still allowing tmux to be responsive (locally) when seeing lots of output.