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
nicm
90cd045cf3
Clarify newlines inside {} a little.
2019-05-27 16:22:32 +00:00
nicm
94f6488f0e
Go less crazy with horizontal separators on default menus.
2019-05-27 15:29:46 +00:00
nicm
ae3eba6e08
Fix crash when killing the current window, reported by Jesus Rafael
...
Sanchez in GitHub issue 1760.
2019-05-27 12:48:52 +00: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
nicm
65e5e14561
Fix the intended ordering of items in buffer mode - it should not always
...
be tag 0 when the tree is empty. GitHub issue 1759.
2019-05-27 06:50:04 +00:00
nicm
097973e3d5
Add keys for new menu items.
2019-05-26 18:43:43 +00:00
nicm
5fef946df4
Always redraw overlay if it is on (so status line doesn't redraw over it).
2019-05-26 18:27:52 +00:00
nicm
023c2c5392
Do not accept choice unless mouse has actually moved before.
2019-05-26 18:19:52 +00: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
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
nicm
6dee409981
Some other platforms doesn't support fmemopen(3) (not unexpectedly), so
...
don't use it - since we only use getc/ungetc on the file anyway it is
easy not to.
2019-05-26 10:08:50 +00:00
nicm
a65a6d62d1
Add <, >, <=, >= for formats, GitHub issue 1747.
2019-05-25 16:51:10 +00:00
nicm
207789dc2d
Client name can actually be NULL, so use address in that case.
2019-05-25 10:46:55 +00:00
nicm
d7586d3d65
Use client name when logging command queue.
2019-05-25 10:44:09 +00:00
nicm
f8d3d247d8
Merge cmd_list_parse into cmd-parse.y so it can use the new alias
...
processing code.
2019-05-25 07:18:20 +00:00
nicm
6b0fa14470
Fix error handling in if-shell.
2019-05-25 07:15:53 +00:00
nicm
930245d7ff
Make cmd_log_argv take a printf-like format for the prefix.
2019-05-25 06:58:10 +00:00
espie
0dc8b7d5d8
unbreak build, okay nicm@
2019-05-23 21:36:42 +00:00
nicm
f3e01ecc42
Fix line numbers - commands are added after the line ends so they need to
...
get line - 1.
2019-05-23 18:39:00 +00:00
nicm
6c260af56d
Use the same argument escaping code for options as well.
2019-05-23 18:33:53 +00:00
nicm
f006116bac
Environment variables can start with { also.
2019-05-23 18:22:13 +00:00
nicm
eb8b51effc
Fix drawing of status-right when it is aligned to the centre, GitHub
...
issue 1754.
2019-05-23 14:44:33 +00:00
nicm
27bfb56ad5
Break the argument escaping code into a separate function and use it to
...
escape key bindings in list-keys. Also escape ~ and ; and $ properly.
2019-05-23 14:03:44 +00:00
nicm
3e3eb1dd0f
Don't remove group items for group 0 (no group).
2019-05-23 13:08:43 +00:00
nicm
a4fe7e81c8
Fix length calculation for pasting UTF-8 characters in the status line,
...
GitHub issue 1753.
2019-05-23 12:47:52 +00: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
nicm
5571d7a21c
Fix crash if window doesn't exist, GitHub issue 1751.
2019-05-22 18:58:31 +00:00
nicm
ae4cccb4f1
Fix a couple of Ta from Alphonse Mariya.
2019-05-21 07:01:14 +00:00
nicm
87d82170a6
Fix ordering of source-file with multiple files and add flags to load_cfg.
2019-05-20 13:23:32 +00:00
nicm
e128c7fcd8
Replace the various identical error callbacks with a single one in cmd-queue.c.
2019-05-20 11:46:06 +00:00
nicm
8db89f8efb
Add a helper to allocate a cmd_list.
2019-05-20 11:34:37 +00:00
nicm
6e0c663a89
Fix the color space parameter in RGB SGR, from Brad Town.
2019-05-20 05:35:46 +00:00
nicm
82ebd98c5f
Move the single command flag (CMD_CONTROL) into the shared flags.
2019-05-18 21:14:10 +00:00
nicm
9b83b1daa6
Change a couple of ACS characters to be more sensible and add a few
...
missing ones, reported by Ricardo Banffy.
2019-05-17 05:48:25 +00:00
nicm
4acd345c6a
Initialize default size variables, from Thomas Adam.
2019-05-17 05:47:31 +00:00
nicm
cf4566b47b
Fix dragging when in view mode rather than copy mode, GitHub issue 1740
...
from Brad Town.
2019-05-15 19:25:53 +00:00
nicm
38b8a198ba
Fix sizing of main-vertical and main-horizontal layouts, GitHub issue 1736.
2019-05-14 07:37:50 +00:00
nicm
1ee944a19d
Add support for overline (SGR 53), from Ricardo Banffy.
2019-05-13 20:10:23 +00:00
nicm
1b0512aa7e
Always include Lock in the menu.
2019-05-13 20:07:02 +00:00
nicm
c5f660e33a
Fix column width for copy mode commands.
2019-05-13 08:56:07 +00:00
nicm
c3c3927c2b
Oops, removed too much in last change.
2019-05-12 18:18:30 +00:00
nicm
00f19b7f91
Fix some indentation and dead assignments.
2019-05-12 18:16:33 +00:00
nicm
a131655235
Add simple menus to tree, client, buffer modes.
2019-05-12 08:58:09 +00:00
nicm
c91323e4d6
Remove menu_create_from_items, I thought I would use it for some later
...
work but I don't need it.
2019-05-12 07:27:08 +00:00
nicm
198b0a23a2
Don't use arguments with It and -enum, pointed out by jmc.
2019-05-11 06:40:01 +00:00
nicm
ad27b7decd
Do not reduce window height by status line height for control mode
...
clients, from George Nachman.
2019-05-11 06:34:56 +00:00
nicm
d62fd78655
Fix a typo in previous (, -> :).
2019-05-10 18:09:51 +00: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
nicm
004a9b52f0
Add a function to draw a simple menu onto a screen.
2019-05-10 14:12:47 +00:00