Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
| * | Don't redraw the scroll region on linefeed/reverse index unless it is necessary | Nicholas Marriott | 2009-10-21 | |
| | | | | | | | | | | (the cursor is at the bottom/top). Should fix slow cursor movement when using vi in a pane spotted by pirofti@. | |||
| * | Some terminals don't correctly clear their let's-wrap flag after changing the | Nicholas Marriott | 2009-10-21 | |
| | | | | | | | | | | | | | | scroll region (which moves the cursor to 0,0). This means that if the cursor was at the edge of the screen, any further output after scroll region change incorrectly causes a line wrap. Add a workaround to move the cursor to position 0 if it is at the screen edge before changing scroll region. | |||
| * | Getting the read and write ends of the pipe the right way round is usually | Nicholas Marriott | 2009-10-21 | |
| | | | | | | | | recommended. DOH. | |||
| * | %zu not %u, doh. | Nicholas Marriott | 2009-10-20 | |
| | | ||||
| * | Sort out stdout before stdin/stderr in case the stdout side of the pipe got one | Nicholas Marriott | 2009-10-20 | |
| | | | | | | | | of their fds. | |||
| * | Correctly nuke the EOL $ marker when scrolling, reported by martynas@, thanks. | Nicholas Marriott | 2009-10-20 | |
| | | ||||
| * | Try to reduce the UTF-8 mess. | Nicholas Marriott | 2009-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. | |||
| * | UTF-8 combined character fixes. | Nicholas Marriott | 2009-10-20 | |
| | | | | | | | | | | | | | | | | | | | | Thai can have treble combinations (1 x width=1 then 2 x width=0) so bump the UTF-8 cell data size to 9 and alter the code to allow this. Also break off the combining code into a separate function, handle any further combining beyond the buffer size by replacing the character with _s, and when redrawing the UTF-8 character don't assume the first part has just been printed, redraw the entire line. | |||
| * | Move the check for whether to force a line wrapper lower down into the tty code | Nicholas Marriott | 2009-10-20 | |
| | | | | | | | | where it has access to the tty width, which is what should have been checked. | |||
| * | Nuke stray blank line. | Nicholas Marriott | 2009-10-20 | |
| | | ||||
| * | Stop updating the screen when not in output mode, stops copy mode getting | Nicholas Marriott | 2009-10-19 | |
| | | | | | | | | confused. | |||
| * | Always move the cursor position on !xenl terminals, since there is no invisible | Nicholas Marriott | 2009-10-17 | |
| | | | | | | | | | | | | last cursor position. Also nuke an unused variable. | |||
| * | Don't print wide characters at screen width - 1. Matches uterm behaviour and | Nicholas Marriott | 2009-10-17 | |
| | | | | | | | | is probably a better idea anyway. | |||
| * | Instead of having a complicated check to see if the cursor is in the last | Nicholas Marriott | 2009-10-17 | |
| | | | | | | | | | | | | position to avoid an explicit wrap, actually move it there. Some UTF-8 fixes to come. | |||
| * | When checking whether the region will scroll and the cursor position is thus | Nicholas Marriott | 2009-10-16 | |
| | | | | | | | | | | unsuitable for using CUD/CUU, check the current cursor position not the target position. | |||
| * | The pane pty name isn't useful for anything so show the pane number instead. | Nicholas Marriott | 2009-10-15 | |
| | | ||||
| * | cmd_find_client shouldn't die when there is an empty slot in the clients | Nicholas Marriott | 2009-10-14 | |
| | | | | | | | | array. DOH. | |||
| * | Don't allow cmd_lookup_client to test clients without a session. | Nicholas Marriott | 2009-10-14 | |
| | | ||||
| * | Move lines into the history when scrolling even if the scroll region is not | Nicholas Marriott | 2009-10-13 | |
| | | | | | | | | | | | | the entire screen. Allows ircII users to see history, prompted by naddy. | |||
| * | Handle DECCOLM by just emulating its side-effect of clearing the screen. | Nicholas Marriott | 2009-10-13 | |
| | | ||||
| * | Add mode keys to move the cursor to the top, middle and bottom of the screen. | Nicholas Marriott | 2009-10-13 | |
| | | | | | | | | H/M/L in vi mode and M-R/M-r in emacs (bottom of screen not bound in emacs). | |||
| * | Do this in a better way - print messages when exiting with nonzero. | Nicholas Marriott | 2009-10-13 | |
| | | | | | | | | | | Also remove the login shell information from server-info, only the client should care about it. | |||
| * | Don't print exit messages when used as a login shell, requested by martynas@ a | Nicholas Marriott | 2009-10-13 | |
| | | | | | | | | while back. | |||
| * | Don't try to use \n across scroll region when doing \r\n either. | Nicholas Marriott | 2009-10-13 | |
| | | ||||
| * | When a session is unattached, reset its activity timer to prevent it locking | Nicholas Marriott | 2009-10-13 | |
| | | | | | | | | instantly when reattached. | |||
| * | Instead of using something sort of similar for both newline checks, use | Nicholas Marriott | 2009-10-13 | |
| | | | | | | | | something the same. Doesn't fix the bug I'm looking for though :-/. | |||
| * | When drawing lines that have wrapped naturally, don't force a newline but | Nicholas Marriott | 2009-10-12 | |
| | | | | | | | | | | | | | | | | | | | | | | | | permit them to wrap naturally again. This allows terminals that use this to guess where lines start and end for eg mouse selecting (like xterm) to work correctly. This was another long-standing issue raised by several people over the last while. Thanks to martynas@ for much testing. This was not trivial to get right so bringing it in for wider testing and adn to fix any further glitches in-tree. | |||
| * | When backspace is received at the beginning of a line and the previous line was | Nicholas Marriott | 2009-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... | |||
| * | Don't run through the column unchanged case if the row was unchanged but there | Nicholas Marriott | 2009-10-12 | |
| | | | | | | | | | | were no suitable optimisations, instead make it an else to fall through to absolute addressing. | |||
| * | If the vertical cursor movement crosses the scroll region, CUU and CUD | Nicholas Marriott | 2009-10-12 | |
| | | | | | | | | shouldn't be used even if VPA isn't present - in that case CUP should be used. | |||
| * | Wrap a couple of long lines. | Nicholas Marriott | 2009-10-12 | |
| | | ||||
| * | Use absolute movement if right at the end of the line as it isn't a reliable | Nicholas Marriott | 2009-10-12 | |
| | | | | | | | | place to move from relatively. | |||
| * | Use relative cursor movement instead of absolute when possible and when | Nicholas Marriott | 2009-10-12 | |
| | | | | | | | | | | supported by the terminal to reduce the size of the output data (generally about 10-20%). | |||
| * | Permit attributes to be turned off in #[] by prefixing with "no", for example | Nicholas Marriott | 2009-10-12 | |
| | | | | | | | | "noblink". | |||
| * | Similarly add a tty_cursor_pane function to tidy up most of the calls. | Nicholas Marriott | 2009-10-12 | |
| | | ||||
| * | _absolute is redundant, just use tty_region. | Nicholas Marriott | 2009-10-12 | |
| | | ||||
| * | Cleanup: use two functions for region setting, one for absolute and one inside | Nicholas Marriott | 2009-10-12 | |
| | | | | | | | | pane. | |||
| * | Like linefeed, don't set the scroll region for reverse index unless it will be | Nicholas Marriott | 2009-10-11 | |
| | | | | | | | | | | | | needed. While here, also tidy up a couple of long lines and remove an extraneous blank. | |||
| * | punctuation fix; | Jason McIntyre | 2009-10-11 | |
| | | ||||
| * | Set the current window pointer to NULL when killing a winlink that is to be | Nicholas Marriott | 2009-10-11 | |
| | | | | | | | | | | | | | | replaced with link-window -k. This prevents it being pushed onto the last window stack and causing a use-after-free. Only took me an hour to find this :-/... | |||
| * | Add a pipe-pane command to allow a pane to be piped to a shell command, for | Nicholas Marriott | 2009-10-11 | |
| | | | | | | | | | | | | | | | | | | | | | | example: pipe-pane 'cat >~/out' No arguments stops outputing and closes the pipe; the -o flag toggles a pipe and on and off (useful for key bindings). Suggested by espie@. | |||
| * | Convert if-shell over to the background job framework as well. | Nicholas Marriott | 2009-10-11 | |
| | | ||||
| * | Remove a debugging leftover and add copyright. | Nicholas Marriott | 2009-10-11 | |
| | | ||||
| * | Switch run-shell over to queue the command in the background like #(). | Nicholas Marriott | 2009-10-11 | |
| | | ||||
| * | There isn't much point in having a free function if it isn't used. | Nicholas Marriott | 2009-10-11 | |
| | | | | | | | | Also allow a NULL tree. | |||
| * | Collect status from dead jobs and don't invoke the callback until both | Nicholas Marriott | 2009-10-11 | |
| | | | | | | | | all input (the socket is closed) and status is available. | |||
| * | Clean up by introducing a wrapper struct for mouse clicks rather than passing | Nicholas Marriott | 2009-10-11 | |
| | | | | | | | | | | | | | | three u_chars around. As a side-effect this fixes incorrectly rejecting high cursor positions (because it was comparing them as signed char), reported by Tom Doherty. | |||
| * | Braek some bits out of server_fill_client() that aren't really related to | Nicholas Marriott | 2009-10-11 | |
| | | | | | | | | polling into their own function. | |||
| * | Put all jobs on a global all_jobs list and use that in server.c instead of | Nicholas Marriott | 2009-10-10 | |
| | | | | | | | | running through all the clients. | |||
| * | -scroll mode which is dead. | Nicholas Marriott | 2009-10-10 | |
| | |