Commit Graph

587 Commits (30962cb2008a5f699bdf3e1da01a2554c53b8062)

Author SHA1 Message Date
Nicholas Marriott 30962cb200 New server option, escape-time, to set the timeout used to detect if escapes
are alone or part of a function key or meta sequence.
2009-12-14 10:43:41 +00:00
Nicholas Marriott 3f58cbaae9 Use quiet variable, and add missing sentinel to options array. 2009-12-11 13:58:48 +00:00
Nicholas Marriott a4c9a80dac Add "server options" which are server-wide and not bound to a session or
window. Set and displayed with "set -s" and "show -s".

Currently the only option is "quiet" (like command-line -q, allowing it to be
set from .tmux.conf), but others will come along.
2009-12-10 09:16:52 +00:00
Nicholas Marriott 6311bd119e Permit panes to be referred to as "top", "bottom", "top-left" etc, if the right
pane can be identified.
2009-12-08 07:49:31 +00:00
Nicholas Marriott 796eb522ac vte is buggy and doesn't home the cursor after changing the scroll
region. Several people are hitting this, so add a workaround.
2009-12-04 11:01:29 +00:00
Nicholas Marriott e755475475 Wrap at 80 columns. 2009-12-03 22:54:34 +00:00
Nicholas Marriott 15a64b805e Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last
time now I've configured emacs to make them displayed in really annoying
colours...
2009-12-03 22:50:09 +00:00
Nicholas Marriott 6c9862662f Eliminate duplicate code and ease the passage for server-wide options by adding
a -w flag to set-option and show-options and making setw and showw aliases to
set -w and show -w.

Note: setw and showw are still there, but now aliases for set -w and show -w.
2009-12-03 17:44:02 +00:00
Nicholas Marriott 6bbc92a6f5 Reflect the keypad mode of the application so that numlock works. 2009-12-02 22:13:15 +00:00
Nicholas Marriott 459e9de81a Close the pane if the process died due to a signal, not just if it exited
normally.
2009-12-02 15:06:14 +00:00
Nicholas Marriott 0926a23014 New command, capture-pane, which copies the entire pane contents to a paste
buffer. From Jonathan Alvarado.
2009-12-01 18:42:38 +00:00
Nicholas Marriott f27fefd7b8 Look for mice and xterm keys before standard function keys as they are less
likely to be partial versions.
2009-12-01 07:59:40 +00:00
Nicholas Marriott 29a5931c6a Handle partial xterm function key sequences. 2009-11-30 16:44:03 +00:00
Nicholas Marriott 2182e1badc Add a couple of comments. 2009-11-27 09:41:03 +00:00
Nicholas Marriott 106ee8f30a This doesn't need to be u_int. 2009-11-26 23:13:47 +00:00
Nicholas Marriott 1acf066fb9 Make types clearer and lint happier. 2009-11-26 22:56:59 +00:00
Nicholas Marriott e7f4319ac6 Fix type - attributes should be u_char not int. 2009-11-26 22:47:14 +00:00
Nicholas Marriott c2eb869f72 Change paranoia check to check for <= 0 and to avoid warning. 2009-11-26 22:32:00 +00:00
Nicholas Marriott 8cb410c63c Tidy up various bits of the paste code, make the data buffer char * and add
comments.
2009-11-26 22:28:24 +00:00
Nicholas Marriott ba5404d93e Continue rather than returning if not a mouse key, to avoid hanging on any
function key...
2009-11-26 22:26:51 +00:00
Nicholas Marriott 4ca857e0e9 Remove a couple of unused arguments where possible, and add /* ARGSUSED */ to
the rest to reduce lint output.
2009-11-26 21:37:13 +00:00
Nicholas Marriott 621dabd44e Rename a variable to something more helpful. 2009-11-26 21:22:31 +00:00
Nicholas Marriott 3e147967e2 Get a u_char from the string, otherwise it isn't possible to enter \0377 as it
is mistaken for EOF (doh).

