Commit Graph

301 Commits

Author SHA1 Message Date
Nicholas Marriott
efe557313a Internal screen data rewrite for better 256 colour/UTF-8 support. 2008-09-25 20:08:57 +00:00
Nicholas Marriott
ded348064a Split colour functions from screen. 2008-09-10 18:59:29 +00:00
Nicholas Marriott
19a2c87f04 Initial UTF-8 support. 2008-09-09 22:16:37 +00:00
Nicholas Marriott
4235ddb4e8 Initial 256 colour support, lightly tested. 2008-09-08 17:40:51 +00:00
Nicholas Marriott
33aa931541 Support OS X by moving to gettimeofday(2) and adding poll compat from OpenSSH. 2008-08-28 17:45:30 +00:00
Nicholas Marriott
0abb4ca413 Also done. 2008-08-08 17:36:58 +00:00
Nicholas Marriott
b43ed100c2 Done. 2008-08-08 17:36:30 +00:00
Nicholas Marriott
546838ee65 This idea (nested sessions) is fraught with too many problems to do it sanely;
for example, in order not to be annoying, previous-window would have to work
as expected (jump back to previous session) but what if you enter the same
session from different parent sessions? What is the previous window? It
would have to be tied to the client. There are other issues as well, and I
don't see it as terribly useful (you can bind a switch-client command to any
key anyway), so it is off the list.
2008-07-25 06:56:16 +00:00
Nicholas Marriott
c39c1618c7 Spacing. 2008-07-24 22:21:28 +00:00
Nicholas Marriott
3337dfcae5 Support keypad mode, and get rid of SCREEN_DEF*. Meant to commit these separately but forgot :-/. 2008-07-24 21:42:40 +00:00
Nicholas Marriott
97212771b5 Support keypad. Change cursor key output. 2008-07-23 23:44:50 +00:00
Nicholas Marriott
399e352095 ^ for BOL too. 2008-07-02 21:25:58 +00:00
Nicholas Marriott
892d1b534e Split emacs/vi keys into seperate tables. 2008-07-02 21:22:57 +00:00
Nicholas Marriott
80a594cae3 Document zombie window stuff. 2008-06-30 18:27:14 +00:00
Nicholas Marriott
797f04b648 Document buffer stuff. 2008-06-30 05:34:06 +00:00
Nicholas Marriott
cfb611e95a Document next/prev word. 2008-06-29 07:22:00 +00:00
Nicholas Marriott
d90d646ca8 Zombie windows, requested by Will Maier. 2008-06-29 07:04:31 +00:00
Nicholas Marriott
9043fe891a Fix scrolling. 2008-06-27 17:32:24 +00:00
Nicholas Marriott
1a58f958be Document some commands. 2008-06-27 17:24:16 +00:00
Nicholas Marriott
571935c823 Handle bad session/client properly. 2008-06-27 17:10:01 +00:00
Nicholas Marriott
6bc6e97da5 C-u C-f from merdely. 2008-06-26 19:02:18 +00:00
Nicholas Marriott
7836298f29 Allow use of alt keys. move-window command. 2008-06-25 20:33:20 +00:00
Nicholas Marriott
26792fc3a8 Tweak. 2008-06-25 19:12:30 +00:00
Nicholas Marriott
758efb3947 Handle escaped keys properly and use M-f/M-b in copy mode. 2008-06-25 07:30:08 +00:00
Nicholas Marriott
c2876e6477 Sync. 2008-06-23 22:42:04 +00:00
Nicholas Marriott
c78b8d06a6 Purge stale entries. 2008-06-23 22:35:53 +00:00
Nicholas Marriott
fc7953f05f Fix usage. 2008-06-23 22:26:52 +00:00
Nicholas Marriott
59da4dce67 list-commands command. 2008-06-23 22:24:16 +00:00
Nicholas Marriott
b69f4a3312 Split internal status-colour into status-fg/status-bg options and lose workarounds in set-option stuff. 2008-06-23 22:12:29 +00:00
Nicholas Marriott
c24d849fa4 Split options into a table to allow abbreviations. 2008-06-23 07:41:21 +00:00
Nicholas Marriott
46383e33f8 Don't be clever and translate default colour. 2008-06-22 16:54:08 +00:00
Nicholas Marriott
e70e9513a8 Simple tab completion of option names in command prompt. 2008-06-21 14:11:39 +00:00
Nicholas Marriott
2bd92e5f18 Lose unnecessary flags on context. 2008-06-21 10:19:36 +00:00
Nicholas Marriott
e5ab9a2db5 Sync. 2008-06-21 10:08:52 +00:00
Nicholas Marriott
ba0502958c Sync. 2008-06-20 18:58:29 +00:00
Nicholas Marriott
ef1c1d5753 Use the right flags argument for -d. 2008-06-20 17:39:11 +00:00
Nicholas Marriott
4e4f71febb Swap in new paste buffer code and add a couple more commands. 2008-06-20 17:31:48 +00:00
Nicholas Marriott
9798dcd4df Start of improved buffer code. Only set-buffer/show-buffer commands so far. 2008-06-20 08:36:20 +00:00
Nicholas Marriott
af924e726a Update. 2008-06-20 06:36:47 +00:00
Nicholas Marriott
89ea06e0a1 Sync. 2008-06-19 23:26:43 +00:00
Nicholas Marriott
73d1558ed0 status-lines -> status, prefix-key -> prefix 2008-06-19 22:04:02 +00:00
Nicholas Marriott
24cc3626dc Document command-prompt. Tweak TODO. 2008-06-19 21:45:46 +00:00
Nicholas Marriott
be0cf3bfe4 Add ; too. 2008-06-19 21:28:41 +00:00
Nicholas Marriott
6d9eaa6440 No space after prompt. 2008-06-19 20:48:48 +00:00
Nicholas Marriott
9ef5bdc7c0 Show status messages without blocking the server. 2008-06-19 18:27:55 +00:00
Nicholas Marriott
8873c79cbc Set window title to current session. New options set-titles to disable. 2008-06-18 18:52:44 +00:00
Nicholas Marriott
2d3ea8b5b4 Display <> for more windows and highlight if activity. 2008-06-18 17:14:02 +00:00
Nicholas Marriott
6c23e89f48 Sort options from Pierre Riteau. 2008-06-18 16:39:15 +00:00
Nicholas Marriott
c9a650c5d4 Document set-window-option, update example. 2008-06-17 06:18:44 +00:00
Nicholas Marriott
ff21dbd58b Explanation of -t. 2008-06-16 22:03:27 +00:00
Nicholas Marriott
f9a1270d39 Update TODO. 2008-06-16 20:26:48 +00:00
Nicholas Marriott
55d5b83408 Informational messages on window option changes. 2008-06-16 17:35:40 +00:00
Nicholas Marriott
a8e3e989dd Document show-options. 2008-06-16 06:33:50 +00:00
Nicholas Marriott
1d0810547f show-window-options command. 2008-06-16 06:10:02 +00:00
Nicholas Marriott
557b6b86b0 Add a couple of extra option types, and implement show-options command. 2008-06-15 08:01:54 +00:00
Nicholas Marriott
0f403474aa New window options: force-width and force-height. This will force a window to
an arbitrary width and height (0 for the default unlimited). This is neat for
  emacs which doesn't have a sensible way to force hard wrapping at 80
  columns. Also, don't try to be clever and use clr_eol when redrawing the
  whole screen, it causes trouble since the redraw functions are used to draw
  the blank areas too.
