Key N to switch to context N

This commit is contained in:
Arun Prakash Jana 2019-01-19 13:09:46 +05:30
parent 5e4810b382
commit 5f581ff20a
No known key found for this signature in database
GPG Key ID: A75979F35C080412
4 changed files with 22 additions and 7 deletions

View File

@ -216,7 +216,7 @@ Press <kbd>?</kbd> in `nnn` to see the list anytime.
/ Filter Ins, ^T Toggle nav-as-you-type
b Pin current dir ^W Go to pinned dir
Tab, ^I Next context d Toggle detail view
`, ^/ Leader key LeaderN Go to/create context N
`, ^/ Leader key N, LeadN Go to/create context N
Esc Exit prompt ^L Redraw/clear prompt
^G Quit and cd q Quit context
Q, ^Q Quit ? Help, config

2
nnn.1
View File

@ -67,7 +67,7 @@ Toggle detail view
Next context, ask to create if none
.It Ic `, ^/
Leader key
.It Ic LeaderN
.It Ic N, LeaderN
Switch to context N
.It Ic Esc
Exit prompt

View File

@ -2100,7 +2100,7 @@ static bool show_help(char *path)
"e/ Filter Ins, ^T Toggle nav-as-you-type\n"
"eb Pin current dir ^W Go to pinned dir\n"
"8Tab, ^I Next context d Toggle detail view\n"
"a`, ^/ Leader key LeaderN Go to/create context N\n"
"a`, ^/ Leader key N, LeadN Go to/create context N\n"
"cEsc Exit prompt ^L Redraw/clear prompt\n"
"d^G Quit and cd q Quit context\n"
"aQ, ^Q Quit ? Help, config\n"
@ -2874,9 +2874,15 @@ nochange:
setdirwatch();
goto begin;
case SEL_LEADER: // fallthrough
case SEL_CYCLE:
case SEL_CYCLE: // fallthrough
case SEL_CTX1: // fallthrough
case SEL_CTX2: // fallthrough
case SEL_CTX3: // fallthrough
case SEL_CTX4:
if (sel == SEL_CYCLE)
fd = '>';
else if (sel >= SEL_CTX1 && sel <= SEL_CTX4)
fd = sel - SEL_CTX1 + '1';
else
fd = get_input(NULL);
@ -2887,9 +2893,9 @@ nochange:
case '&':
presel = fd;
goto nochange;
case '>':
case '.':
case '<':
case '>': // fallthrough
case '.': // fallthrough
case '<': // fallthrough
case ',':
r = cfg.curctx;
if (fd == '>' || fd == '.')

View File

@ -50,6 +50,10 @@ enum action {
SEL_CDLAST,
SEL_LEADER,
SEL_CYCLE,
SEL_CTX1,
SEL_CTX2,
SEL_CTX3,
SEL_CTX4,
SEL_PIN,
SEL_VISIT,
SEL_FLTR,
@ -145,6 +149,11 @@ static struct key bindings[] = {
/* Cycle contexts in forward direction */
{ '\t', SEL_CYCLE },
{ CONTROL('I'), SEL_CYCLE },
/* Go to/create context N */
{ '1', SEL_CTX1 },
{ '2', SEL_CTX2 },
{ '3', SEL_CTX3 },
{ '4', SEL_CTX4 },
/* Mark a path to visit later */
{ 'b', SEL_PIN },
/* Visit marked directory */