Also drop an unused argument.
2009-11-26 21:14:30 +00:00
Nicholas Marriott 9c0147915e Handle the possibility of partial mouse reads, and fix a comment while here. 2009-11-26 15:14:03 +00:00
Nicholas Marriott d31d4c05cf Emulate il1, dl1, ich1 to run (albeit slowly) with vt100 feature set. 2009-11-26 14:46:08 +00:00
Nicholas Marriott 094bca5ac3 Output the right keys for application and number keypad modes (they were the
wrong way round).
2009-11-25 12:24:31 +00:00
Nicholas Marriott 87821fce0e Add a -p flag to display-message to print the output rather than displaying in
the status line, this allows things like "display -p '#W'" to find the current
window index.
2009-11-24 19:16:11 +00:00
Nicholas Marriott fce47e2e63 Add cursor keys to the key names list. 2009-11-22 22:52:39 +00:00
Nicholas Marriott 9b9d26f80e Use home from struct passwd if HOME is empty as well as if it is NULL, and fix
a style nit. Both from Tiago Cunha.
2009-11-21 17:52:18 +00:00
Nicholas Marriott 58688c48aa When -h and -p are given to split-window, calculate the percentage size using
the width instead of the height.
2009-11-20 19:12:39 +00:00
Nicholas Marriott 5d56225d95 Display UTF-8 properly in status line messages and prompt. Cursor handling is
still way off though.
2009-11-20 07:01:12 +00:00
Nicholas Marriott 070e3b4178 Remove oldest messages from log when limit is hit, not newest. 2009-11-20 06:33:26 +00:00
Nicholas Marriott 2cea9433c2 Get some brackets in the right place so ## works. Also fix a space in a
comment.
2009-11-19 21:30:53 +00:00
Nicholas Marriott 33b337f618 Change status line drawing to create the window list in a separate screen and
then copy it into the status line screen. This allows UTF-8 in window names and
fixes some problems with #[] in window-status-format.
2009-11-19 19:47:28 +00:00
Nicholas Marriott 543fb99bc6 Two new options, window-status-format and window-status-current-format, which
allow the format of each window in the status line window list to be controlled
using similar # sequences as status-left/right.

This diff also moves part of the way towards UTF-8 support in window names but
it isn't quite there yet.
2009-11-19 16:22:10 +00:00
Jason McIntyre 8b8a211185 tweak previous; 2009-11-19 15:00:32 +00:00
Nicholas Marriott 4a38189349 Revert to xterm-keys off by default. It was on as an experiment to see if the
option could be removed, but it affects vi, so we have to keep the option, and
a conservative default is better.
2009-11-19 14:06:33 +00:00
Nicholas Marriott ed781e84ee Tidy up by breaking the # replacement code into a separate function, also add a
few comments.
2009-11-19 11:38:54 +00:00
Nicholas Marriott ac5b7d518e Don't interpret #() for display-message, it usually doesn't make sense and may
leak commands.
2009-11-19 10:22:06 +00:00
Nicholas Marriott 8d4eae5662 Missed an unused variable :-/. 2009-11-18 17:03:16 +00:00
Nicholas Marriott a78cc98c8b Cleanup by moving various (mostly horrible) little bits handling UTF-8 grid
data into functions in a new file, grid-utf8.c, and use sizeof intead of
UTF8_DATA.

Also nuke trailing whitespace from tmux.1, reminded by jmc.
2009-11-18 17:02:17 +00:00
Nicholas Marriott 8db145da1e Add a per-client log of status line messages displayed while that client
exists. A new message-limit session option sets the maximum number of entries
and a command, show-messages, shows the log (bound to ~ by default).

This (and prompt history) might be better as a single global log but until
there are global options it is easier for them to be per client.
2009-11-18 13:16:33 +00:00
Nicholas Marriott 68f5c9c72d Mark -n keys with (no prefix) rather than []. 2009-11-18 10:18:25 +00:00
Nicholas Marriott a9ca8df8e3 Permit top-bit-set characters to be entered in the status line. They could
already be set from the shell and are just passed through when printing (so
invisible characters or displaying on terminals with different character sets
may cause problems).

Note that entering UTF-8 may not work and in any case currently the status line
cannot display it correctly (outside of status-left/status-right).
2009-11-17 13:30:07 +00:00
Nicholas Marriott 67bf0933e2 In choose mode, assign each item a number or lowercase letter from those
available and accept that as a shortcut key for the item.
2009-11-17 13:06:11 +00:00
Nicholas Marriott 5d7bff4051 A screen can be one cell wide; don't crash if that is the case. 2009-11-16 13:40:45 +00:00
Nicholas Marriott 9f6d685c05 I made a complete horlicks of the last change, fix it so it doesn't either lead
to a double free or free the item after the end of the array.
2009-11-16 11:15:44 +00:00
Nicholas Marriott 10e05f9867 Tweak a comment and add some spacing. 2009-11-13 19:58:32 +00:00
Nicholas Marriott 76ef8770cd Get rid of the ugly CMD_CHFLAG macro and use a const string (eg "dDU") in the
command entry structs and a couple of functions to check/set the flags.
2009-11-13 19:53:28 +00:00
Nicholas Marriott dafa0f022c Unreachable statement, found by lint. 2009-11-13 18:59:14 +00:00