Commit Graph

335 Commits

Author SHA1 Message Date
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
Nicholas Marriott
ad4a7423c0 Mark windows in yellow on status line when bell. 2007-10-12 11:24:15 +00:00
Nicholas Marriott
d158938178 Sync. 2007-10-12 09:48:53 +00:00
Nicholas Marriott
d00851cee1 Sync. 2007-10-05 17:43:17 +00:00
Nicholas Marriott
0f8458cd27 This is done. 2007-10-05 17:33:39 +00:00
Nicholas Marriott
91e24af089 Clean up pause/exit mess with flags. 2007-10-05 14:23:28 +00:00
Maximilian Gass
fa65aec2ef More stuff TODO 2007-10-05 10:35:15 +00:00
Nicholas Marriott
477480607d These are done. 2007-10-04 22:37:56 +00:00
Nicholas Marriott
032ee1b880 Sync. 2007-10-04 19:27:41 +00:00
Nicholas Marriott
418fb3938d Sync. 2007-10-04 14:26:15 +00:00
Maximilian Gass
5813ba6c39 More TODO entries 2007-10-04 14:18:44 +00:00
Nicholas Marriott
7869dc73d5 Sync. 2007-10-04 12:24:04 +00:00
Nicholas Marriott
225e07fe38 Select window command. 2007-10-04 10:54:21 +00:00
Nicholas Marriott
adc5f80bf9 Update & sync. 2007-10-04 10:13:38 +00:00
Nicholas Marriott
774b556669 Key binding and unbinding. 2007-10-04 09:30:53 +00:00
Nicholas Marriott
df716ecc8f Rewrite command handling to be more generic. Not finished! 2007-10-03 21:31:07 +00:00
Nicholas Marriott
fe06744d66 String/number arguments.. 2007-10-03 12:34:16 +00:00
Nicholas Marriott
dadc56d754 Key binding, unbinding. 2007-10-03 11:26:34 +00:00
Nicholas Marriott
9bb907f2a7 Move command handling into the server and tidy up some bits. 2007-10-03 10:18:32 +00:00
Nicholas Marriott
ef91aac688 Add profiling. Also some trivial optimisations to skip memcpying. 2007-10-03 00:13:46 +00:00
Nicholas Marriott
a6d3594d39 Redraw client status lines on rename. 2007-10-02 17:45:05 +00:00
Nicholas Marriott
91eb9206d0 Warn on ambiguous commands. 2007-10-02 17:35:00 +00:00
Nicholas Marriott
7258275605 Sync. 2007-10-02 17:28:53 +00:00
Nicholas Marriott
242e69327f Meta meta command. 2007-10-02 15:38:09 +00:00
Nicholas Marriott
843779a3e0 Restore window title handling. 2007-10-01 17:37:41 +00:00
Nicholas Marriott
872696f781 Pass attributes around as flags rather than as a list of escape codes. 2007-10-01 14:18:42 +00:00
Nicholas Marriott
308bc18947 Window info command. 2007-09-30 13:02:14 +00:00
Nicholas Marriott
f4fd8c225e Sync. 2007-09-29 21:10:48 +00:00
Nicholas Marriott
4f466c1e9b Sync. 2007-09-29 19:58:26 +00:00
Nicholas Marriott
7d4dc60a31 Sync. 2007-09-29 15:02:41 +00:00
Nicholas Marriott
a6875d0dae Sync. 2007-09-29 12:48:51 +00:00
Nicholas Marriott
feff317fbd Sync. 2007-09-28 22:55:39 +00:00
Maximilian Gass
d2e035f892 Added window renaming support (tmux rename) 2007-09-28 21:41:52 +00:00
Nicholas Marriott
32a80a73a1 Sync. 2007-09-28 21:08:53 +00:00
Nicholas Marriott
109873bdf8 Sync. 2007-09-28 18:17:59 +00:00
Nicholas Marriott
db293c1c07 Retry connection with small timeout instead of sleep(10) for server start. 2007-09-27 20:53:13 +00:00
Nicholas Marriott
1e269710a7 Sync. 2007-09-27 12:12:15 +00:00
Nicholas Marriott
4f6999a2df Sync. 2007-09-27 10:17:04 +00:00
Nicholas Marriott
58affec94c Split list into ls/lsw. 2007-09-27 10:09:37 +00:00
Nicholas Marriott
3fa8f16364 Adjust $TMUX environ var to include session index, and don't compact session list on release. Also fix some argument types. 2007-09-27 09:15:58 +00:00
Nicholas Marriott
187648e8d1 -S for socket, -s for session. 2007-09-26 19:38:42 +00:00
Nicholas Marriott
2a3e209cce Extend op string and add potential for a single alias. 2007-09-26 19:09:30 +00:00
Nicholas Marriott
1fefbb7a85 Pass through backspace for now. 2007-09-21 19:24:37 +00:00
Nicholas Marriott
656f2a264c Sync. 2007-09-20 18:27:23 +00:00
Nicholas Marriott
2cd99f0ebb Reset ignored signals after forkpty. 2007-09-20 09:43:33 +00:00
Nicholas Marriott
d7e1d4ddb9 Sync. 2007-09-19 14:12:48 +00:00
Nicholas Marriott
39c4865332 Upd. 2007-09-18 11:00:37 +00:00
Nicholas Marriott
38b752c1d8 Remove old sockets after error. 2007-08-28 08:30:36 +00:00
Nicholas Marriott
12f7197adb session_flush can go bye-bye again. 2007-08-27 20:36:52 +00:00
Nicholas Marriott
438144692d Flush even detached sessions. 2007-08-27 15:28:07 +00:00
Nicholas Marriott
85770bc701 Use $SHELL for new shell, if set. 2007-08-27 10:24:03 +00:00
Nicholas Marriott
a41ece5ff0 Initial import to CVS. Basic functions are working, albeit with a couple of showstopper memory bugs and many missing features. Detaching, reattaching, creating new sessions, listing sessions work acceptably for using with shells. Simple curses programs (top, systat, tetris) and more complicated ones (mutt, emacs) that don't require scrolling regions (ESC[r) mostly work fine (including mutt, emacs). No status bar yet and no key remapping or other customisation. 2007-07-09 19:04:12 +00:00