nicm
75c874c55b
Clear the "waiting for editor" area before writing so stray characters
...
aren't visible from underneath.
2026-07-15 13:29:08 +00:00
nicm
1a02c9957c
Convert display-panes away from an overlay and into a mode. This is
...
another step on the road of getting rid of overlays altogether (they are
full of special cases; popups and menus are to go also eventually). We
lose some of the styling of borders but gain the ability to run
display-panes in another pane (perhaps not hugely useful but one never
knows). The -b flag goes away as no longer useful.
2026-07-14 19:57:30 +00:00
nicm
d29aa12117
Replace the notification system with events. Events can carry a payload of
...
additional payload (to reduce problems with lifetime of objects) and are
delivered to one or more event sinks. This is more powerful and reduces the
complex dependencies between control mode and hooks. Events are now used for
hooks, control mode notifications and for monitors (set-hook -B).
wait-for can now wait for an event to fire (-E flag, with -F to for filter),
with -v to print the payload, as well as listing (-l) waiting clients on an
event and forcing one to wake (-w).
A few additional hooks are also now available (pane-created, pane-resized, etc)
and some of the existing ones have additional format variables available.
2026-07-10 13:38:45 +00:00
nicm
3631f81236
Apply better colours to various builtin bits in modes.
2026-06-26 08:10:48 +00:00
nicm
d04b1ffca5
Use a floating pane for the buffer mode editor instead of a popup.
2026-06-19 18:37:10 +00:00
nicm
6c46358be8
Draw help directly instead of using a popup.
2026-06-19 17:37:26 +00:00
nicm
fd62f419ac
Add a short builtin help text for each mode accessible with C-h,
...
based on code from Patrick Motard in GitHub issue 4751.
2026-03-12 12:40:40 +00:00
nicm
3c3d9ce3a9
Break sorting out into a common file so formats and modes use the same
...
code. Also add -O for sorting to the list commands. From Dane Jensen in
GitHub issue 4813.
2026-02-02 10:08:30 +00:00
nicm
9bf8ca5856
Support case insensitive search in modes in the same way as copy mode
...
(like emacs, so all-lowercase means case insensitive). GitHub issue
4396.
2025-10-28 14:21:06 +00:00
nicm
50dafd6187
Remove some unnecessary assignments.
2025-09-09 08:49:22 +00:00
nicm
b905039ed2
Improve #? conditional expression in formats:
...
1) add support for else if, so
#{?cond1,value1,#{?cond2,value2,else-value}} can be changed to
#{?cond1,value1,cond2,value2,else-value};
2) add default empty string if there's no else value, so
#{?cond1,value1,} can be changed to #{?cond1,value1}.
From David Mandelberg in GitHub issue 4451.
2025-04-22 12:23:26 +00:00
nicm
a541be3951
Add S-Up and S-Down to move windows in tree mode. From David Mandelberg
...
in GitHub issue 4415.
2025-03-21 13:36:42 +00:00
nicm
7b6fbe7262
Adjust the logic when deleting last buffer to better preserve the
...
selection: if selecting the element below the deleted one fails (because
as the last one), select the one above it instead. From Daniel Mueller,
GitHub issue 4043.
2024-08-04 08:53:43 +00:00
nicm
0ae8b681b2
Use -p for default paste-buffer command in buffer mode, it will only do
...
anything if the application asked for it. From Gregory Anders.
2024-03-21 11:32:49 +00:00
nicm
17290b9121
If there are no buffers, reset mode as soon as any key pressed. Fixes
...
crash reported by Gaoyang Zhang in GitHub issue 3373.
2022-11-03 08:41:53 +00:00
nicm
0a8f356c72
Spacing/style nits.
2022-05-30 12:55:25 +00:00
nicm
5f32b7d961
Hide struct args behind a couple of accessor functions.
2021-08-20 19:50:16 +00:00
nicm
6c659494f5
Fix warnings, from Jan Tache in GitHub issue 2692.
2021-06-10 07:45:43 +00:00
nicm
cd208c9d72
Permit shortcut keys in buffer, client, tree modes to be configured with
...
a format; the default remains the line number. GitHub issue 2636.
2021-04-12 06:50:25 +00:00
nicm
fd451aa796
Redraw any visible modes when status line changes so that formats like
...
the pane title are updated. GitHub issue 2487. Also a man page fix from
jmc.
2020-12-03 07:12:11 +00:00
nicm
72984c4834
Move editor stuff to common code in popup.c.
2020-05-16 16:13:09 +00:00
nicm
d67245c734
Add a customize mode where keys and options may be browsed and changed,
...
includes adding a brief description of each option. Bound to "C" by
default.
2020-05-16 16:02:24 +00:00
nicm
2df75aa117
Use VIS_CSTYLE for paste buffers also.
2020-05-16 15:35:19 +00:00
nicm
78595457f9
Add 'e' key in buffer mode to open the buffer in an editor.
2020-05-16 15:24:28 +00:00
nicm
0dd1944206
Tweak the default choose modes formats:
...
- Only show pane title if it is not default and not empty.
- Add a prettier time format and use that instead of long ctime().
- Remove clutter and change the order.
2020-05-16 14:10:29 +00:00
nicm
b96ac80901
Some unnecessary assignments and unused variables.
2020-04-09 13:52:31 +00:00
nicm
dc882adb2e
Remove unused variables from Ben Boeckel, and a Pp from jmc.
2020-02-11 07:01:08 +00:00
nicm
21f9b39f06
Show UTF-8 in choose-buffer mode. From KOIE Hidetaka.
2019-12-13 09:15:13 +00:00
nicm
7826d40ff9
Style nits in function arguments.
2019-12-03 10:47:22 +00:00
nicm
37583f0a69
Add a flag to reverse sort in the various choose modes, from Benjamin
...
Poirier in GitHub issue 1875.
2019-08-16 11:49:12 +00:00
nicm
7dced37673
Use VIS_CSTYLE for the arguments and add the missing escapes it can
...
generate to the parser.
2019-05-29 20:05:14 +00: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
nicm
a131655235
Add simple menus to tree, client, buffer modes.
2019-05-12 08:58:09 +00:00
nicm
08bc226527
Expand session and window formats for buffer filters.
2019-03-28 21:05:15 +00:00
nicm
2628af573d
Add format variables for the default formats for the various modes
...
(tree_mode_format and so on) and add a -a flag to display-message to
list variables with values.
2019-03-18 14:10:25 +00:00
nicm
938156d73b
DECRC and DECSC apparently need to preserve origin mode as well, based
...
on a fix from Marc Reisner.
2019-03-12 20:02:47 +00:00
nicm
f98c66ece8
Add a separate mode struct for the active window mode if any.
2019-03-07 20:24:21 +00:00
nicm
bde0224deb
Pass window into mode functions.
2018-12-18 13:20:44 +00:00
nicm
508e2f0b3a
Add -Z flag to choose-tree, choose-client, choose-buffer to
...
automatically zoom the pane when the mode is entered and unzoom when it
exits, assuming the pane is not already zoomed. Add -Z to the default
key bindings.
2018-02-28 08:55:44 +00:00
nicm
50a5f84cb4
Support mouse on preview in tree mode.
2017-11-03 17:02:33 +00:00
nicm
43264dfbf4
Make the mode draw function use the parent screen directly rather than
...
its own to avoid copying twice.
2017-11-02 22:00:42 +00:00
nicm
8dd776106d
Add P key to paste tagged in buffer mode, and trim some code that should
...
no longer be necessary.
2017-10-25 11:26:11 +00:00
nicm
5dd5543fe4
Add -F to choose-tree, choose-client, choose-buffer to specify the
...
format of each line, as well as adding a couple of formats needed for
the default display.
2017-08-09 11:43:45 +00:00
nicm
adcd5aff6f
Extend filters (f key) to buffer and client mode and add -f flag to
...
specify to command.
2017-06-09 16:01:39 +00:00
nicm
bab4da5133
Add -O option to choose-* to set initial sort order.
2017-06-09 15:29:15 +00:00
nicm
3ec28ceb9b
Default sort for buffer mode should be time not name.
2017-06-09 15:17:20 +00:00
nicm
356fab7bcb
Return 1 if name matches not 0, also fix some spaces.
2017-06-07 15:27:46 +00:00
nicm
405cc337f3
Add simple searching (C-s and n) to the various choose modes: by name
...
for client and tree, and by name and content for buffer.
2017-06-07 14:37:30 +00:00
nicm
248aa54bfd
Style and spacing nits.
2017-05-31 17:56:48 +00:00
nicm
61c0189bb1
Need time.h.
2017-05-31 15:26:41 +00:00