aboutsummaryrefslogtreecommitdiff
path: root/input.c
Commit message (Collapse)AuthorAge
...
* Convert the window pane (pty master side) fd over to use a bufferevent.Nicholas Marriott2009-11-04
| | | | | 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.
* tabs are better; ok nicmTheo Deraadt2009-10-26
|
* Support the bright fg/bg colour SGR 90-97 and 100-107.Nicholas Marriott2009-10-23
| | | | Reported by Tim Allen.
* %zu not %u, doh.Nicholas Marriott2009-10-20
|
* Try to reduce the UTF-8 mess.Nicholas Marriott2009-10-20
| | | | | | | | | | | | 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.
* Handle DECCOLM by just emulating its side-effect of clearing the screen.Nicholas Marriott2009-10-13
|
* When backspace is received at the beginning of a line and the previous line wasNicholas Marriott2009-10-12
| | | | | | | | 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...
* Nuke unused variable.Nicholas Marriott2009-08-20
|
* Handle the device attributes (DA) escape sequence.Nicholas Marriott2009-08-19
|
* Instead of just checking for an empty buffer, which may not be the case ifNicholas Marriott2009-08-18
| | | | | | | 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.
* Add a flags member to the grid_line struct and use it to differentiate linesNicholas Marriott2009-08-08
| | | | | wrapped at the screen edge from those terminated by a newline. Then use this when copying to combine wrapped lines together into one.
* Using the alternative screen (smcup/rmcup) should also preserve the currentNicholas Marriott2009-08-07
| | | | | | colours and attributes. Found thanks to a report from Taylor Venable. While here also nuke a couple of extra blank lines.
* Make some functions which return unused values void (mostly found by lint) andNicholas Marriott2009-07-21
| | | | tweak a redundant expression in window_pane_set_mode.
* Support "alternate screen" mode (terminfo smcup/rmcup) typically used by fullNicholas Marriott2009-07-13
| | | | | | | 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.
* Implement the CBT (backward tab) sequence (\033[Z).Nicholas Marriott2009-06-04
|
* Proper support for tab stops (\033H etc), using a bitstring(3). Makes anotherNicholas Marriott2009-06-04
| | | | vttest test happy.
* Okay, so I screwed up when testing this, doh. Unbreak so that CAN/SUB actuallyNicholas Marriott2009-06-04
| | | | do cancel the sequence, and tweak to make the code more clear.
* Oops, CAN and SUB should abort the sequence (return to first state), not remainNicholas Marriott2009-06-04
| | | | in the same state.
* More input compatibility love. Support C0 within escape sequences, and the C0Nicholas Marriott2009-06-04
| | | | | control character VT (vertical tab, \013), which is treated as LF like VT102. Makes another vttest happy.
* Implement the DEC alignment test. With the last change this is enough for theNicholas Marriott2009-06-03
| | | | | first cursor test in vttest (in ports) to pass; it still shops a few more problems though.
* Pass window titles through vis(1). <0x20 is dropped anyway by the input stateNicholas Marriott2009-06-03
| | | | | | | machine but top-bit-set nonprintables could cause trouble, and they are neater like this anyway. Suggested by deraadt a few days ago.
* Import tmux, a terminal multiplexor allowing (among other things) a singleNicholas Marriott2009-06-01
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