2008-06-14 16:47:20 +00:00
Nicholas Marriott
ea80307acb Update. 2008-06-13 18:04:16 +00:00
Nicholas Marriott
ec42778590 Man page update from Will Maier, thanks. 2008-06-11 06:19:56 +00:00
Nicholas Marriott
b590b5dd0b Sync. 2008-06-10 18:43:55 +00:00
Nicholas Marriott
2a2a9760ee Read from pipe to allow client to confirm and socket be closed. 2008-06-07 07:33:03 +00:00
Nicholas Marriott
29e2253611 Partial tmux.1 update thanks to Will Maier. 2008-06-06 20:07:56 +00:00
Nicholas Marriott
3cd4a08ffb Make server exit when last session dies. Also fix window check for status activity redraw. 2008-06-06 17:55:27 +00:00
Nicholas Marriott
197347b61f Don't bork on link/swap the same window. Also extend comment. 2008-06-05 22:59:38 +00:00
Nicholas Marriott
0b9b873a55 Big reorganisation of command-line syntax. 2008-06-05 21:25:00 +00:00
Nicholas Marriott
ee1a7fded7 Print for the less easy commands. 2008-06-05 17:12:11 +00:00
Nicholas Marriott
7842d29673 Revert attempt to fix stray updates, turns out it was clock :-/. 2008-06-04 19:20:10 +00:00
Nicholas Marriott
39be570b20 vi keys from Will Maier. 2008-06-04 18:50:35 +00:00
Nicholas Marriott
b25ac6fd75 Update. 2008-06-04 18:27:33 +00:00
Nicholas Marriott
9e6090a7a2 Per-session configuration options. 2008-06-03 21:42:37 +00:00
Nicholas Marriott
73c9b25d2d It is too easy to create things in the same second; use a timespec instead. 2008-06-03 18:13:54 +00:00
Nicholas Marriott
eaee4dc800 Quick and dirty kill-server command. 2008-06-03 05:10:38 +00:00
Nicholas Marriott
8731755ab4 Add a windowonly generic command and use it where appropriate. Also trim includes and unused. 2008-06-02 22:09:49 +00:00
Nicholas Marriott
95cc21c251 Quick man page update, also fix some usages and get rid of some CMD_KEY checks. 2008-06-02 21:36:51 +00:00
Nicholas Marriott
a26f58c7c3 Last bits of basic configuration file. By default in ~/.tmux.conf or specified with -f. Just a list of tmux commands executed when the server is started and before and any session/window is created. 2008-06-02 21:08:36 +00:00
Nicholas Marriott
c7243b73cb Move -s and -c down a level so handling them is the responsibility of the command (with some helper functions), rather than the top-level. This changes the action command syntax so that -s and -c must be after the command rather than before. 2008-06-02 18:08:17 +00:00
Nicholas Marriott
11ee55e755 Prepare TERM in buffer before sending; this allows size to be part of cmd and prevents it being split. This is the only place this happens so remove it from todo. 2008-06-01 21:24:33 +00:00
Nicholas Marriott
693231e8eb +. 2008-06-01 20:36:01 +00:00
Nicholas Marriott
65f4284e7f New command, send-keys, to send a set of keys. 2008-06-01 20:20:25 +00:00
Nicholas Marriott
99fa60f295 +. 2008-06-01 18:35:45 +00:00
Nicholas Marriott
5569ff9723 Don't hang when window closes early; also add lots more debugging. 2008-05-31 20:04:15 +00:00
Nicholas Marriott
58ca26cefa +. 2008-03-31 20:12:04 +00:00
Nicholas Marriott
7613c7f388 GNUmakefile fixes, from tobiasu. 2008-02-10 19:46:17 +00:00
Nicholas Marriott
61b0b2c76d Upd. 2008-01-03 21:41:15 +00:00
Nicholas Marriott
205b78ec58 Some key tweaks, fix status bar to not rely on attr. 2008-01-03 21:32:11 +00:00
Nicholas Marriott
e7f68a089e Write status across entire line. 2008-01-03 19:18:14 +00:00
Nicholas Marriott
f18ac66185 Quick start section in man page. 2007-12-16 17:18:43 +00:00
Nicholas Marriott
da22fafed5 Sync with Makefile. 2007-12-13 18:59:42 +00:00
Nicholas Marriott
c6efbbb843 Don't free twice when exiting. 2007-12-12 19:44:59 +00:00
Nicholas Marriott
5bc8b2b7b6 Actually incrementing the reference count would be nice. 2007-12-10 07:58:00 +00:00
Nicholas Marriott
7162d824f0 Yes, it is. 2007-12-07 11:58:54 +00:00
Nicholas Marriott
73d882124c Handle EOL properly when scrolled. 2007-12-07 09:49:18 +00:00
Nicholas Marriott
21d10e6894 Use the current attr/colours for filling in new areas, this fixes the echo \\033[35\;46m\\033[2J bug. 2007-12-06 21:57:57 +00:00
Nicholas Marriott
194c871611 Sync. 2007-12-06 13:51:56 +00:00
Nicholas Marriott
7dc18f68e3 set/reset mode window functions. 2007-12-06 10:04:43 +00:00
Nicholas Marriott
103748d6ad Major reorganisation of screen handling. 2007-12-06 09:46:23 +00:00
Nicholas Marriott
5f6a9e7e5b Handle missing parm_*. 2007-12-03 10:47:27 +00:00
Nicholas Marriott
3962c5f706 Change window name on \ek...\e\. 2007-11-30 11:08:35 +00:00
Nicholas Marriott
043514a834 Preliminary mouse support. 2007-11-27 23:28:51 +00:00
Nicholas Marriott
f47ab8f13f Don't nuke charset flag on [0m. Also rename DRAWING -> CHARSET flag. 2007-11-27 23:01:27 +00:00
Nicholas Marriott
43c99c2fab Clear current line properly on clear eos. 2007-11-27 22:12:14 +00:00
Nicholas Marriott
c6384a765b Flush data on tty open. Also reset colour before clearing line/screen. 2007-11-27 21:07:38 +00:00
Nicholas Marriott
76c8a590db Big internal reorganisation to move tty control into parent. 2007-11-27 19:23:34 +00:00
Nicholas Marriott
01dd8a3320 Sync. 2007-11-24 17:21:12 +00:00
Nicholas Marriott
69cec8803e Document modes, c/p etc. 2007-11-24 14:21:43 +00:00
Nicholas Marriott
a01093603b Inc region in debug msg. 2007-11-23 22:51:13 +00:00
Nicholas Marriott
8da0b1fb99 Mostly-complete copy and paste. 2007-11-23 17:52:54 +00:00
Nicholas Marriott
39246043cf Show hlimit. 2007-11-23 13:11:43 +00:00
Nicholas Marriott
df7be0ddab Split SCREEN_BACKGROUND flag into BACKGROUND/NOCURSOR in preparation for copy mode. 2007-11-22 09:11:20 +00:00
Nicholas Marriott
1e5cb8d2e4 Free entire screen when destroyed. 2007-11-21 21:28:58 +00:00
Nicholas Marriott
ce90f1bddb The CLIENT_HOLD hack can go bye-bye. 2007-11-21 20:04:37 +00:00
Nicholas Marriott
24c39950ff Redo screen.c functions to make them readable and more flexible. Make scroll mode only redraw waht it needs. 2007-11-21 18:24:49 +00:00
Nicholas Marriott
2cdc75fa4e Fix clear. 2007-11-21 14:50:41 +00:00
Nicholas Marriott
08a0c5e661 Use screen_* versions to avoid range checks (s->dy may be wrong), fix miscalculated free. 2007-11-21 14:30:15 +00:00
Nicholas Marriott
9a6e47cfa8 Initial history support. 2007-11-21 13:11:41 +00:00
Nicholas Marriott
0be6a3041f Style: ry_* -> r* 2007-11-20 18:46:32 +00:00
Nicholas Marriott
0d9ebaafb1 dist target. 2007-11-20 12:00:16 +00:00
Nicholas Marriott
6e04524596 switch-client command. 2007-11-16 21:31:03 +00:00
Nicholas Marriott
b359f9b594 Add -c option to specify client, and move detach/refresh to client rather than session. 2007-11-16 21:12:31 +00:00
Nicholas Marriott
86b73cec72 Check for scrolling when _cursor_ is inside region, not number of lines. Duh. 2007-11-16 16:28:14 +00:00
Nicholas Marriott
ce5f02fc9e Report available commands on ambiguous commands. Tidy TODO a bit. 2007-11-16 13:23:59 +00:00
Nicholas Marriott
eb72bede47 Sync. 2007-11-14 08:44:25 +00:00
Nicholas Marriott
89d298d4c7 Tweak. 2007-11-12 20:59:33 +00:00
Nicholas Marriott
dc8fb1e1dc Force default colours if terminal supports it. 2007-11-12 20:29:43 +00:00
Nicholas Marriott
765a224b30 Double-free on session destroy. 2007-11-12 16:39:30 +00:00
Nicholas Marriott
23e9acdcb2 Erp, ^B not ^A. 2007-11-12 16:11:57 +00:00
Nicholas Marriott
e79a41cff9 Finish off man page. 2007-11-12 16:09:08 +00:00
Nicholas Marriott
16321270c8 rename-session command. 2007-11-09 11:02:01 +00:00
Nicholas Marriott
f92243caa0 Check for required term capabilities on start. 2007-11-08 10:39:52 +00:00
Nicholas Marriott
35591ecd4e Try write even if read gets signal, some other tweaks. 2007-11-07 19:41:17 +00:00
Nicholas Marriott
48ad0431fb swap-window command. 2007-10-30 11:10:33 +00:00
Nicholas Marriott
ab097f0c0c Don't save/restore ry_*. 2007-10-26 17:15:50 +00:00
Nicholas Marriott
51482b57ae Redraw status bar on link. 2007-10-26 13:35:39 +00:00
Nicholas Marriott
5a954bd9bd link-window command to link a window into another session. 2007-10-26 13:03:59 +00:00
Nicholas Marriott
4ba3cf60be Reorg window data structures. Add an intermediate data type (struct winlink) to hold index and make sessions hold a RB tree of them rather than a fixed array. 2007-10-26 12:29:07 +00:00
Nicholas Marriott
9f06104c3a has-session command. 2007-10-25 17:44:25 +00:00
Nicholas Marriott
e21587864a Save restore attr. 2007-10-24 15:01:25 +00:00
Nicholas Marriott
688a487570 Lift last MAXNAMELEN limit on -s argument. 2007-10-23 10:48:23 +00:00
Nicholas Marriott
21c17da7e6 Remove freed keys from array. 2007-10-23 10:25:57 +00:00
Nicholas Marriott
25e94a0526 List client command. 2007-10-23 09:36:19 +00:00
Nicholas Marriott
0b0a3c02af Return 0 on lost server so pkill works okay if scripted. 2007-10-22 13:16:36 +00:00
Nicholas Marriott
8f6bc501d1 Sync. 2007-10-19 22:34:06 +00:00
Nicholas Marriott
65125c7276 Sync. 2007-10-19 20:43:55 +00:00
Nicholas Marriott
543e7b0f03 -n is now -s on new-session. 2007-10-19 17:15:29 +00:00
Nicholas Marriott
1b9647669a Kill window command. Nuke some backspace stuff. 2007-10-19 11:10:35 +00:00
Nicholas Marriott
de24fbb35c Add a bell-action option. 2007-10-19 10:21:36 +00:00
Nicholas Marriott
94f003bbec Refresh session command. 2007-10-19 09:21:26 +00:00
Nicholas Marriott
37f17a7e5b Warn and bork on nested sessions ($TMUX exists). 2007-10-12 14:46:48 +00:00
Nicholas Marriott
514d6fa1ec Accept colours as strings. 2007-10-12 13:51:44 +00:00
Nicholas Marriott
f3404ee922 send-prefix command. 2007-10-12 13:03:58 +00:00
Nicholas Marriott
7ec5be30df set status, status-fg, status-bg. 2007-10-12 12:08:51 +00:00