Commit Graph

1325 Commits (ffcc60211d3cbdb243b295e624bc9283da54b1d6)

Author SHA1 Message Date
Thomas Adam b8360504f3 Merge branch 'obsd-master' 2019-05-28 15:02:26 +01:00
Thomas Adam eba6cf61c9 Merge branch 'obsd-master' 2019-05-28 13:02:27 +01:00
nicm 0ec410689c Allow source-file to take multiple arguments. 2019-05-28 11:46:30 +00:00
nicm 12255411f2 Allow menu items to be disabled by putting a - at the start of their
name, rather than just including #[dim] which still allowed them to be
chosen.
2019-05-28 09:50:54 +00:00
Thomas Adam c0116b2c5b Merge branch 'obsd-master' 2019-05-28 09:02:26 +01:00
nicm 799a154b91 Change display-menu from taking a single string to a set of arguments,
which is much easier to work with. Based on a diff from Avi Halachmi.
2019-05-28 07:18:42 +00:00
Thomas Adam 793f4d89d6 Merge branch 'obsd-master' 2019-05-27 19:02:25 +01:00
nicm 90cd045cf3 Clarify newlines inside {} a little. 2019-05-27 16:22:32 +00:00
Thomas Adam d4bf4bd7c7 Merge branch 'obsd-master' 2019-05-27 15:02:28 +01:00
nicm 6b332127ca Add an additional {} syntax for defining strings in the configuration
file, making it much tidier to define commands that contain other tmux
or shell commands (like if-shell). Also tweak bind-key to expect a
string if it is only given one argument, so {} can be used with it as
well. From Avi Halachmi.
2019-05-27 12:16:27 +00:00
Thomas Adam 103e44d936 Merge branch 'obsd-master' 2019-05-26 21:02:26 +01:00
nicm e90d4a6021 Add formats for word and line under the mouse and use them to add some
items to the pane menu.
2019-05-26 17:34:45 +00:00
Thomas Adam 2e84d1cf03 Merge branch 'obsd-master' 2019-05-26 15:02:25 +01:00
nicm 6431005169 Add a way to append or prepend to a format if the length has been limited. 2019-05-26 12:02:42 +00:00
Thomas Adam 463bd8abb9 Merge branch 'obsd-master' 2019-05-25 18:41:51 +01:00
nicm a65a6d62d1 Add <, >, <=, >= for formats, GitHub issue 1747. 2019-05-25 16:51:10 +00:00
Thomas Adam 75aeb733f2 Merge branch 'obsd-master' 2019-05-23 13:02:27 +01:00
nicm 723010ba72 Replace the split parser code (cfg.c and cmd-string.c) with a single
parser using yacc(1). This is a major change but is clearer and simpler
and allows some edge cases to be made more consistent, as well as
tidying up how aliases are handled. It will also allow some further
improvements later.

Entirely the same parser is now used for parsing the configuration file
and for string commands. This means that constructs previously only
available in .tmux.conf, such as %if, can now be used in string commands
(for example, those given to if-shell - not commands invoked from the
shell, they are still parsed by the shell itself).

The only syntax change I am aware of is that #{} outside quotes or a
comment is now considered a format and not a comment, so #{ is now a
syntax error (notably, if it is at the start of a line).

This also adds two new sections to the man page documenting the syntax
and outlining how parsing and command execution works.

