Commit Graph

  • fce889235c Sync OpenBSD patchset 422: Tiago Cunha 2009-10-23 17:17:20 +00:00
  • f41a3914a5 Sync OpenBSD patchset 421: Tiago Cunha 2009-10-23 17:16:25 +00:00
  • c643ac4827 Sync OpenBSD patchset 420: Tiago Cunha 2009-10-23 17:13:10 +00:00
  • 97e02eae7d Sync OpenBSD patchset 419: Tiago Cunha 2009-10-23 17:11:26 +00:00
  • 516bfe7ba3 Sync OpenBSD patchset 418: Tiago Cunha 2009-10-23 17:10:00 +00:00
  • 9463492ac1 Sync OpenBSD patchset 417: Tiago Cunha 2009-10-23 17:09:21 +00:00
  • 2f14ef61ff Sync OpenBSD patchset 416: Tiago Cunha 2009-10-23 17:08:30 +00:00
  • 2e39ab59d7 Sync OpenBSD patchset 415: Tiago Cunha 2009-10-23 17:07:18 +00:00
  • ac4e4a2b6c Sync OpenBSD patchset 414: Tiago Cunha 2009-10-23 17:06:23 +00:00
  • 13d1df659f Sync OpenBSD patchset 413: Tiago Cunha 2009-10-23 17:03:48 +00:00
  • c2b8f3b55a Support the bright fg/bg colour SGR 90-97 and 100-107. Nicholas Marriott 2009-10-23 15:48:39 +00:00
  • 1f22a199fb Redraw checks have to after handling input or pane redraw flags set by key presses will not be acted on. Nicholas Marriott 2009-10-22 21:01:52 +00:00
  • 9c40a4edc5 The client buffers have to be checked after every event in order to catch the escape timers and properly reset the cursor. Nicholas Marriott 2009-10-22 20:04:21 +00:00
  • eddcc3dfa9 Split the server code handling clients, jobs and windows off into separate files from server.c (merging server-msg.c into the client file) and rather than iterating over each set after poll(), allow a callback to be specified when the fd is added and just walk once over the returned pollfds calling each callback where needed. Nicholas Marriott 2009-10-22 19:41:51 +00:00
  • fd35b6f836 Only redraw the pane when changing mode, not the entire window. Nicholas Marriott 2009-10-22 12:30:00 +00:00
  • eb0c33cba4 Merge prepare_cmd into main as it is short and only called once. Nicholas Marriott 2009-10-22 10:04:07 +00:00
  • 284b94662a Tidy identify message send into a separate function. Nicholas Marriott 2009-10-21 21:11:55 +00:00
  • d69b364b5f Don't try to unsuspend a client if it isn't suspended. Nicholas Marriott 2009-10-21 20:16:40 +00:00
  • 90ad041fa5 Client tidying: get rid of client_ctx struct in favour of two variables in client.c, and move the functions in client-fn.c into other files. Nicholas Marriott 2009-10-21 20:11:47 +00:00
  • 59e667906f Unused variable. Nicholas Marriott 2009-10-21 19:27:09 +00:00
  • a22c06a2d6 Remove unused function. Nicholas Marriott 2009-10-21 18:20:16 +00:00
  • 9a4855295b Nuke dead store. Nicholas Marriott 2009-10-21 18:12:31 +00:00
  • dd46f634fe Now we are correctly not redrawing the whole pane on linefeed, redo the last-cursor-position code to move to the right position when panes reach EOL. Nicholas Marriott 2009-10-21 16:52:30 +00:00
  • af2b0f452c Tweak descriptions for up/down pane to be clearer. Nicholas Marriott 2009-10-21 13:48:27 +00:00
  • 9b5da97e6f Don't redraw the scroll region on linefeed/reverse index unless it is necessary (the cursor is at the bottom/top). Should fix slow cursor movement when using vi in a pane spotted by pirofti@. Nicholas Marriott 2009-10-21 13:42:44 +00:00
  • 683ddbc466 Some terminals don't correctly clear their let's-wrap flag after changing the 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. Nicholas Marriott 2009-10-21 09:36:53 +00:00
  • 4afecbe400 Getting the read and write ends of the pipe the right way round is usually recommended. DOH. Nicholas Marriott 2009-10-21 07:37:11 +00:00
  • 7825871d6a Getting the read and write ends of the pipe the right way round is usually recommended. DOH. Nicholas Marriott 2009-10-21 07:24:23 +00:00
  • bb625a76d9 +. Nicholas Marriott 2009-10-21 07:19:59 +00:00
  • 9afb0d739e %zu not %u, doh. Nicholas Marriott 2009-10-20 22:17:33 +00:00
  • 6f2169037e Sort out stdout before stdin/stderr in case the stdout side of the pipe got one of their fds. Nicholas Marriott 2009-10-20 22:15:32 +00:00
  • 480f5d3184 Correctly nuke the EOL $ marker when scrolling, reported by martynas@, thanks. Nicholas Marriott 2009-10-20 21:35:25 +00:00
  • 1af09d6330 Try to reduce the UTF-8 mess. Nicholas Marriott 2009-10-20 19:18:28 +00:00
  • 62f234ce3b UTF-8 combined character fixes. Nicholas Marriott 2009-10-20 17:33:33 +00:00
  • 387f4d42cc Move the check for whether to force a line wrapper lower down into the tty code where it has access to the tty width, which is what should have been checked. Nicholas Marriott 2009-10-20 16:32:23 +00:00
  • d1e6388fed Nuke stray blank line. Nicholas Marriott 2009-10-20 14:22:57 +00:00
  • b027aa103c +. Nicholas Marriott 2009-10-20 14:22:17 +00:00
  • 2afe395ff2 Stop updating the screen when not in output mode, stops copy mode getting confused. Nicholas Marriott 2009-10-19 13:18:13 +00:00
  • 59269a431b +. Nicholas Marriott 2009-10-17 15:58:52 +00:00
  • daa26079ee Always move the cursor position on !xenl terminals, since there is no invisible last cursor position. Nicholas Marriott 2009-10-17 08:35:38 +00:00
  • fe26b5d25f Don't print wide characters at screen width - 1. Matches uterm behaviour and is probably a better idea anyway. Nicholas Marriott 2009-10-17 08:32:18 +00:00
  • 43d62c1ae3 Instead of having a complicated check to see if the cursor is in the last position to avoid an explicit wrap, actually move it there. Nicholas Marriott 2009-10-17 08:24:46 +00:00
  • 70355021d8 When checking whether the region will scroll and the cursor position is thus unsuitable for using CUD/CUU, check the current cursor position not the target position. Nicholas Marriott 2009-10-16 19:09:40 +00:00
  • c8f2584d87 +. Nicholas Marriott 2009-10-15 20:48:51 +00:00
  • 24d7cf6618 Sync OpenBSD patchset 412: Tiago Cunha 2009-10-15 20:10:28 +00:00
  • 1fdf489cae Turn off stupid warnings when using Sun CC. Nicholas Marriott 2009-10-15 08:15:06 +00:00
  • 0614ca434a Fill in the tty name in SunOS's forkpty compat, and use it in osdep_getname. From Todd Carson. Nicholas Marriott 2009-10-15 07:11:25 +00:00
  • dba0d54cf5 The pane pty name isn't useful for anything so show the pane number instead. Nicholas Marriott 2009-10-15 07:05:38 +00:00
  • 8085adb8a2 Sync OpenBSD patchset 411: Tiago Cunha 2009-10-15 01:56:45 +00:00
  • 3d88da7b2a Sync OpenBSD patchset 409: Tiago Cunha 2009-10-15 01:55:12 +00:00
  • ee46dba585 Sync OpenBSD patchset 408: Tiago Cunha 2009-10-15 01:53:48 +00:00
  • a505ca69d9 Sync OpenBSD patchset 407: Tiago Cunha 2009-10-15 01:52:47 +00:00
  • 428f76db80 Fix CVS keyword. Tiago Cunha 2009-10-15 01:51:09 +00:00
  • b6ebf7cb60 Update. Tiago Cunha 2009-10-15 01:49:39 +00:00
  • 6257be6371 Sync OpenBSD patchset 406: Tiago Cunha 2009-10-15 01:48:24 +00:00
  • 9800dc4697 Sync OpenBSD patchset 405: Tiago Cunha 2009-10-15 01:45:13 +00:00
  • b8e4bd2029 Sync OpenBSD patchset 404: Tiago Cunha 2009-10-15 01:44:15 +00:00
  • 941032b707 Sync OpenBSD patchset 403: Tiago Cunha 2009-10-15 01:43:16 +00:00
  • fe99f6fa11 Sync OpenBSD patchset 402: Tiago Cunha 2009-10-15 01:42:07 +00:00
  • 6103628129 Sync OpenBSD patchset 401: Tiago Cunha 2009-10-15 01:41:14 +00:00
  • cbd3b1bc9b Sync OpenBSD patchset 400: Tiago Cunha 2009-10-15 01:39:30 +00:00
  • 04db3c6211 Sync OpenBSD patchset 399: Tiago Cunha 2009-10-15 01:38:09 +00:00
  • 858b8b190b Sync OpenBSD patchset 398: Tiago Cunha 2009-10-15 01:36:53 +00:00
  • 7af01a4afb Sync OpenBSD patchset 397: Tiago Cunha 2009-10-15 01:35:35 +00:00
  • 9e4a3d50f0 Sync OpenBSD patchset 396: Tiago Cunha 2009-10-15 01:34:28 +00:00
  • 44fd6f4381 Sync OpenBSD patchset 395: Tiago Cunha 2009-10-15 01:33:21 +00:00
  • 8ab3a3d9aa Sync OpenBSD patchset 394: Tiago Cunha 2009-10-15 01:31:38 +00:00
  • 8bdcc10c8f Sync OpenBSD patchset 393: Tiago Cunha 2009-10-15 01:30:00 +00:00
  • 6369fca253 Sync OpenBSD patchset 392: Tiago Cunha 2009-10-15 01:28:14 +00:00
  • 9b771a96f0 Sync OpenBSD patchset 391: Tiago Cunha 2009-10-15 01:26:50 +00:00
  • 1a3c334c75 cmd_find_client shouldn't die when there is an empty slot in the clients array. DOH. Nicholas Marriott 2009-10-14 20:52:28 +00:00
  • f8f2421ac3 Don't let cmd_lookup_client find clients w/o a session. Nicholas Marriott 2009-10-14 13:22:24 +00:00
  • 9e6d1b24c8 Support for automatic-rename for Solaris thanks to Todd Carson. Nicholas Marriott 2009-10-14 10:14:21 +00:00
  • adad557499 Don't allow cmd_lookup_client to test clients without a session. Nicholas Marriott 2009-10-14 09:29:10 +00:00
  • ad566a86de Move lines into the history when scrolling even if the scroll region is not the entire screen. Nicholas Marriott 2009-10-13 15:38:37 +00:00
  • 71dc6e04e8 Handle DECCOLM by just emulating its side-effect of clearing the screen. Nicholas Marriott 2009-10-13 15:23:13 +00:00
  • 587e7127eb +. Nicholas Marriott 2009-10-13 14:35:06 +00:00
  • 6b522bd770 +. Nicholas Marriott 2009-10-13 14:27:57 +00:00
  • edc901d107 Lots of stuff is done done done. Nicholas Marriott 2009-10-13 13:48:47 +00:00
  • 38df960e68 Add mode keys to move the cursor to the top, middle and bottom of the screen. H/M/L in vi mode and M-R/M-r in emacs (bottom of screen not bound in emacs). Nicholas Marriott 2009-10-13 13:45:56 +00:00
  • 0907ca1931 Do this in a better way - print messages when exiting with nonzero. Nicholas Marriott 2009-10-13 13:15:26 +00:00
  • 760e39e405 Don't print exit messages when used as a login shell, requested by martynas@ a while back. Nicholas Marriott 2009-10-13 13:11:06 +00:00
  • 5d78371628 Don't try to use \n across scroll region when doing \r\n either. Nicholas Marriott 2009-10-13 08:37:15 +00:00
  • 9294cb099f When a session is unattached, reset its activity timer to prevent it locking instantly when reattached. Nicholas Marriott 2009-10-13 06:14:08 +00:00
  • 4dcb5040a0 Instead of using something sort of similar for both newline checks, use something the same. Doesn't fix the bug I'm looking for though :-/. Nicholas Marriott 2009-10-13 00:44:16 +00:00
  • e88a2ba7d4 +. Nicholas Marriott 2009-10-12 23:13:06 +00:00
  • d7626cd9d7 When drawing lines that have wrapped naturally, don't force a newline but 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. Nicholas Marriott 2009-10-12 17:19:47 +00:00
  • 8608c6970d When backspace is received at the beginning of a line and the previous line was wrapped, move the cursor back up to the end of the previous line. Nicholas Marriott 2009-10-12 16:59:55 +00:00
  • 693b3d03e6 Don't run through the column unchanged case if the row was unchanged but there were no suitable optimisations, instead make it an else to fall through to absolute addressing. Nicholas Marriott 2009-10-12 16:41:02 +00:00
  • eb9826f65d If the vertical cursor movement crosses the scroll region, CUU and CUD shouldn't be used even if VPA isn't present - in that case CUP should be used. Nicholas Marriott 2009-10-12 16:37:43 +00:00
  • 56157444de Wrap a couple of long lines. Nicholas Marriott 2009-10-12 16:33:39 +00:00
  • 0aab5811ca Use absolute movement if right at the end of the line as it isn't a reliable place to move from relatively. Nicholas Marriott 2009-10-12 14:54:19 +00:00
  • 687c4a9fab Use relative cursor movement instead of absolute when possible and when supported by the terminal to reduce the size of the output data (generally about 10-20%). Nicholas Marriott 2009-10-12 13:01:18 +00:00
  • 33ae063cae Permit attributes to be turned off in #[] by prefixing with "no", for example "noblink". Nicholas Marriott 2009-10-12 11:08:02 +00:00
  • 762459954f Similarly add a tty_cursor_pane function to tidy up most of the calls. Nicholas Marriott 2009-10-12 09:29:58 +00:00
  • 972a6f5656 _absolute is redundant, just use tty_region. Nicholas Marriott 2009-10-12 09:16:59 +00:00
  • f05b32f7ad Cleanup: use two functions for region setting, one for absolute and one inside pane. Nicholas Marriott 2009-10-12 09:09:35 +00:00
  • 629afba526 Reduce diff with OpenBSD. Tiago Cunha 2009-10-12 00:49:06 +00:00
  • f92cc84631 Sync OpenBSD patchset 390: Tiago Cunha 2009-10-12 00:41:00 +00:00
  • 6ea6d1b29f Sync OpenBSD patchset 389: Tiago Cunha 2009-10-12 00:38:31 +00:00