Commit Graph

4723 Commits

Author SHA1 Message Date
Nicholas Marriott
293e331d69 Add functions to allocate and free command contexts rather than doing it all on
the stack.
2013-02-18 23:20:21 +00:00
Nicholas Marriott
2a91025581 Use tty_raw on stop, not tty_puts. 2013-02-18 17:35:53 +00:00
Nicholas Marriott
37d34b6b83 Don't hang when clearing line in choose mode now that the cursor stays at the
end with wrap.
2013-02-18 17:23:08 +00:00
Nicholas Marriott
44452823b7 Fix double space in sessions template. 2013-02-18 17:12:58 +00:00
Nicholas Marriott
e4bb87032e Add resize-pane -x and -y for absolute pane size. 2013-02-18 17:00:35 +00:00
Nicholas Marriott
a6c4c2cca0 Implement DECAWM (SM/RM 7) using existing MODE_WRAP flag. 2013-02-18 15:57:46 +00:00
Nicholas Marriott
ba3b8ccc1d Correctly turn handle UTF8 mouse option being toggled, from Egmont Koblinger. 2013-02-18 15:03:50 +00:00
Nicholas Marriott
e5eee7de0c Support the latest theory for mouse input, this is enabled/disabled with SM/RM
1006 and is similar in style to SGR input: \033[<b;x;yM or \033[b;x;ym. From
Egmont Koblinger.
2013-02-18 14:52:27 +00:00
Nicholas Marriott
d8261019f1 Add client_session and client_last_session formats. 2013-02-18 14:23:40 +00:00
Nicholas Marriott
9d165df18a No more lint means no more ARGSUSED. 2013-02-17 23:15:38 +00:00
Nicholas Marriott
7d1a8f7e9e Remove stray test code which would convert abc to x. 2013-02-17 23:05:57 +00:00
Nicholas Marriott
8df3ec612a In terminals with XT, turn on modifyOtherKeys=1 with the escape sequence and
handle the most common set. Pass them through if xterm-keys is on.
2013-02-17 22:56:12 +00:00
Nicholas Marriott
4c91c153cb I strongly suspect it is possible for tmux to block on detach in tty_raw, so
make the fd blocking again much later and have tty_raw just retry the write a
few times.
2013-02-17 22:28:11 +00:00
Nicholas Marriott
cf2c0237f4 Instead of loads of little screen_write_*_on and off functions which just
change mode flags, just have screen_write_mode_set and screen_write_mode_clear.
2013-02-17 10:43:35 +00:00
Nicholas Marriott
3d9fd1c7f2 Add various checks to turn off bits that can't work in control mode (such as
lock).
2013-02-17 10:12:55 +00:00
Nicholas Marriott
d1e8fb33da Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code 2013-02-17 10:04:59 +00:00
Nicholas Marriott
1e3a4f2331 Do not include status line in size calculations in control mode. 2013-02-17 10:04:26 +00:00
Thomas Adam
2ac1d46f46 Don't set key KEYC_NONE on xterm_keys_find match()
When calling xterm_keys_find(); if we get a complete match, don't set the
key to unknown before calling the action to complete the binding; otherwise
non-prefixed bindings will not work.
2013-02-16 21:04:48 +00:00
Nicholas Marriott
77a2174685 Fix a couple of memory leaks, from Romain Francoise. 2013-02-16 19:35:49 +00:00
Nicholas Marriott
3e270af17a Don't omit half the default table (!= not ==). 2013-02-16 13:29:40 +00:00
Nicholas Marriott
10db7ec51b Include the \033 in the key tree and adjust key matching for this change. 2013-02-16 13:21:14 +00:00
Nicholas Marriott
4f01bfc4bc Make choose-tree actually work again. 2013-02-15 12:57:13 +00:00
Nicholas Marriott
1d591ada76 Support capture-pane -p to send to stdout. 2013-02-15 09:31:45 +00:00
Nicholas Marriott
2bdc59fac8 Fix a comment for new key table names. 2013-02-15 02:38:15 +00:00
Nicholas Marriott
784a74df0b Fix function parameter to tty_keys_free. 2013-02-15 02:18:38 +00:00
Nicholas Marriott
82355d2f2d Tidy by splitting default key tables into two. 2013-02-15 02:16:41 +00:00
Nicholas Marriott
97a99d8718 Add -c to refresh-client to set client size in control mode, based on code from
George Nachman.
2013-02-15 01:54:48 +00:00
Nicholas Marriott
755d4863c8 Spaces -> tabs. 2013-02-14 12:22:14 +00:00
Nicholas Marriott
28544391f5 Do not leak formats in status_replace. 2013-02-14 12:20:17 +00:00
Nicholas Marriott
931b0103cd Clarify choose-tree entry in man page. 2013-02-13 11:07:21 +00:00
Nicholas Marriott
6e03b50771 Run session command before window in choose-tree. 2013-02-13 11:05:10 +00:00
Nicholas Marriott
362c460767 Do not crash when calling choose-tree with a command that changes the mode. 2013-02-13 11:01:26 +00:00
Nicholas Marriott
f4c815a1d9 Fix constness again, sigh. 2013-02-13 10:41:12 +00:00
Nicholas Marriott
fc6f08d5b7 No more need for freefn. 2013-02-13 10:27:49 +00:00
Nicholas Marriott
68e370574a Fix constness of window_choose_add_item and _window. 2013-02-13 10:25:37 +00:00
Nicholas Marriott
544c80d715 Fix constness of cmd_template_replace. 2013-02-13 10:19:43 +00:00
Nicholas Marriott
36fe146a74 Fix choose-tree usage. 2013-02-13 09:55:37 +00:00
Nicholas Marriott
caa29af2a9 Add user options, prefixed with @. May be set to any arbitrary string. 2013-02-13 09:54:24 +00:00
Nicholas Marriott
0f31d231db Return error for --foo when using compat/getopt.c. 2013-02-12 20:36:22 +00:00
Nicholas Marriott
102cb77435 Add -v to set and setw to show only option value. 2013-02-12 20:12:10 +00:00
Nicholas Marriott
7360ff4496 Use proc_pidinfo on Darwin for process name too, from OZAKI Kiichi. 2013-02-12 09:40:22 +00:00
Nicholas Marriott
a6fd92bd8d Remove stray change accidentally committed. 2013-02-10 19:15:49 +00:00
Nicholas Marriott
06ac4b628d Add a format client_prefix which is 1 if prefix key has been pressed, used for
example #{?client_prefix,X,Y}. Also a few extra server_client_status needed.
2013-02-10 18:58:05 +00:00
Nicholas Marriott
6c53a1ed68 Allow formats in status options. 2013-02-10 18:53:25 +00:00
Nicholas Marriott
6ad2c5c40f Show alias in lscm output. 2013-02-10 18:26:22 +00:00
Nicholas Marriott
99cc0015f8 Rework reflow code so it does not do so much allocation which should be faster
with large histories.
2013-02-10 18:15:30 +00:00
Nicholas Marriott
f1ce95915c Allow choose commands to be used outside tmux, so long as at least one client
is attached.
2013-02-10 17:52:51 +00:00
Nicholas Marriott
aadc87f5a7 Remove free callback for window_choose_data objects. 2013-02-10 17:36:58 +00:00
Nicholas Marriott
4d382ae8e6 Miscellaneous tidying of choose API, including:
- rename client and session to start_client and start_session in
  window_choose_data struct. also add TREE_OTHER define and reorder the
  struct
- rename window_choose_ctx to window_choose_data_run
- don't pass a cmd_ctx into window_choose_create (will let it use a
  different client later). instead take type, session, client
- add window_choose_data_free and use it to dispose of wcd rather than
  each cmd-*.c doing it individually
- change so ref counting is done by wcd_add and wcd_free rather than
  callers. this means 1 ref for each item but what of it :-)
- also add a ref to tree_session - not sure if this is needed?
- all the callbacks except choose-client and find-window are the same so
  remove them and add window_choose_default_callback
- reorder/rename some other bits and pieces for tidyness
2013-02-10 17:32:58 +00:00
Nicholas Marriott
418ba99078 Add to TODO. 2013-02-09 16:21:20 +00:00