Commit Graph

1206 Commits

Author SHA1 Message Date
Nicholas Marriott
853ad68162 Add a dedicated function to convert a line into a string and use it to simplify the search window function. 2009-06-25 16:02:37 +00:00
Nicholas Marriott
e6e1b45fa1 Change to match xterm's resizing behaviour, including pushing lines into the
history from the top when reducing vertical size and pulling them again when
increasing size.
2009-06-25 16:02:10 +00:00
Nicholas Marriott
944520b3a8 Make remain-on-exit work again when there is only one pane left, which was
broken sometime during the pane/layout changes. Reported/tested by Iain Morgan,
thanks.
2009-06-25 16:01:42 +00:00
Nicholas Marriott
942ea4267d Trying to predict the cursor position for UTF-8 output in the same way as for
normal eight-bit output is wrong, separate it into a different function. Fixes
spacing when mixing UTF-8 with some escape sequences, notably the way w3m does
it.
2009-06-25 16:01:26 +00:00
Nicholas Marriott
245685433e Constify utf8_width() function argument. 2009-06-25 16:00:50 +00:00
Nicholas Marriott
7eff7f7629 If a pane is "zombified" (remain-on-exit flag), don't continue to queue key and
mouse input for it (otherwise they are processed after respawn).
2009-06-25 16:00:25 +00:00
Nicholas Marriott
cd5a4f4c35 LC_ALL overrides LC_CTYPE and LANG. Comment was correct but the code
wrong. Pointed out by Hannah Schroeter, thanks.
2009-06-25 16:00:02 +00:00
Nicholas Marriott
7be69bfa03 Terminate cwd buffer before running xstrdup on it. 2009-06-25 15:59:42 +00:00
Nicholas Marriott
6f4600c533 Check the first of LC_CTYPE, LC_ALL and LANG, rather than just the last, when
trying to decide about UTF-8, and use strcasestr. Reported by Geert Hendrickx.
2009-06-25 15:59:27 +00:00
Nicholas Marriott
fbcee9f114 strdup the input to putenv to avoid in one case passing a string that is later
freed and in the other const strings.
2009-06-25 15:58:58 +00:00
Nicholas Marriott
0e95769b43 Call setproctitle earlier in the client, and include the socket name. Makes it
easier to match client to server in ps/pgrep when using several servers.
2009-06-25 15:58:33 +00:00
Nicholas Marriott
b9155e835a Print a better message than '(null)' if no command is specified ("tmux \;"). 2009-06-25 15:56:39 +00:00
Nicholas Marriott
f90450f854 Zero the password given to -U in the client as well. 2009-06-25 15:56:25 +00:00
Nicholas Marriott
418128bebc If the prompt is hidden or a password is sent with -U, zero it before freeing
it.
2009-06-25 15:55:34 +00:00
Nicholas Marriott
63b38ef628 Implement the CBT (backward tab) sequence (\033[Z). 2009-06-25 15:54:57 +00:00
Nicholas Marriott
1b245388b5 Proper support for tab stops (\033H etc), using a bitstring(3). Makes another
vttest test happy.
2009-06-25 15:54:38 +00:00
Nicholas Marriott
cd71a13a14 Okay, so I screwed up when testing this, doh. Unbreak so that CAN/SUB actually
do cancel the sequence, and tweak to make the code more clear.
2009-06-25 15:54:03 +00:00
Nicholas Marriott
4eed190649 Oops, CAN and SUB should abort the sequence (return to first state), not remain
in the same state.
2009-06-25 15:53:44 +00:00
Nicholas Marriott
c3c14817c9 More input compatibility love. Support C0 within escape sequences, and the C0
control character VT (vertical tab, \013), which is treated as LF like
VT102. Makes another vttest happy.
2009-06-25 15:52:59 +00:00
Nicholas Marriott
b8ec0c713f Support insert mode by using insert character to shift the cells before writing
as normal.
2009-06-25 15:52:12 +00:00
Nicholas Marriott
93631b3ca7 Implement the DEC alignment test. With the last change this is enough for the
first cursor test in vttest (in ports) to pass; it still shops a few more
problems though.
2009-06-25 15:51:54 +00:00
Nicholas Marriott
49477de55c Fix some miscalculations when clearing to start of screen: the number of lines
to the cursor is cy not cy - 1, and the current cursor cell should be included.
2009-06-25 15:50:48 +00:00
Nicholas Marriott
dff949747c Use vis(3) instead of handrolled function. 2009-06-25 15:50:03 +00:00
Nicholas Marriott
7597cb6834 Pass window titles through vis(1). <0x20 is dropped anyway by the input state
machine but top-bit-set nonprintables could cause trouble, and they are neater
like this anyway.
2009-06-25 15:49:27 +00:00
Nicholas Marriott
4f2e5f8c50 Do not set the window title by default (make set-titles option default to off),
wiping over the title is rude and annoying.
2009-06-25 15:48:59 +00:00
Nicholas Marriott
28bcf774e5 New session option, status-utf8, to control the interpretation of top-bit-set
characters in status-left and status-right (if on, they are treated as UTF-8;
otherwise passed through).
2009-06-25 15:48:25 +00:00
Nicholas Marriott
1e06ec41dc Add a UTF-8 aware string length function and make UTF-8 in
status-left/status-right work properly. At the moment any top-bit-set
characters are assumed to be UTF-8: a status-utf8 option to configure this will
come shortly.
2009-06-25 15:47:07 +00:00
Nicholas Marriott
0828e06ad7 Nuke unused pane flag. 2009-06-25 15:46:09 +00:00
Nicholas Marriott
d3d4bacd82 Cast char to u_char before passing to isalnum(). By ray 2009-06-25 15:45:24 +00:00
Nicholas Marriott
94f5ddb60c remove unused flag; while here, make usage's output fit on 80-column displays. 2009-06-25 15:44:44 +00:00
Nicholas Marriott
658659532a Use login shells by default. 2009-06-25 15:44:03 +00:00
Nicholas Marriott
6528d47ed8 Don't leak memory if multiple -f flags are given. From ray 2009-06-25 15:42:35 +00:00
Nicholas Marriott
5b3db7b56c Sync man page with OpenBSD. 2009-06-25 15:30:29 +00:00
Nicholas Marriott
3d7cf00359 Add missing -a flag. 2009-06-25 15:29:34 +00:00
Nicholas Marriott
e2a0c5ad7a When swapping pane positions, swap the PANE_HIDDEN flag as well, otherwise tmux
crashes when trying to find the new active pane.

While here, nuke an unused pane flag.

Fixes PR 6160, reported by and a slightly different version of diff tested by
ralf.horstmann at gmx.de.
2009-06-25 15:28:08 +00:00
Nicholas Marriott
32398b98a8 Sync to OpenBSD: fixes from ray@. 2009-06-25 15:25:45 +00:00
Nicholas Marriott
0fdd47660a UTF-8 detection is broken on sparc64; disable until I get time to test it further. 2009-06-24 17:31:03 +00:00
Nicholas Marriott
6208128fa2 Sync with private copy. 2009-06-03 17:52:29 +00:00
Nicholas Marriott
940e2ae1fd endpwent() is not required after getpwuid(). 2009-06-01 20:38:59 +00:00
Nicholas Marriott
144aed48fa +. 2009-05-29 23:26:11 +00:00
Nicholas Marriott
f63f5e6489 Clear status line on incorrect password. 2009-05-29 23:25:26 +00:00
Nicholas Marriott
17a6c01d58 Don't show real character under cursor when hidden. Doh. 2009-05-29 05:40:56 +00:00
Nicholas Marriott
8536ad0ce7 Reset activity time to avoid relock on -U. 2009-05-28 16:24:02 +00:00
Nicholas Marriott
3a55871d04 Now in base. 2009-05-26 18:31:10 +00:00
Nicholas Marriott
cd4566cd69 Spacing. 2009-05-26 18:30:51 +00:00
Nicholas Marriott
133539a2d4 Update. 2009-05-21 19:51:33 +00:00
Nicholas Marriott
89404788c9 Spacing. 2009-05-21 19:47:57 +00:00
Nicholas Marriott
6c442c19ba UPPER -> BIG, sort, and bump protocol version. 2009-05-21 19:46:00 +00:00
Nicholas Marriott
a8ec5f1d09 stat(2) files before trying to load them to avoid problems, for example with "source-file /dev/zero".
This commit dedicated to Tom: protecting idiots from their own stupidity for more than 20 years.
2009-05-21 19:38:51 +00:00
Nicholas Marriott
eb6007102e new layout plan 2009-05-20 15:46:48 +00:00