Commit Graph

4324 Commits

Author SHA1 Message Date
Nicholas Marriott
3964309c67 Add a command queue to standardize and simplify commands that call other
commands and allow a command to block execution of subsequent commands. This
allows run-shell and if-shell to be synchronous which has been much requested.

Each client has a default command queue and commands are consumed one at a time
from it. A command may suspend execution from the queue by returning
CMD_RETURN_WAIT and then resume it by calling cmd_continue() - for example
run-shell does this from the callback that is fired after the job is freed.

When the command queue becomes empty, command clients are automatically exited
(unless attaching). A callback is also fired - this is used for nested commands
in, for example, if-shell which can block execution of the client's cmdq until
a new cmdq becomes empty.

Also merge all the old error/info/print functions together and lose the old
curclient/cmdclient distinction - a cmdq is bound to one client (or none if in
the configuration file), this is a command client if c->session is NULL
otherwise an attached client.
2013-02-23 22:25:58 +00:00
Nicholas Marriott
243244d285 Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-23 19:26:12 +00:00
Nicholas Marriott
497b27dafb Expand format variables in the run-shell and if-shell shell commands, from
Thiago Padilha.
2013-02-23 19:24:42 +00:00
Nicholas Marriott
ca6d9f799e Tidy TODO and nuke stuff that is done in some form or not going to happen. 2013-02-23 15:52:56 +00:00
Nicholas Marriott
f1aa5f6a1d Add to TODO. 2013-02-23 15:43:13 +00:00
Nicholas Marriott
dc50de782a The visit -> Visit 2013-02-23 15:15:20 +00:00
Nicholas Marriott
2e85eeea37 www Project Page -> SourceForge Page 2013-02-23 14:51:56 +00:00
Nicholas Marriott
357da035b9 Merge send-prefix into send-keys. 2013-02-23 14:41:07 +00:00
Nicholas Marriott
5aa54c863d Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-23 14:23:59 +00:00
Nicholas Marriott
42735d446e Merge show-buffer into save-buffer. 2013-02-23 14:23:35 +00:00
Nicholas Marriott
57eb334d5b Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-23 13:03:47 +00:00
Nicholas Marriott
5f904aa350 Add pane_tags format to format_window_pane based on code from George Nachman. 2013-02-23 13:02:52 +00:00
Nicholas Marriott
ee0f8adfac Handle focus events from the terminal, from Aaron Jensen. 2013-02-23 10:01:34 +00:00
Nicholas Marriott
1ed37385c6 Use -O2 without debugging. 2013-02-22 23:37:55 +00:00
Nicholas Marriott
3a2e9d805a Fix error reporting for client commands by adding a flag to cmd_find_client to
tell it whether or not to show errors, sometimes it's needed and sometimes not.
2013-02-22 23:04:53 +00:00
Nicholas Marriott
911ef4e69a Allow display-message with no curclient. 2013-02-22 22:57:26 +00:00
Nicholas Marriott
1994ae4640 Missing PANE_RESIZE define. 2013-02-22 21:47:34 +00:00
Nicholas Marriott
dbd8e47846 Do pane resize ioctls once at the end of the server loop rather than
immediately.
2013-02-22 21:35:29 +00:00
Nicholas Marriott
ce7bf1083e Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-22 16:25:50 +00:00
Nicholas Marriott
1db4ec6e63 Add pane_current_command format. 2013-02-22 16:25:21 +00:00
Nicholas Marriott
1c82cf7660 Remove a couple of FAQ bits that are out of date and not frequent. 2013-02-22 14:53:00 +00:00
Nicholas Marriott
e43fc6f08a Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-22 14:32:33 +00:00
Nicholas Marriott
31407b70e0 Add option command-prefix which is automatically prepended to any command
(apart from a naked default-shell). The default is "exec ".
2013-02-22 14:31:38 +00:00
Nicholas Marriott
7d3c1016ce Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-22 07:25:38 +00:00
Nicholas Marriott
4c9f9438ff Add support for focus notifications when tmux pane changes, based on work by
Aaron Jensen.
2013-02-22 07:23:11 +00:00
Nicholas Marriott
374dae6635 Add a load of miscellaneous pane formats, from George Nachman. 2013-02-21 19:44:27 +00:00
Nicholas Marriott
8c50f625b0 Add session_set_current helper function, extracted from a diff from Aaron
Jensen.
2013-02-21 16:54:13 +00:00
Nicholas Marriott
6fc96978c2 Add to TODO. 2013-02-21 16:43:04 +00:00
Nicholas Marriott
8e3767e344 Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-21 09:37:06 +00:00
Nicholas Marriott
b8b5631d9d Add -C and -J to capture pane to escape control sequences and to join wrapped
line, based on a diff from George Nachman.
2013-02-21 09:35:01 +00:00
Nicholas Marriott
c577b47cd5 Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-20 23:16:53 +00:00
Nicholas Marriott
cb6f36655e evbuffer_readline returns allocated storage, don't leak it. 2013-02-20 23:15:21 +00:00
Nicholas Marriott
7905f4600d Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-20 14:58:23 +00:00
Nicholas Marriott
41c39e9bd9 Remove stray blank line. 2013-02-20 13:01:59 +00:00
Nicholas Marriott
f81d723264 Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-20 10:59:02 +00:00
Nicholas Marriott
afd5e978cf Need to set clients in context before changing their reference count. 2013-02-20 10:25:15 +00:00
Nicholas Marriott
e68b9abd04 Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-20 10:20:44 +00:00
Nicholas Marriott
e487b87f6f Clear last attributes after reset in string_cells, from George Nachman. 2013-02-20 09:34:21 +00:00
Nicholas Marriott
1e20153b6e Fix so capture-pane/save-buffer can work in control clients, from George
Nachman.
2013-02-20 09:32:52 +00:00
Nicholas Marriott
4621a52183 Include ML and IRC in the text. 2013-02-20 00:16:00 +00:00
Nicholas Marriott
e90a742db8 Tweak bold link. 2013-02-20 00:06:01 +00:00
Nicholas Marriott
b219d54503 Simplify main www page. 2013-02-20 00:03:59 +00:00
Nicholas Marriott
3108d80b7e Move NOTES->README, move Vim syntax file documentation to the file itself and
otherwise tweak some bits.
2013-02-19 23:31:04 +00:00
Nicholas Marriott
8a7d463b87 Prevent lock on control clients, not on others. 2013-02-19 21:11:32 +00:00
Nicholas Marriott
c3859d1df1 Add copy-pipe mode command to copy selection and also pipe to a command. 2013-02-19 17:49:53 +00:00
Nicholas Marriott
5a5e285be8 Don't try to print unterminated strings when loading configuration file. 2013-02-19 17:28:21 +00:00
Nicholas Marriott
4d1d4d6e8e Add -e flag to capture-pane to include embedded ANSI SGR escape sequences, from
George Nachman.
2013-02-19 09:55:02 +00:00
Nicholas Marriott
a96dd1932a Don't use a target-client for stdout, just always cmdclient. 2013-02-19 09:51:04 +00:00
Nicholas Marriott
693244795c Remove unnecessary initializers of cmd_ctx. 2013-02-18 23:38:57 +00:00
Nicholas Marriott
255a4f8ce3 load_cfg can actually use the same context now they are reference counted. 2013-02-18 23:35:54 +00:00