Nicholas Marriott
a0ec4a11ee
Drop INPUTKEY_CTRL and just handle it as part of the table.
2009-10-26 13:34:26 +00:00
Nicholas Marriott
25d2000625
Add or fix some comments.
2009-10-26 13:29:24 +00:00
Nicholas Marriott
b3604dcf83
Tidy up table.
2009-10-26 13:22:30 +00:00
Nicholas Marriott
db4452d307
Rename keypad keys to something more useful.
2009-10-26 13:13:33 +00:00
Nicholas Marriott
10a656eedb
Remove the xterm-keys code which is broken (a replacement is coming but some
...
more cleanup is needed first).
2009-10-26 13:02:53 +00:00
Nicholas Marriott
3c9619bb0a
Don't try to continue processing a client if the session has been destroyed.
2009-10-25 22:00:15 +00:00
Nicholas Marriott
48b6d18e7f
Remove -d from tmux.1 as well.
2009-10-25 21:12:15 +00:00
Nicholas Marriott
3a7636ff0f
Remove the -d flag to tmux and just use op/AX to detect default colours.
...
Irritatingly, although op can be used to tell if a terminal supports default
colours, it can't be used to set them because in some terminfo descriptions it
resets attributes as a side-effect (acts as sgr0) and in others it doesn't, so
it is not possible to determine reliably what the terminal state will be
afterwards. So if AX is missing and op is present, tmux just sends sgr0.
Anyone using -d for a terminal who finds they actually needed it can replace it
using terminal-overrides, but please let me know as it is probably an omission
from terminfo.
2009-10-25 21:11:21 +00:00
Nicholas Marriott
5bed597e61
+time.h.
2009-10-25 17:51:07 +00:00
Nicholas Marriott
7b4f0398c3
[ is a punctuation character and should be escaped with Ql. Although the
...
current groff version we have seems to handle it fine, other versions are not
so tolerant.
2009-10-25 01:10:57 +00:00
Nicholas Marriott
385236e967
Bring a comment into line with reality.
2009-10-24 21:18:33 +00:00
Nicholas Marriott
df818c1b69
-a option to kill all except current pane. From Tiago Cunha, thanks!
2009-10-24 10:12:39 +00:00
Nicholas Marriott
c2b8f3b55a
Support the bright fg/bg colour SGR 90-97 and 100-107.
...
Reported by Tim Allen.
2009-10-23 15:48:39 +00:00
Nicholas Marriott
1f22a199fb
Redraw checks have to after handling input or pane redraw flags set by key
...
presses will not be acted on.
2009-10-22 21:01:52 +00:00
Nicholas Marriott
9c40a4edc5
The client buffers have to be checked after every event in order to catch the
...
escape timers and properly reset the cursor.
2009-10-22 20:04:21 +00:00
Nicholas Marriott
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.
More to come, getting this in so it is tested.
2009-10-22 19:41:51 +00:00
Nicholas Marriott
fd35b6f836
Only redraw the pane when changing mode, not the entire window.
2009-10-22 12:30:00 +00:00
Nicholas Marriott
eb0c33cba4
Merge prepare_cmd into main as it is short and only called once.
2009-10-22 10:04:07 +00:00
Nicholas Marriott
284b94662a
Tidy identify message send into a separate function.
2009-10-21 21:11:55 +00:00
Nicholas Marriott
d69b364b5f
Don't try to unsuspend a client if it isn't suspended.
2009-10-21 20:16:40 +00:00
Nicholas Marriott
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.
2009-10-21 20:11:47 +00:00
Nicholas Marriott
59e667906f
Unused variable.
2009-10-21 19:27:09 +00:00
Nicholas Marriott
a22c06a2d6
Remove unused function.
2009-10-21 18:20:16 +00:00
Nicholas Marriott
9a4855295b
Nuke dead store.
2009-10-21 18:12:31 +00:00
Nicholas Marriott
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.
2009-10-21 16:52:30 +00:00
Nicholas Marriott
af2b0f452c
Tweak descriptions for up/down pane to be clearer.
2009-10-21 13:48:27 +00:00
Nicholas Marriott
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@.
2009-10-21 13:42:44 +00:00
Nicholas Marriott
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.
2009-10-21 09:36:53 +00:00
Nicholas Marriott
7825871d6a
Getting the read and write ends of the pipe the right way round is usually
...
recommended. DOH.
2009-10-21 07:24:23 +00:00
Nicholas Marriott
9afb0d739e
%zu not %u, doh.
2009-10-20 22:17:33 +00:00
Nicholas Marriott
6f2169037e
Sort out stdout before stdin/stderr in case the stdout side of the pipe got one
...
of their fds.
2009-10-20 22:15:32 +00:00
Nicholas Marriott
480f5d3184
Correctly nuke the EOL $ marker when scrolling, reported by martynas@, thanks.
2009-10-20 21:35:25 +00:00
Nicholas Marriott
1af09d6330
Try to reduce the UTF-8 mess.
...
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.
2009-10-20 19:18:28 +00:00
Nicholas Marriott
62f234ce3b
UTF-8 combined character fixes.
...
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.
2009-10-20 17:33:33 +00:00
Nicholas Marriott
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.
2009-10-20 16:32:23 +00:00
Nicholas Marriott
d1e6388fed
Nuke stray blank line.
2009-10-20 14:22:57 +00:00
Nicholas Marriott
2afe395ff2
Stop updating the screen when not in output mode, stops copy mode getting
...
confused.
2009-10-19 13:18:13 +00:00
Nicholas Marriott
daa26079ee
Always move the cursor position on !xenl terminals, since there is no invisible
...
last cursor position.
Also nuke an unused variable.
2009-10-17 08:35:38 +00:00
Nicholas Marriott
fe26b5d25f
Don't print wide characters at screen width - 1. Matches uterm behaviour and
...
is probably a better idea anyway.
2009-10-17 08:32:18 +00:00
Nicholas Marriott
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.
Some UTF-8 fixes to come.
2009-10-17 08:24:46 +00:00
Nicholas Marriott
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.
2009-10-16 19:09:40 +00:00
Nicholas Marriott
dba0d54cf5
The pane pty name isn't useful for anything so show the pane number instead.
2009-10-15 07:05:38 +00:00
Nicholas Marriott
1a3c334c75
cmd_find_client shouldn't die when there is an empty slot in the clients
...
array. DOH.
2009-10-14 20:52:28 +00:00
Nicholas Marriott
adad557499
Don't allow cmd_lookup_client to test clients without a session.
2009-10-14 09:29:10 +00:00
Nicholas Marriott
ad566a86de
Move lines into the history when scrolling even if the scroll region is not
...
the entire screen.
Allows ircII users to see history, prompted by naddy.
2009-10-13 15:38:37 +00:00
Nicholas Marriott
71dc6e04e8
Handle DECCOLM by just emulating its side-effect of clearing the screen.
2009-10-13 15:23:13 +00:00
Nicholas Marriott
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).
2009-10-13 13:45:56 +00:00
Nicholas Marriott
0907ca1931
Do this in a better way - print messages when exiting with nonzero.
...
Also remove the login shell information from server-info, only the client
should care about it.
2009-10-13 13:15:26 +00:00
Nicholas Marriott
760e39e405
Don't print exit messages when used as a login shell, requested by martynas@ a
...
while back.
2009-10-13 13:11:06 +00:00
Nicholas Marriott
5d78371628
Don't try to use \n across scroll region when doing \r\n either.
2009-10-13 08:37:15 +00:00