mirror of
https://github.com/jarun/nnn.git
synced 2024-11-28 13:51:31 +00:00
The shell interprets "$nnn" now
This commit is contained in:
parent
d34741107a
commit
fa7cef2df7
11
nnn.1
11
nnn.1
|
@ -391,20 +391,19 @@ separated by \fI;\fR:
|
||||||
|
|
||||||
NOTES:
|
NOTES:
|
||||||
1. Use single quotes for $NNN_PLUG so $nnn is not interpreted
|
1. Use single quotes for $NNN_PLUG so $nnn is not interpreted
|
||||||
2. $nnn should be the last argument (IF used)
|
2. (Again) add \fB!\fR before the command
|
||||||
3. (Again) add \fB!\fR before the command
|
3. To disable directory refresh after running a \fIcommand as plugin\fR,
|
||||||
4. To disable directory refresh after running a \fIcommand as plugin\fR,
|
|
||||||
prefix with \fB-!\fR
|
prefix with \fB-!\fR
|
||||||
5. To skip user confirmation after command execution, suffix with \fB*\fR
|
4. To skip user confirmation after command execution, suffix with \fB*\fR
|
||||||
Note: Do not use \fB*\fR with programs those run and exit e.g. cat
|
Note: Do not use \fB*\fR with programs those run and exit e.g. cat
|
||||||
|
|
||||||
export NNN_PLUG='y:-!sync*'
|
export NNN_PLUG='y:-!sync*'
|
||||||
|
|
||||||
6. To run a \fIGUI app as plugin\fR, add a \fB&\fR after \fB!\fR
|
5. To run a \fIGUI app as plugin\fR, add a \fB&\fR after \fB!\fR
|
||||||
|
|
||||||
export NNN_PLUG='m:-!&mousepad $nnn'
|
export NNN_PLUG='m:-!&mousepad $nnn'
|
||||||
|
|
||||||
7. To show the output of run-and-exit commands which do not need user input,
|
6. To show the output of run-and-exit commands which do not need user input,
|
||||||
add \fB|\fR (pipe) after \fB!\fR
|
add \fB|\fR (pipe) after \fB!\fR
|
||||||
Note: This option is incompatible with \fB&\fR (terminal output is masked
|
Note: This option is incompatible with \fB&\fR (terminal output is masked
|
||||||
for GUI programs) and ignores \fB*\fR (output is already paged for user)
|
for GUI programs) and ignores \fB*\fR (output is already paged for user)
|
||||||
|
|
|
@ -178,9 +178,8 @@ This option is incompatible with `&` (terminal output is masked for GUI programs
|
||||||
Notes:
|
Notes:
|
||||||
|
|
||||||
1. Use single quotes for `$NNN_PLUG` so `$nnn` is not interpreted
|
1. Use single quotes for `$NNN_PLUG` so `$nnn` is not interpreted
|
||||||
2. `$nnn` should be the last argument (IF used)
|
2. (_Again_) add `!` before the command
|
||||||
3. (_Again_) add `!` before the command
|
3. To disable directory refresh after running a _command as plugin_, prefix with `-!`
|
||||||
4. To disable directory refresh after running a _command as plugin_, prefix with `-!`
|
|
||||||
|
|
||||||
#### Some useful key-command examples
|
#### Some useful key-command examples
|
||||||
|
|
||||||
|
|
15
src/nnn.c
15
src/nnn.c
|
@ -5076,7 +5076,7 @@ static void setexports(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool run_cmd_as_plugin(const char *file, char *runfile, uchar_t flags)
|
static bool run_cmd_as_plugin(const char *file, uchar_t flags)
|
||||||
{
|
{
|
||||||
size_t len;
|
size_t len;
|
||||||
|
|
||||||
|
@ -5089,15 +5089,10 @@ static bool run_cmd_as_plugin(const char *file, char *runfile, uchar_t flags)
|
||||||
--len;
|
--len;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_suffix(g_buf, " $nnn"))
|
|
||||||
g_buf[len - 5] = '\0'; /* Set `\0` to clear ' $nnn' suffix */
|
|
||||||
else
|
|
||||||
runfile = NULL;
|
|
||||||
|
|
||||||
if (flags & F_PAGE)
|
if (flags & F_PAGE)
|
||||||
get_output(g_buf, runfile, NULL, -1, TRUE, TRUE);
|
get_output(g_buf, NULL, NULL, -1, TRUE, TRUE);
|
||||||
else
|
else
|
||||||
spawn(g_buf, runfile, NULL, NULL, flags);
|
spawn(g_buf, NULL, NULL, NULL, flags);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -5230,7 +5225,7 @@ static bool run_plugin(char **path, const char *file, char *runfile, char **last
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
if ((flags & F_NOTRACE) || (flags & F_PAGE))
|
if ((flags & F_NOTRACE) || (flags & F_PAGE))
|
||||||
return run_cmd_as_plugin(file, runfile, flags);
|
return run_cmd_as_plugin(file, flags);
|
||||||
|
|
||||||
cmd_as_plugin = TRUE;
|
cmd_as_plugin = TRUE;
|
||||||
}
|
}
|
||||||
|
@ -5264,7 +5259,7 @@ static bool run_plugin(char **path, const char *file, char *runfile, char **last
|
||||||
} else
|
} else
|
||||||
spawn(g_buf, NULL, *path, sel, 0);
|
spawn(g_buf, NULL, *path, sel, 0);
|
||||||
} else
|
} else
|
||||||
run_cmd_as_plugin(file, runfile, flags);
|
run_cmd_as_plugin(file, flags);
|
||||||
|
|
||||||
close(wfd);
|
close(wfd);
|
||||||
_exit(EXIT_SUCCESS);
|
_exit(EXIT_SUCCESS);
|
||||||
|
|
Loading…
Reference in a new issue