Commit Graph

423 Commits

Author SHA1 Message Date
Nicholas Marriott
6fdac02b53 Add UTF-8 to grid_compare.. 2009-03-30 19:44:55 +00:00
Nicholas Marriott
4cbf7d489e - Ignore padding when writing so copying the screen for copy-mode doesn't include extra characters.
- Handle combined characters properly when the previous character is not UTF-8.
2009-03-29 11:06:22 +00:00
Nicholas Marriott
c9856ebad1 Update/reorganise. 2009-03-28 20:20:51 +00:00
Nicholas Marriott
cf7b384c43 Better UTF-8 support, including combined characters. Unicode data is now stored
as UTF-8 in a separate array, the code does a lookup into this every time it
gets to a UTF-8 cell. Zero width characters are just appended onto the UTF-8
data for the previous cell. This also means that almost no bytes extra are
wasted non-Unicode data (yay).

Still some oddities, such as copy mode skips over wide characters in a strange
way, and the code could do with some tidying.
2009-03-28 20:17:29 +00:00
Nicholas Marriott
8762338e30 +. 2009-03-28 15:40:10 +00:00
Nicholas Marriott
cb2ac5c269 Key repeating is now a property of the key binding not of the command. Repeat
is turned on when the key is bound with the -r flag to bind-key. next/previous-
window no longer repeat by default as it turned out to annoy me.
2009-03-28 14:08:09 +00:00
Nicholas Marriott
b97264bb70 Update TODO. 2009-03-27 16:44:00 +00:00
Nicholas Marriott
be0c79f3ad Sockets in /tmp are now created in a subdirectory named, tmux-UID, eg
tmux-1000. The default socket is thus /tmp/tmux-UID/default. To start a
separate server, the new -L command line option should be used: this creates a
socket in the same directory with a different name ("-L main" will create
socket called "main"). -S should only be used to place the socket outside
/tmp. This makes sockets a little more secure and a bit more convenient to use
multiple servers.
2009-03-27 15:57:10 +00:00
Nicholas Marriott
12bb7436c3 Update. 2009-03-27 08:44:29 +00:00
Nicholas Marriott
f5f04a9344 * New session flag "set-remain-on-exit" to set remain-on-exit flag for new windows created in that session (like "remain-by-default" used to do). Not perfectly happy about this, but until I can think of a good way to introduce it generically (maybe a set of options in the session) this will do. Fixes SF request 2527847. 2009-03-21 12:44:06 +00:00
Nicholas Marriott
7398241e58 Done. 2009-03-07 10:46:36 +00:00
Nicholas Marriott
e6d35b6aa4 Support for 88 colour terminals. 2009-03-07 10:29:06 +00:00
Nicholas Marriott
56f80a5b09 break-pane command to split a pane off into a new window; bound to ! by default. 2009-03-07 09:29:54 +00:00
Nicholas Marriott
65b9aeb337 Put socket path in $TMUX. 2009-03-04 17:24:07 +00:00
Nicholas Marriott
5803c4fc5b Fix window choice mode, again. 2009-03-02 17:01:00 +00:00
Nicholas Marriott
a2a5abef13 This is now fixed. 2009-02-28 12:13:38 +00:00
Nicholas Marriott
092cca4b5f Update TODO. 2009-02-25 21:55:15 +00:00
Nicholas Marriott
17017ef3bc These are fixed. 2009-02-15 23:06:49 +00:00
Nicholas Marriott
95c8c049f5 Redo mode keys slightly more cleanly and apply them to command prompt editing. vi or emacs mode is controlled by the session option status-keys. 2009-02-13 21:39:45 +00:00
Nicholas Marriott
488cec3149 More TODO. 2009-02-13 19:36:39 +00:00
Nicholas Marriott
d76d42f4f9 Update TODO. 2009-02-13 19:30:06 +00:00
Nicholas Marriott
eb7d229bac Code tidying on my way to find tmux-in-tmux bug. 2009-02-13 16:53:14 +00:00
Nicholas Marriott
b1e911aff0 Update TODO. 2009-02-12 23:16:00 +00:00
Nicholas Marriott
4ddac7f0b3 Update. 2009-02-11 19:37:05 +00:00
Nicholas Marriott
89f30822ef Update TODO. 2009-02-11 06:30:19 +00:00
Nicholas Marriott
cc5a0ab0e4 Update TODO. 2009-02-10 00:17:00 +00:00
Nicholas Marriott
44cc9c4459 Typos. 2009-02-08 18:41:03 +00:00
Nicholas Marriott
9b09c8d71e Test. 2009-02-08 18:33:04 +00:00
Nicholas Marriott
f5d064afba Test syncmail III. 2009-02-08 18:30:47 +00:00
Nicholas Marriott
b94ddce409 Test syncmail II. 2009-02-08 18:27:10 +00:00
Nicholas Marriott
b9af4919c1 Test syncmail. 2009-02-08 18:23:52 +00:00
Nicholas Marriott
62d2ab3e68 Continue process if suspended. 2009-02-08 16:11:26 +00:00
Nicholas Marriott
85fd2147af Move to 0.8. 2009-02-08 14:11:37 +00:00
Nicholas Marriott
0e03dc29c4 Update. 2009-02-07 20:08:09 +00:00
Nicholas Marriott
028419ff4b Comment. Missing OS X headers. +TODO. 2009-02-07 19:41:35 +00:00
Nicholas Marriott
1d3fba86a3 Make process name guessing pick up SSTOP. 2009-02-07 19:16:25 +00:00
Nicholas Marriott
3c7fefd90d Document automatic-rename. 2009-02-07 08:35:26 +00:00
Nicholas Marriott
ea8a8d39d4 Document command sequences. 2009-02-07 08:20:54 +00:00
Nicholas Marriott
5edb3246c2 Update. 2009-02-06 18:52:41 +00:00
Tiago Cunha
70dbc2f5b1 - Document find-window.
- Document suspend-client.
- Document window-status-{attr,bg,fg}.
- Options without arguments should be listed first.
- s/Copies/Copy/.
2009-02-06 18:38:30 +00:00
Tiago Cunha
4213ff8faa copy-buffer command. 2009-02-03 17:21:19 +00:00
Tiago Cunha
dd4e160d71 - Document the -p and -l options in split-window.
- Update {copy,scroll}-mode with the -u option.
- While there sort options alphabetically.
2009-02-01 18:24:25 +00:00
Nicholas Marriott
882316ad6a Set colour of window entry in status line based on window options. 2009-01-30 00:24:49 +00:00
Nicholas Marriott
b4076865bb Fix page down, again. 2009-01-29 20:02:33 +00:00
Nicholas Marriott
2057e666a2 Mouse in copy mode. 2009-01-28 22:00:22 +00:00
Nicholas Marriott
4428987e95 * Better support for at least the most common variant of mouse input: parse it and adjust for different panes. Also support mouse in window/session choice mode.
* Bring back the fancy window titles with session/window names: it is easy to work around problems with elinks (see FAQ).
2009-01-28 19:52:21 +00:00
Nicholas Marriott
2af52440ba -u to start with screen scrolled up. 2009-01-27 23:35:44 +00:00
Nicholas Marriott
c1726281c9 Handle cursor on/off better. 2009-01-27 21:39:15 +00:00
Nicholas Marriott
162546a6ed Done! 2009-01-27 20:37:31 +00:00
Nicholas Marriott
4d7e555a48 Don't screw up UTF-8 combined characters. 2009-01-26 20:57:45 +00:00
Nicholas Marriott
514adbdb4d Update. 2009-01-26 19:17:08 +00:00
Nicholas Marriott
7c8cd81b34 Typos. 2009-01-26 18:22:55 +00:00
Tiago Cunha
f62ed6aaa3 load-buffer command 2009-01-25 19:00:10 +00:00
Nicholas Marriott
4d9af27b0b Better error messages for fork. 2009-01-23 16:59:14 +00:00
Nicholas Marriott
af5bc517c0 Update TODO. 2009-01-23 16:19:26 +00:00
Nicholas Marriott
9acc26711d new-window -k. 2009-01-21 22:21:49 +00:00
Nicholas Marriott
19987feaaa Bring back -p and -l to splitw to specify height as % or nlines. 2009-01-21 19:38:51 +00:00
Nicholas Marriott
7118baa340 Allow a selection in vi keys mode... 2009-01-21 18:19:32 +00:00
Nicholas Marriott
2d15f59859 Try to change the window title to match the command running it in. This is done
by reading argv[0] from the process group leader of the group that owns the tty
(tcgetpgrp()). This can't be done portably so some OS-dependent code is
introduced (ugh); OpenBSD, FreeBSD and Linux are supported at the moment.

