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

pull/2219/head
nicm 2020-05-16 15:46:01 +00:00
parent cf9baddd6f
commit 4de0bd4c5c
2 changed files with 15 additions and 1 deletions

View File

@ -887,7 +887,7 @@ mode_tree_key(struct mode_tree_data *mtd, struct client *c, key_code *key,
struct mouse_event *m, u_int *xp, u_int *yp)
{
struct mode_tree_line *line;
struct mode_tree_item *current, *parent;
struct mode_tree_item *current, *parent, *mti;
u_int i, x, y;
int choice;
key_code tmp;
@ -1058,6 +1058,16 @@ mode_tree_key(struct mode_tree_data *mtd, struct client *c, key_code *key,
mode_tree_build(mtd);
}
break;
case '-'|KEYC_ESCAPE:
TAILQ_FOREACH(mti, &mtd->children, entry)
mti->expanded = 0;
mode_tree_build(mtd);
break;
case '+'|KEYC_ESCAPE:
TAILQ_FOREACH(mti, &mtd->children, entry)
mti->expanded = 1;
mode_tree_build(mtd);
break;
case '?':
case '/':
case '\023': /* C-s */

4
tmux.1
View File

@ -1903,6 +1903,10 @@ The following keys may be used in tree mode:
.It Li "Enter" Ta "Choose selected item"
.It Li "Up" Ta "Select previous item"
.It Li "Down" Ta "Select next item"
.It Li "+" Ta "Expand selected item"
.It Li "-" Ta "Collapse selected item"
.It Li "M-+" Ta "Expand all items"
.It Li "M--" Ta "Collapse all items"
.It Li "x" Ta "Kill selected item"
.It Li "X" Ta "Kill tagged items"
.It Li "<" Ta "Scroll list of previews left"