Thanks to everyone who sent me test configs (they still all parse
without errors - but this doesn't mean they still work as intended!).

Thanks to Avi Halachmi for testing and man page improvements, also to
jmc@ for reviewing the man page changes.
2019-05-23 11:13:30 +00:00
Thomas Adam 3856116069 Merge branch 'obsd-master' 2019-05-21 09:02:37 +01:00
nicm ae4cccb4f1 Fix a couple of Ta from Alphonse Mariya. 2019-05-21 07:01:14 +00:00
Thomas Adam 1eefbd28e8 Merge branch 'obsd-master' 2019-05-13 23:02:26 +01:00
nicm 1ee944a19d Add support for overline (SGR 53), from Ricardo Banffy. 2019-05-13 20:10:23 +00:00
Thomas Adam b5b5d35eee Merge branch 'obsd-master' 2019-05-13 11:02:31 +01:00
nicm c5f660e33a Fix column width for copy mode commands. 2019-05-13 08:56:07 +00:00
Thomas Adam 50d1d04913 Merge branch 'obsd-master' 2019-05-11 09:02:29 +01:00
nicm 198b0a23a2 Don't use arguments with It and -enum, pointed out by jmc. 2019-05-11 06:40:01 +00:00
Thomas Adam aa13bd4016 Merge branch 'obsd-master' 2019-05-10 22:10:38 +01:00
nicm 6dcca5fda4 Add support for simple menus usable with mouse or keyboard. New command
display-menu shows a menu (bound to the mouse on status line by default)
and a couple of extra formats for the default menus.
2019-05-10 18:04:06 +00:00
Thomas Adam f431e20f3d Merge branch 'obsd-master' 2019-05-09 11:02:25 +01:00
nicm 299b7289ea Add formats to show if pane is the marked pane and if any marked pane is set. 2019-05-09 08:38:13 +00:00
Thomas Adam 3439c02e9d Merge branch 'obsd-master' 2019-05-07 17:02:25 +01:00
schwarze fcd0e3082b Rename the ENVIRONMENT section which was squatting on the standard
manual page section and create a new ENVIRONMENT with the expected
content.  Move some information that was misplaced below the -u
flag into that new section.
Feedback and OK nicm@ jmc@ tb@
2019-05-07 14:01:39 +00:00
Thomas Adam d4177e954c Merge branch 'obsd-master' 2019-05-03 23:02:28 +01:00
nicm 9f75635596 Allow panes to be empty (no command), output can be piped to them with
split-window or display-message -I.
2019-05-03 20:44:24 +00:00
Nicholas Marriott 43656d4ea7 Sync up some tmux.1 bits. 2019-05-03 17:12:30 +01:00
Thomas Adam fff85d854e Merge branch 'obsd-master' 2019-05-03 17:04:11 +01:00
nicm 5d9e591ae8 Fix up some bits about window-size that seem to have got lost. 2019-05-02 20:12:40 +00:00
Thomas Adam 3ab229da70 Merge branch 'obsd-master' 2019-04-28 23:02:30 +01:00
nicm c4b0da5513 Support multiple occurances of the same argument. Use this for a new
flag -e to new-window, split-window, respawn-window, respawn-pane to
pass environment variables into the newly created process. From Steffen
Christgau in GitHub issue 1697.
2019-04-28 20:05:50 +00:00
Thomas Adam 5489796737 Merge branch 'obsd-master' 2019-04-27 20:09:07 +01:00
nicm dfb7bb6830 Merge hooks into options and make each one an array option. This allows
multiple commands to be easily bound to one hook. set-hook and
show-hooks remain but they are now variants of set-option and
show-options. show-options now has a -H flag to show hooks (by default
they are not shown).
2019-04-26 11:38:51 +00:00
Thomas Adam f2c0605d6d Merge branch 'obsd-master' 2019-04-25 17:02:37 +01:00
nicm 1677bb0dea Need to escape ]. 2019-04-25 15:35:07 +00:00
Thomas Adam b0d7623b7e Merge branch 'obsd-master' 2019-04-23 13:02:37 +01:00
nicm 564e44adc6 Add -no-clear variants of copy-selection and copy-pipe which do not
clear the selection after copying. Make copy-pipe clear the selection by
default to be consistent with copy-selection. From Avi Halachmi.
2019-04-23 09:39:07 +00:00
Thomas Adam f980e868dd Merge branch 'obsd-master' 2019-04-18 14:11:22 +01:00
nicm 5b9211d827 Copy the code to infer the option type to show-options and document it. 2019-04-18 12:22:07 +00:00
jmc 2219f7cc73 mark up punctuation-as-macro-args properly; 2019-04-17 16:34:35 +00:00
nicm 5943cd1907 Document that switch-client can change all of session,window,pane and
check for % in the target as well as ":.".
2019-04-17 14:39:37 +00:00
Thomas Adam 2546572e8e Merge branch 'obsd-master' 2019-04-08 21:02:37 +01:00