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
nicm
cb10bfb8ef
Save mouse buttons as well as position.
2019-05-09 14:09:32 +00:00
nicm
21d9750450
send-keys also needs to insert key commands in the right order.
2019-05-09 13:12:59 +00:00
nicm
3c68e51609
Change swap-window -d to be the other way round (stay with src window),
...
so it works like swap-pane.
2019-05-09 08:39:09 +00: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
nicm
f9682d2e55
Add a flag to redraw only the overlay, and remove the overlay on resize.
2019-05-08 18:07:12 +00:00
nicm
a384245c5a
Adjust how mouse targets are found so they always have a session, window
...
and pane.
2019-05-08 18:05:03 +00:00
nicm
89db309e10
Move around the display-panes identify code to make it a bit more
...
generic and hide the display-panes specific bits into
cmd-display-panes.c.
2019-05-07 20:01:41 +00:00
nicm
d53d3bce59
Adjust the same bit to adjust the selection for history-top and
...
history-bottom as for cursor-up and cursor-down. GitHub issue 1723.
2019-05-07 19:46:17 +00: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
nicm
85a9c2f52b
Treat keys in identify mode (display-panes) specially and handle them
...
immediately rather than queuing them (the command can block the queue
which means they were not being seen until it finished which was too
late). Reported by denis@ and solene@, ok solene@.
2019-05-07 11:24:03 +00:00
nicm
69440d19b7
Do not use evbuffer_add_buffer because it is destructive and doesn't
...
work in newer libevent.
2019-05-07 10:25:15 +00:00
nicm
45ae9a8e35
Fix order of insertion in load_cfg.
2019-05-03 21:21:00 +00: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
nicm
e8e4f4ec3e
Insert after the right element on queue.
2019-05-03 18:59:58 +00:00
nicm
4097257bef
Do not store the mouse position we calculate as the start of a drag back
...
into the mouse event that later code uses, it has been adjusted and they
should use the original position. GitHub issue 1710.
2019-05-03 18:42:40 +00:00
nicm
84e4652513
Use the right index for user-keys.
2019-05-03 18:00:19 +00:00
nicm
fc3d85e34b
Fix mouse positioning when the pane is not entirely visible.
2019-05-03 16:51:29 +00:00
nicm
cf6075fb29
Correct ordering when adding after an existing item.
2019-05-03 15:43:01 +00:00
nicm
33298d6df6
Instead of processing keys all together, put them up on the client
...
command queue so they are ordered correctly with the commands that they
execute.
2019-05-03 14:51:30 +00:00
nicm
4bb48998e0
Fix reverse attribute in status line, GitHub issue 1709.
2019-05-03 10:00:48 +00:00