aboutsummaryrefslogtreecommitdiff
path: root/tty.c
Commit message (Collapse)AuthorAge
...
* If redrawing the region would mean redrawing > half the pane, just schedule toNicholas Marriott2009-04-02
| | | | | | | redraw the entire window. Also add a flag to skip updating the window any further if it is scheduled to be redrawn. This has the effect of batching multiple redraws together.
* Basic horizontal splitting and layout management. Still some redraw and otherNicholas Marriott2009-04-01
| | | | | | | | | | | issues - particularly, don't mix with manual pane resizing and be careful when viewing from multiple clients; generally cycling the layout a few times will fix most problems. Getting this in for testing while I think about how to deal with manual mode. Split window as normal and cycle the layouts with C-b space. Some of the layouts will work better when swap-pane comes along.
* FD_CLOEXEC more fds. Still one I can't find...Nicholas Marriott2009-03-31
|
* Draw vertical line on the right when window size is limited.Nicholas Marriott2009-03-31
|
* - Unbreak selection colouring.Nicholas Marriott2009-03-30
| | | | | - Get UTF-8 check the right way round...
* 8 -> UTF8_SIZE.Nicholas Marriott2009-03-29
|
* Better UTF-8 support, including combined characters. Unicode data is now storedNicholas Marriott2009-03-28
| | | | | | | | | | | as UTF-8 in a separate array, the code does a lookup into this every time it gets to a UTF-8 cell. Zero width characters are just appended onto the UTF-8 data for the previous cell. This also means that almost no bytes extra are wasted non-Unicode data (yay). Still some oddities, such as copy mode skips over wide characters in a strange way, and the code could do with some tidying.
* Step 2 of the Grand Plan To Make UTF-8 Better.Nicholas Marriott2009-03-28
| | | | | | | | | | | | | | | | | | | Split grid into two arrays, one containing grid attributes/flags/colours (keeps the name grid_cell for now) and a separate with the character data (called text). The text is stored as a u_short but is treated as a uint64_t elsewhere; eventually the grid will have two arrays. I'm not happy with the naming so that might change. Still need to decide where to go from here. I'm not sure whether to combine the peek/set functions together, and also whether to continue to treat the text as a uint64_t (and convert to/from Unicode) or make it a char array (of size one when UTF-8 disabled, eight when enabled) and keep everything as UTF-8. Also since UTF-8 will eventually become an attribute of the grid itself it might be nice to move all the padding crap into grid.c.
* Clear using ED when redrawing the screen. I foolishly assumed using spacesNicholas Marriott2009-03-28
| | | | | | would be equivalent and terminals would pick up on this, but apparently not. This fixes copy and paste in xterm/rxvt.
* Whoops. Didn't mean to commit this yet.Nicholas Marriott2009-03-27
|
* Update TODO.Nicholas Marriott2009-03-27
|
* Support for 88 colour terminals.Nicholas Marriott2009-03-07
|
* Don't die on any error from fd.Nicholas Marriott2009-02-17
|
* strdup() not necessary here.Nicholas Marriott2009-02-16
|
* Use the right row when calling RI.Nicholas Marriott2009-02-13
|
* Reset region before using CUD etc.Nicholas Marriott2009-02-13
|
* Code tidying on my way to find tmux-in-tmux bug.Nicholas Marriott2009-02-13
|
* Whoops. Build testing is a good idea...Nicholas Marriott2009-02-12
|
* Never draw last character: stops stray scrolling sometimes should status ↵Nicholas Marriott2009-02-12
| | | | line be disabled.
* Only use RI at the top of the screen.Nicholas Marriott2009-02-12
|
* FreeBSD's console wraps lines at $COLUMNS - 1 rather than $COLUMNS (the ↵Nicholas Marriott2009-02-11
| | | | cursor can never be beyond $COLUMNS - 1) and does not appear to support changing this behaviour, or any of the obvious possibilities (turning off right margin wrapping, insert mode). This is irritating, most notably because it impossible to write to the very bottom-right of the screen without scrolling. To work around this, if built on FreeBSD and run with a "cons" $TERM, the bottom-right cell on the screen is omitted.
* Emulate CSR with existing screen data on old/stupid terminals which don't ↵Nicholas Marriott2009-02-11
| | | | support it.
* Lose unnecessary cursor restores, fix a couple of placement bugs and remove ↵Nicholas Marriott2009-02-11
| | | | unused CR.
* We are going to need the updated screen data for emulating the scroll region,Nicholas Marriott2009-02-11
| | | | | | | | | which may involve changing the cursor position; however, the old (before redraw) cursor position is necessary for writing to the tty. So, save it before doing the redraw then update the internal screen then update the tty. Not sure I like this solution but it does the job for now.
* Change tty_cmd_* to use a window_pane.Nicholas Marriott2009-02-11
|
* Split most of tty_cmd_cell off to tty_cell. First step on making tty_cmd_* takeNicholas Marriott2009-02-11
| | | | | a window_pane for later use emulating scroll region.
* Update cursor y on newline otherwise RI gets screwed up at y=0.Nicholas Marriott2009-02-07
|
* * 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).
* Handle cursor on/off better.Nicholas Marriott2009-01-27
|
* Use reverse rather than background which doesn't show up when terminal doesn'tNicholas Marriott2009-01-19
| | | | | support colours.
* Unbreak UTF-8.Nicholas Marriott2009-01-18
|
* A couple of trivial optimisations.Nicholas Marriott2009-01-18
|
* suspend-client command and suspend client when ^Z key binding is used.Nicholas Marriott2009-01-18
|
* Window splitting. Two vertical panes fixed 50% each. This is a huge diff, ↵Nicholas Marriott2009-01-11
| | | | still a couple of bugs (notably heap corruption somewhere causing segfault on exit).
* Restore emulation of ich with insert mode.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.
* Work around lack of dch.Nicholas Marriott2008-12-13
|
* Kill warning.Nicholas Marriott2008-12-06
|
* Support dfly, from joshe.Nicholas Marriott2008-11-27
|
* Disable UTF-8 by default and add options to enable it.Nicholas Marriott2008-11-16
|
* Keep stack of previous windows.Nicholas Marriott2008-11-16
| | | | | Check for op (orig_pair) for default colours.
* TAILQ -> SLIST.Nicholas Marriott2008-11-05
|
* Don't die if tcsetattr fails; fixes problems with cwm.Nicholas Marriott2008-10-27
|
* I don't like this...Nicholas Marriott2008-10-09
|
* Translate 256 colours to 16.Nicholas Marriott2008-10-09
|
* Don't scroll screen when redrawing it.Nicholas Marriott2008-09-26
|
* Trim.Nicholas Marriott2008-09-26
|
* Internal screen data rewrite for better 256 colour/UTF-8 support.Nicholas Marriott2008-09-25
|
* Don't die on empty output strings, some terminfo entries have empty caps.Nicholas Marriott2008-09-23
|