A new window flag, automatic-rename, is available: if this is set to off, the
window name is not changed. Specifying a name with the new-window, new-session
or rename-window commands will automatically set this flag to off for the
window in question. To disable it entirely set the option to off globally (setw
-g automatic-rename off).
2009-01-20 19:35:03 +00:00
Nicholas Marriott
2afa8ebc02 Fix various silly problems with status line off. 2009-01-19 20:14:55 +00:00
Nicholas Marriott
93230a64bc Pass return code from _exec; allow command sequences to work from the command line. 2009-01-19 18:23:40 +00:00
Nicholas Marriott
4cdc228353 Unbreak UTF-8. 2009-01-18 21:46:30 +00:00
Nicholas Marriott
ac8ae1250a +. 2009-01-18 21:25:51 +00:00
Nicholas Marriott
d1988b8010 This is done. 2009-01-18 19:17:35 +00:00
Nicholas Marriott
3efd1f5014 find-window command. 2009-01-18 17:20:52 +00:00
Nicholas Marriott
a15f8fc4a6 Support command sequences separated by " ; ". Also clean up command printing. 2009-01-18 14:40:48 +00:00
Nicholas Marriott
8ea49712fd suspend-client command and suspend client when ^Z key binding is used. 2009-01-18 12:09:42 +00:00
Nicholas Marriott
273d63040a Update for 0.7. 2009-01-18 00:08:43 +00:00
Nicholas Marriott
1237025d99 Document xterm-keys 2009-01-17 17:16:31 +00:00
Tiago Cunha
5fefd9d11f Document repeat-time. 2009-01-16 22:52:31 +00:00
Nicholas Marriott
8b0a7c056d Document choose-*. 2009-01-16 20:18:10 +00:00
Nicholas Marriott
f8c5d13a46 Update. 2009-01-16 20:10:44 +00:00
Nicholas Marriott
e4cf738e36 Add tabs. 2009-01-16 19:32:29 +00:00
Tiago Cunha
e78b7c8154 Document command-prompt template string, and panes commands. From nicm and me. 2009-01-16 17:28:49 +00:00
Nicholas Marriott
68aedad849 Some comments. 2009-01-16 00:12:41 +00:00
Nicholas Marriott
5aa3098bb6 Support #S #H in status-left/right. 2009-01-15 23:42:21 +00:00
Nicholas Marriott
3f20549f66 Reorder a bit. 2009-01-15 23:32:03 +00:00
Tiago Cunha
5bd33f5f7f Document default-path, and update set/setw with the -u flag. From nicm and me. 2009-01-15 21:24:03 +00:00
Nicholas Marriott
d29ca39e0e Two new commands, choose-window and choose-session which work only when bound to a key and allow the window or session to be selected from a list. 2009-01-15 19:27:31 +00:00
Nicholas Marriott
668dac5b12 Retry properly when failed to connect. 2009-01-15 00:21:24 +00:00
Nicholas Marriott
a1cb652643 Update. 2009-01-14 23:59:33 +00:00
Nicholas Marriott
97fef895f2 Rework the prefix-time stuff. The option is now call repeat-time and defaults to 500 ms. However, it only applies to a small subset of commands, currently: up-pane, down-pane, next-window, previous-window, resize-pane-up, resize-pane-down. These are the commands for which it is obviously useful, having it for everything else was just bloody annoying. 2009-01-14 22:13:30 +00:00
Nicholas Marriott
e9bb939884 Update. 2009-01-14 21:00:41 +00:00
Nicholas Marriott
d1eb153368 switch-pane is now select-pane. 2009-01-14 19:56:55 +00:00
Nicholas Marriott
b4ac8c1342 Multiple window splitting. 2009-01-14 19:29:32 +00:00
Nicholas Marriott
78f7e6d127 Turn off prefix-time for the moment, it is too annoying. 2009-01-13 06:52:12 +00:00
Nicholas Marriott
98c85cf989 command-prompt now accepts a single argument, a template string. Any occurrences of %% in this string are replaced by whatever is entered at the prompt and the result is executed as a command. This allows things like (now bound by default):
bind , command-prompt "rename-window %%"

