OpenBSD CVS

CVS log for src/usr.bin/tmux/mode-tree.c


[BACK] Up to [local] / src / usr.bin / tmux

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.66 / (download) - annotate - [select for diffs], Tue Aug 15 07:01:47 2023 UTC (9 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, HEAD
Changes since 1.65: +2 -2 lines
Diff to previous 1.65 (colored)

Add an option menu-selected-style to configure the currently selected
menu item, from Alexis Hildebrandt.

Revision 1.65 / (download) - annotate - [select for diffs], Fri Aug 11 17:09:00 2023 UTC (9 months, 1 week ago) by nicm
Branch: MAIN
Changes since 1.64: +2 -2 lines
Diff to previous 1.64 (colored)

Do not crash if in buffer mode and the last buffer is deleted using the
command.

Revision 1.64 / (download) - annotate - [select for diffs], Tue Aug 8 08:08:47 2023 UTC (9 months, 1 week ago) by nicm
Branch: MAIN
Changes since 1.63: +3 -3 lines
Diff to previous 1.63 (colored)

Add options and flags for menu styles similar to those existing for
popups, from Alexis Hildebrandt. GitHub issue 3650.

Revision 1.63 / (download) - annotate - [select for diffs], Fri Jan 20 21:36:00 2023 UTC (15 months, 4 weeks ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_3_BASE, OPENBSD_7_3
Changes since 1.62: +3 -3 lines
Diff to previous 1.62 (colored)

Add a flag to display-menu to select the manu item chosen first, GitHub
issue 3442.

Revision 1.62 / (download) - annotate - [select for diffs], Tue Feb 1 18:12:20 2022 UTC (2 years, 3 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1
Changes since 1.61: +4 -10 lines
Diff to previous 1.61 (colored)

A menu must be shown on a client, so always give the client when adding
the items. Also fix mode menus.

Revision 1.61 / (download) - annotate - [select for diffs], Mon Dec 6 10:10:52 2021 UTC (2 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.60: +3 -3 lines
Diff to previous 1.60 (colored)

Fix g/G keys to be in line with copy mode.

Revision 1.60 / (download) - annotate - [select for diffs], Mon Nov 15 10:58:13 2021 UTC (2 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.59: +5 -5 lines
Diff to previous 1.59 (colored)

Leave the hardware cursor at the position of the selected line in choose
modes and current editing position and at the command prompt. It is
invisible but this is helpful for people using screen readers. GitHub
issue 2970.

Revision 1.59 / (download) - annotate - [select for diffs], Tue Oct 26 12:22:23 2021 UTC (2 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.58: +3 -3 lines
Diff to previous 1.58 (colored)

Do not allow inline styles to replace mode-style for the selected item,
from Alexis Hildebrandt in GitHub issue 2946.

Revision 1.58 / (download) - annotate - [select for diffs], Wed Oct 20 09:50:40 2021 UTC (2 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.57: +2 -2 lines
Diff to previous 1.57 (colored)

Add -T to set a popup title, from Alexis Hildebrandt in GitHub issue 2941.

Revision 1.57 / (download) - annotate - [select for diffs], Thu Oct 14 13:19:01 2021 UTC (2 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.56: +2 -2 lines
Diff to previous 1.56 (colored)

Add popup-border-lines option to set popup line style, from Alexis
Hildebrandt, GitHub issue 2930.

Revision 1.56 / (download) - annotate - [select for diffs], Wed Oct 13 09:28:36 2021 UTC (2 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.55: +2 -2 lines
Diff to previous 1.55 (colored)

Add popup-style and popup-border-style options, from Alexis Hildebrandt
in GitHub issue 2927.

Revision 1.55 / (download) - annotate - [select for diffs], Fri Aug 20 17:50:42 2021 UTC (2 years, 8 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0
Changes since 1.54: +2 -2 lines
Diff to previous 1.54 (colored)

Remove stray spaces after function names.

Revision 1.54 / (download) - annotate - [select for diffs], Thu Jun 10 07:50:03 2021 UTC (2 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.53: +3 -3 lines
Diff to previous 1.53 (colored)

Add different command historys for different types of prompts
("command", "search" etc). From Anindya Mukherjee.

Revision 1.53 / (download) - annotate - [select for diffs], Mon Apr 12 09:36:12 2021 UTC (3 years, 1 month ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.52: +2 -2 lines
Diff to previous 1.52 (colored)

Add a flag to disable keys to close a message, GitHub issue 2625.

Revision 1.52 / (download) - annotate - [select for diffs], Mon Apr 12 06:50:25 2021 UTC (3 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.51: +49 -21 lines
Diff to previous 1.51 (colored)

Permit shortcut keys in buffer, client, tree modes to be configured with
a format; the default remains the line number. GitHub issue 2636.

Revision 1.51 / (download) - annotate - [select for diffs], Mon Jul 27 08:03:10 2020 UTC (3 years, 9 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE, OPENBSD_6_8
Changes since 1.50: +2 -2 lines
Diff to previous 1.50 (colored)

Add a -d option to display-message to set delay, from theonekeyg at
gmail dot com in GitHub issue 2322.

Revision 1.50 / (download) - annotate - [select for diffs], Tue Jun 16 08:18:34 2020 UTC (3 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.49: +15 -2 lines
Diff to previous 1.49 (colored)

d and D keys to reset to default in customize mode.

Revision 1.49 / (download) - annotate - [select for diffs], Sat May 16 16:35:13 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.48: +2 -2 lines
Diff to previous 1.48 (colored)

Separate key flags and modifiers, log key flags, make the "xterm" flag
more explicit and fix M- keys with a leading escape.

Revision 1.48 / (download) - annotate - [select for diffs], Sat May 16 16:33:16 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.47: +4 -4 lines
Diff to previous 1.47 (colored)

Rename KEYC_ESCAPE to KEYC_META.

Revision 1.47 / (download) - annotate - [select for diffs], Sat May 16 16:16:07 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.46: +3 -3 lines
Diff to previous 1.46 (colored)

Expand target from client and use it to expand the prompt.

Revision 1.46 / (download) - annotate - [select for diffs], Sat May 16 16:02:24 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.45: +76 -23 lines
Diff to previous 1.45 (colored)

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.

Revision 1.45 / (download) - annotate - [select for diffs], Sat May 16 15:54:20 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.44: +2 -2 lines
Diff to previous 1.44 (colored)

Support embedded styles in the display-message message, GitHub issue
2206.

Revision 1.44 / (download) - annotate - [select for diffs], Sat May 16 15:46:01 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.43: +12 -2 lines
Diff to previous 1.43 (colored)

Add M-+ and M-- to expand and collapse all items in tree mode.

Revision 1.43 / (download) - annotate - [select for diffs], Sat May 16 15:34:08 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.42: +2 -2 lines
Diff to previous 1.42 (colored)

Do not hoke into struct window_pane from the tty code and instead set
everything up in tty_ctx. Provide a way to initialize the tty_ctx from a
callback and use it to let popups draw directly through input_parse in
the same way as panes do, rather than forcing a full redraw on every
change.

Revision 1.42 / (download) - annotate - [select for diffs], Sat May 16 15:01:31 2020 UTC (4 years ago) by nicm
Branch: MAIN
Changes since 1.41: +2 -2 lines
Diff to previous 1.41 (colored)

Drop having a separate type for style options and make them all strings,
which allows formats to be expanded. Any styles without a '#{' are still
validated when they are set but any with a '#{' are not. Formats are not
expanded usefully in many cases yet, that will be changed later.

To make this work, a few other changes:

- set-option -a with a style option automatically appends a ",".

- OSC 10 and 11 don't set the window-style option anymore, instead the
  fg and bg are stored in the pane struct and act as the defaults that
  can be overridden by window-style.

- status-fg and -bg now override status-style instead of trying to keep
  them in sync.

Revision 1.41 / (download) - annotate - [select for diffs], Wed Apr 22 21:01:28 2020 UTC (4 years ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_7_BASE, OPENBSD_6_7
Changes since 1.40: +33 -7 lines
Diff to previous 1.40 (colored)

Indicate the marked pane in choose mode in reverse and add key to set
and clear it (m and M) and a key to jump to the starting pane (H).

Revision 1.40 / (download) - annotate - [select for diffs], Mon Apr 13 18:59:41 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.39: +14 -28 lines
Diff to previous 1.39 (colored)

Add helpers for the simple case of parse string and add to command queue.

Revision 1.39 / (download) - annotate - [select for diffs], Mon Apr 13 15:55:51 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.38: +5 -2 lines
Diff to previous 1.38 (colored)

When adding a list of commands to the queue, instead of automatically
creating a new state for each group of commands, require the caller to
create one and use it for all the commands in the list. This means the
current target works even with list with multiple groups (which can
happen if they are defined with newlines).

Revision 1.38 / (download) - annotate - [select for diffs], Fri Mar 20 17:26:14 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.37: +5 -1 lines
Diff to previous 1.37 (colored)

Fix positioning of menu in choose modes and a couple of keys in tree mode.

Revision 1.37 / (download) - annotate - [select for diffs], Thu Dec 12 15:03:13 2019 UTC (4 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.36: +5 -3 lines
Diff to previous 1.36 (colored)

Do not crash in tree modes if the pane is only 1 in width, reported by
KOIE Hidetaka in GitHub issue 2015.

Revision 1.36 / (download) - annotate - [select for diffs], Fri Aug 16 11:49:12 2019 UTC (4 years, 9 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_6_BASE, OPENBSD_6_6
Changes since 1.35: +16 -11 lines
Diff to previous 1.35 (colored)

Add a flag to reverse sort in the various choose modes, from Benjamin
Poirier in GitHub issue 1875.

Revision 1.35 / (download) - annotate - [select for diffs], Fri Jul 19 07:20:51 2019 UTC (4 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.34: +5 -1 lines
Diff to previous 1.34 (colored)

Add a few vi(1) key aliases, from D Ben Knoble.

Revision 1.34 / (download) - annotate - [select for diffs], Thu May 30 20:54:03 2019 UTC (4 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.33: +2 -2 lines
Diff to previous 1.33 (colored)

Remove a leftover abort and some fixes from cppcheck.

Revision 1.33 / (download) - annotate - [select for diffs], Tue May 28 07:18:42 2019 UTC (4 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.32: +16 -14 lines
Diff to previous 1.32 (colored)

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.

Revision 1.32 / (download) - annotate - [select for diffs], Mon May 27 06:50:04 2019 UTC (4 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.31: +4 -2 lines
Diff to previous 1.31 (colored)

Fix the intended ordering of items in buffer mode - it should not always
be tag 0 when the tree is empty. GitHub issue 1759.

Revision 1.31 / (download) - annotate - [select for diffs], Sun May 26 17:34:45 2019 UTC (4 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.30: +2 -2 lines
Diff to previous 1.30 (colored)

Add formats for word and line under the mouse and use them to add some
items to the pane menu.

Revision 1.30 / (download) - annotate - [select for diffs], Thu May 23 11:13:30 2019 UTC (4 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.29: +17 -12 lines
Diff to previous 1.29 (colored)

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.

Revision 1.29 / (download) - annotate - [select for diffs], Sun May 12 18:16:33 2019 UTC (5 years ago) by nicm
Branch: MAIN
Changes since 1.28: +2 -2 lines
Diff to previous 1.28 (colored)

Fix some indentation and dead assignments.

Revision 1.28 / (download) - annotate - [select for diffs], Sun May 12 08:58:09 2019 UTC (5 years ago) by nicm
Branch: MAIN
Changes since 1.27: +100 -7 lines
Diff to previous 1.27 (colored)

Add simple menus to tree, client, buffer modes.

Revision 1.27 / (download) - annotate - [select for diffs], Mon Mar 18 20:53:33 2019 UTC (5 years, 2 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE, OPENBSD_6_5
Changes since 1.26: +9 -6 lines
Diff to previous 1.26 (colored)

Extend the #[] style syntax and use that together with previous format
changes to allow the status line to be entirely configured with a single
option.

Now that it is possible to configure their content, enable the existing
code that lets the status line be multiple lines in height. The status
option can now take a value of 2, 3, 4 or 5 (as well as the previous on
or off) to configure more than one line. The new status-format array
option configures the format of each line, the default just references
the existing status-* options, although some of the more obscure status
options may be eliminated in time.

Additions to the #[] syntax are: "align" to specify alignment (left,
centre, right), "list" for the window list and "range" to configure
ranges of text for the mouse bindings.

The "align" keyword can also be used to specify alignment of entries in
tree mode and the pane status lines.

Revision 1.26 / (download) - annotate - [select for diffs], Tue Mar 12 20:02:47 2019 UTC (5 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.25: +5 -5 lines
Diff to previous 1.25 (colored)

DECRC and DECSC apparently need to preserve origin mode as well, based
on a fix from Marc Reisner.

Revision 1.25 / (download) - annotate - [select for diffs], Mon Nov 12 14:18:10 2018 UTC (5 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.24: +3 -3 lines
Diff to previous 1.24 (colored)

Allow style #[] in mode formats.

Revision 1.24 / (download) - annotate - [select for diffs], Thu Aug 2 11:44:07 2018 UTC (5 years, 9 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE, OPENBSD_6_4
Changes since 1.23: +2 -2 lines
Diff to previous 1.23 (colored)

Make key trees and some other bits static.

Revision 1.23 / (download) - annotate - [select for diffs], Wed Feb 28 08:55:44 2018 UTC (6 years, 2 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE, OPENBSD_6_3
Changes since 1.22: +20 -1 lines
Diff to previous 1.22 (colored)

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.

Revision 1.22 / (download) - annotate - [select for diffs], Mon Feb 26 08:09:56 2018 UTC (6 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.21: +2 -1 lines
Diff to previous 1.21 (colored)

C-g for modes too, from Mike Hamrick.

Revision 1.21 / (download) - annotate - [select for diffs], Mon Feb 5 06:51:41 2018 UTC (6 years, 3 months ago) by nicm
Branch: MAIN
Changes since 1.20: +19 -4 lines
Diff to previous 1.20 (colored)

Show if filter is active/no matches in modes.

Revision 1.20 / (download) - annotate - [select for diffs], Fri Nov 3 17:11:20 2017 UTC (6 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.19: +7 -4 lines
Diff to previous 1.19 (colored)

Clear key properly if on space with nothing in it.

Revision 1.19 / (download) - annotate - [select for diffs], Fri Nov 3 17:02:33 2017 UTC (6 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.18: +38 -24 lines
Diff to previous 1.18 (colored)

Support mouse on preview in tree mode.

Revision 1.18 / (download) - annotate - [select for diffs], Fri Nov 3 14:23:44 2017 UTC (6 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.17: +7 -4 lines
Diff to previous 1.17 (colored)

Change mouse in modes so that one click moves the cursor and a double
click chooses the line.

Revision 1.17 / (download) - annotate - [select for diffs], Thu Nov 2 22:00:42 2017 UTC (6 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.16: +12 -18 lines
Diff to previous 1.16 (colored)

Make the mode draw function use the parent screen directly rather than
its own to avoid copying twice.

Revision 1.16 / (download) - annotate - [select for diffs], Thu Nov 2 21:29:17 2017 UTC (6 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.15: +2 -2 lines
Diff to previous 1.15 (colored)

Add a "fast" version of screen_write_copy for tree mode that doesn't do
all the checks and selection and marking stuff needed for copy mode.

Revision 1.15 / (download) - annotate - [select for diffs], Wed Oct 25 12:13:20 2017 UTC (6 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.14: +3 -1 lines
Diff to previous 1.14 (colored)

h/l keys for expand and collapse.

Revision 1.14 / (download) - annotate - [select for diffs], Wed Oct 25 11:26:11 2017 UTC (6 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.13: +4 -4 lines
Diff to previous 1.13 (colored)

Add P key to paste tagged in buffer mode, and trim some code that should
no longer be necessary.

Revision 1.13 / (download) - annotate - [select for diffs], Wed Oct 11 11:26:58 2017 UTC (6 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.12: +6 -4 lines
Diff to previous 1.12 (colored)

Clear to end of line properly with UTF-8 present.

Revision 1.12 / (download) - annotate - [select for diffs], Wed Oct 11 08:08:16 2017 UTC (6 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.11: +3 -1 lines
Diff to previous 1.11 (colored)

Add C-n and C-p keys for tree mode, and choose the right initial line
when no panes.

Revision 1.11 / (download) - annotate - [select for diffs], Fri Sep 8 16:28:41 2017 UTC (6 years, 8 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2
Changes since 1.10: +17 -12 lines
Diff to previous 1.10 (colored)

Fix a few errors in how the selected line is chosen after resize,
reported by Felix Rosencrantz in GitHub issue 1059.

Revision 1.10 / (download) - annotate - [select for diffs], Sun Aug 27 09:08:36 2017 UTC (6 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.9: +10 -1 lines
Diff to previous 1.9 (colored)

Do not allow the current line of screen when the preview is toggled,
from Thomas Adam.

Revision 1.9 / (download) - annotate - [select for diffs], Wed Aug 23 09:39:11 2017 UTC (6 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.8: +18 -8 lines
Diff to previous 1.8 (colored)

Key (v) and flag (-N) to toggle preview in choose modes.

Revision 1.8 / (download) - annotate - [select for diffs], Wed Jul 12 14:31:06 2017 UTC (6 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.7: +2 -2 lines
Diff to previous 1.7 (colored)

Line up keys in tree mode, and don't expand windows with one pane. From
Thomas Adam.

Revision 1.7 / (download) - annotate - [select for diffs], Tue Jul 4 12:26:14 2017 UTC (6 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.6: +4 -3 lines
Diff to previous 1.6 (colored)

Handle 0 size of preview box in caller.

Revision 1.6 / (download) - annotate - [select for diffs], Fri Jun 9 16:01:39 2017 UTC (6 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.5: +61 -13 lines
Diff to previous 1.5 (colored)

Extend filters (f key) to buffer and client mode and add -f flag to
specify to command.

Revision 1.5 / (download) - annotate - [select for diffs], Fri Jun 9 15:29:15 2017 UTC (6 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.4: +14 -3 lines
Diff to previous 1.4 (colored)

Add -O option to choose-* to set initial sort order.

Revision 1.4 / (download) - annotate - [select for diffs], Wed Jun 7 15:27:46 2017 UTC (6 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.3: +2 -2 lines
Diff to previous 1.3 (colored)

Return 1 if name matches not 0, also fix some spaces.

Revision 1.3 / (download) - annotate - [select for diffs], Wed Jun 7 14:37:30 2017 UTC (6 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.2: +144 -15 lines
Diff to previous 1.2 (colored)

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.

Revision 1.2 / (download) - annotate - [select for diffs], Sun Jun 4 15:36:33 2017 UTC (6 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.1: +4 -2 lines
Diff to previous 1.1 (colored)

Do not leak command, from David CARLIER.

Revision 1.1 / (download) - annotate - [select for diffs], Tue May 30 21:44:59 2017 UTC (6 years, 11 months ago) by nicm
Branch: MAIN

Rewrite of choose mode, both to simplify and tidy the code and to add
some modern features.

Now the common code is in mode-tree.c, which provides an API used by the
three modes now separated into window-{buffer,client,tree}.c. Buffer
mode shows buffers, client mode clients and tree mode a tree of
sessions, windows and panes.

Each mode has a common set of key bindings plus a few that are specific
to the mode. Other changes are:

- each mode has a preview pane: for buffers this is the buffer content
  (very useful), for others it is a preview of the pane;

- items may be sorted in different ways ('O' key);

- multiple items may be tagged and an operation applied to all of them
  (for example, to delete multiple buffers at once);

- in tree mode a command may be run on the selected item (session,
  window, pane) or on tagged items (key ':');

- displayed items may be filtered in tree mode by using a format (this
  is used to implement find-window) (key 'f');

- the custom format (-F) for the display is no longer available;

- shortcut keys change from 0-9, a-z, A-Z which was always a bit weird
  with keys used for other uses to 0-9, M-a to M-z.

Now that the code is simpler, other improvements will come later.

Primary key bindings for each mode are documented under the commands in
the man page (choose-buffer, choose-client, choose-tree).

Parts written by Thomas Adam.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.