Or my favourite:

         bind x command-prompt "split-window 'man %%'"
2009-01-13 01:08:40 +00:00
Nicholas Marriott
60bfaf5bae prefix-time option to allow multiple commands without additional prefixes. 2009-01-12 23:37:02 +00:00
Nicholas Marriott
dbbc314cc9 Handle ctrl/shift modifiers better. 2009-01-12 21:47:03 +00:00
Nicholas Marriott
c35a50b21a Commands to resize panes; also a pane generic cmd, not used yet. 2009-01-12 19:23:14 +00:00
Nicholas Marriott
440a84b2aa Use -O0 to prevent copy issues. 2009-01-12 00:52:37 +00:00
Nicholas Marriott
162bacdcd9 Window splitting. Two vertical panes fixed 50% each. This is a huge diff, still a couple of bugs (notably heap corruption somewhere causing segfault on exit). 2009-01-11 23:31:46 +00:00
Nicholas Marriott
d78bc5dfc4 save-buffer command, from Tiago Cunha. 2009-01-11 23:14:57 +00:00
Nicholas Marriott
b4fe99194f Updates. 2009-01-11 01:06:33 +00:00
Nicholas Marriott
6c9822ccc2 Update slightly. 2009-01-11 01:00:53 +00:00
Nicholas Marriott
e3feb067a5 Server locking. set-password and lock-server commands, plus automatic locking. 2009-01-11 00:48:42 +00:00
Nicholas Marriott
4d71164826 Pick up cwd from environment,. 2009-01-10 19:37:35 +00:00
Nicholas Marriott
88ab74ac20 Clock mode. 2009-01-10 19:35:40 +00:00
Nicholas Marriott
bea8a54f69 Update. 2009-01-10 18:35:48 +00:00
Nicholas Marriott
e96dfbc2bf +tmux differences. 2009-01-10 16:58:22 +00:00
Nicholas Marriott
34cc2e0962 Update. 2009-01-10 16:07:49 +00:00
Nicholas Marriott
934e6d9413 vis functions for Linux. 2009-01-10 12:52:57 +00:00
Nicholas Marriott
fb6c8ecae6 New command, server-info, to show server info + terminal details. Also tweak term stuff a bit. 2009-01-10 01:30:38 +00:00
Nicholas Marriott
3ed5aa3e72 Build array of codes, stop using ncurses global variables and push ncurses crap into tty-term.c. 2009-01-09 23:57:42 +00:00
Nicholas Marriott
ed5e8c4cd9 Tidy, +. 2009-01-08 19:59:37 +00:00
Nicholas Marriott
481465d34c -. 2009-01-08 19:10:10 +00:00
Nicholas Marriott
d531dbb53a Minor tidying; remove some old debugging messages. 2009-01-07 22:57:03 +00:00
Nicholas Marriott
c980360cb5 +. 2009-01-07 20:11:51 +00:00
Nicholas Marriott
51a3a93731 Update TODO. 2009-01-07 20:09:10 +00:00
Nicholas Marriott
4817468e92 +TODO +CHANGES. 2009-01-06 18:24:37 +00:00
Nicholas Marriott
4af8db90e8 Complete option names as well. 2009-01-06 17:04:56 +00:00
Nicholas Marriott
ca1ee21702 Switch to splay tree for key bindings. 2009-01-06 14:10:32 +00:00
Nicholas Marriott
7a82e86827 Make window options work the same was as session options, add mode-fg/mode-bg options, force -g for global on set/show/setw/showw/ 2008-12-08 16:19:51 +00:00
Nicholas Marriott
d0342f4a04 Ability to show window title on status line. 2008-12-05 20:04:06 +00:00
Nicholas Marriott
408c855070 +. 2008-12-02 16:46:26 +00:00
Nicholas Marriott
8524062e56 Document mode keys 2008-11-17 17:41:35 +00:00
Nicholas Marriott
46f5e42145 Keep stack of previous windows.
Check for op (orig_pair) for default colours.
2008-11-16 10:10:26 +00:00
Nicholas Marriott
4198a9c376 TAILQ -> SLIST. 2008-11-05 01:19:24 +00:00
Nicholas Marriott
93de57d83f Sync. 2008-10-22 17:28:22 +00:00
Nicholas Marriott
185f7297e8 Better OSC support for title setting, and support APC as well. 2008-10-09 21:22:16 +00:00
Nicholas Marriott
631a45ecb5 Calculate y properly. 2008-09-28 20:34:22 +00:00
Nicholas Marriott
48182243b7 Done. 2008-09-25 20:10:19 +00:00
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