@@ -182,7 +182,7 @@ Right, Enter, l, ^M | Open file or enter dir | |||||
p | Open entry in PAGER (fallback less) | p | Open entry in PAGER (fallback less) | ||||
^K | Invoke file path copier | ^K | Invoke file path copier | ||||
^L | Force a redraw, exit filter prompt | ^L | Force a redraw, exit filter prompt | ||||
? | Toggle help screen | |||||
? | Toggle help and settings screen | |||||
Q | Quit and change directory | Q | Quit and change directory | ||||
q, ^Q | Quit | q, ^Q | Quit | ||||
``` | ``` | ||||
@@ -88,7 +88,7 @@ Invoke file path copier | |||||
.It Ic ^L | .It Ic ^L | ||||
Force a redraw, exit filter prompt | Force a redraw, exit filter prompt | ||||
.It Ic \&? | .It Ic \&? | ||||
Toggle help screen | |||||
Toggle help and settings screen | |||||
.It Ic Q | .It Ic Q | ||||
Quit and change directory | Quit and change directory | ||||
.It Ic q, ^Q | .It Ic q, ^Q | ||||
@@ -129,6 +129,9 @@ at: | |||||
.br | .br | ||||
.Em https://github.com/jarun/nnn/wiki/all-about-nlay | .Em https://github.com/jarun/nnn/wiki/all-about-nlay | ||||
.Pp | .Pp | ||||
There is no configuration file. Settings work on environment variables. Please | |||||
refer to the ENVIRONMENT section below. | |||||
.Pp | |||||
Configuring | Configuring | ||||
.Nm | .Nm | ||||
to change to the last visited directory on quit requires shell integration in a | to change to the last visited directory on quit requires shell integration in a | ||||
@@ -158,18 +161,18 @@ allowing continuous navigation. Works best with the \fBarrow keys\fR. | |||||
The SHELL, EDITOR and PAGER environment variables take precedence | The SHELL, EDITOR and PAGER environment variables take precedence | ||||
when dealing with the !, e and p commands respectively. | when dealing with the !, e and p commands respectively. | ||||
.Pp | .Pp | ||||
\fBNNN_USE_EDITOR:\fR use EDITOR (preferably CLI, fallback vi) to handle text | |||||
files. | |||||
.Bd -literal | |||||
export NNN_USE_EDITOR=1 | |||||
.Ed | |||||
.Pp | |||||
\fBNNN_BMS:\fR bookmark string as \fIkey:location\fR pairs (max 10) separated by | \fBNNN_BMS:\fR bookmark string as \fIkey:location\fR pairs (max 10) separated by | ||||
\fI;\fR: | \fI;\fR: | ||||
.Bd -literal | .Bd -literal | ||||
export NNN_BMS='doc:~/Documents;u:/home/user/Cam Uploads;D:~/Downloads/' | export NNN_BMS='doc:~/Documents;u:/home/user/Cam Uploads;D:~/Downloads/' | ||||
.Ed | .Ed | ||||
.Pp | .Pp | ||||
\fBNNN_USE_EDITOR:\fR use EDITOR (preferably CLI, fallback vi) to handle text | |||||
files. | |||||
.Bd -literal | |||||
export NNN_USE_EDITOR=1 | |||||
.Ed | |||||
.Pp | |||||
\fBNNN_DE_FILE_MANAGER:\fR set to a desktop file manager to open the current | \fBNNN_DE_FILE_MANAGER:\fR set to a desktop file manager to open the current | ||||
directory with. E.g.: | directory with. E.g.: | ||||
.Bd -literal | .Bd -literal | ||||
@@ -1311,7 +1311,12 @@ show_mediainfo(char* fpath, char *arg) | |||||
static int | static int | ||||
show_help(void) | show_help(void) | ||||
{ | { | ||||
static char helpstr[] = ("echo \"\ | |||||
char tmp[] = "/tmp/nnnXXXXXX"; | |||||
int fd = mkstemp(tmp); | |||||
if (fd == -1) | |||||
return -1; | |||||
static char helpstr[] = ("\ | |||||
Key | Function\n\ | Key | Function\n\ | ||||
-+-\n\ | -+-\n\ | ||||
Up, k, ^P | Previous entry\n\ | Up, k, ^P | Previous entry\n\ | ||||
@@ -1344,11 +1349,40 @@ show_help(void) | |||||
p | Open entry in PAGER (fallback less)\n\ | p | Open entry in PAGER (fallback less)\n\ | ||||
^K | Invoke file path copier\n\ | ^K | Invoke file path copier\n\ | ||||
^L | Force a redraw, exit filter prompt\n\ | ^L | Force a redraw, exit filter prompt\n\ | ||||
? | Toggle help screen\n\ | |||||
? | Toggle help and settings screen\n\ | |||||
Q | Quit and change directory\n\ | Q | Quit and change directory\n\ | ||||
q, ^Q | Quit\n\n\" | less"); | |||||
q, ^Q | Quit\n\n\n"); | |||||
dprintf(fd, "%s", helpstr); | |||||
if (getenv("NNN_BMS")) { | |||||
dprintf(fd, "BOOKMARKS\n"); | |||||
for (int i = 0; i < MAX_BM; i++) | |||||
if (bookmark[i].key) | |||||
dprintf(fd, " %s: %s\n", bookmark[i].key, bookmark[i].loc); | |||||
else | |||||
break; | |||||
dprintf(fd, "\n"); | |||||
} | |||||
if (editor) | |||||
dprintf(fd, "NNN_USE_EDITOR: %s\n", editor); | |||||
if (desktop_manager) | |||||
dprintf(fd, "NNN_DE_FILE_MANAGER: %s\n", desktop_manager); | |||||
if (idletimeout) | |||||
dprintf(fd, "NNN_IDLE_TIMEOUT: %d secs\n", idletimeout); | |||||
if (copier) | |||||
dprintf(fd, "NNN_COPIER: %s\n", copier); | |||||
return system(helpstr); | |||||
dprintf(fd, "\n"); | |||||
close(fd); | |||||
get_output(NULL, 0, "cat", tmp, NULL, 1); | |||||
unlink(tmp); | |||||
return 0; | |||||
} | } | ||||
static int | static int | ||||
@@ -2285,6 +2319,11 @@ main(int argc, char *argv[]) | |||||
showhidden = 1; | showhidden = 1; | ||||
initfilter(showhidden, &ifilter); | initfilter(showhidden, &ifilter); | ||||
/* Parse bookmarks string, if available */ | |||||
char *bms = getenv("NNN_BMS"); | |||||
if (bms) | |||||
parsebmstr(bms); | |||||
/* Edit text in EDITOR, if opted */ | /* Edit text in EDITOR, if opted */ | ||||
if (getenv("NNN_USE_EDITOR")) | if (getenv("NNN_USE_EDITOR")) | ||||
editor = xgetenv("EDITOR", "vi"); | editor = xgetenv("EDITOR", "vi"); | ||||
@@ -2304,11 +2343,6 @@ main(int argc, char *argv[]) | |||||
/* Get the default copier, if set */ | /* Get the default copier, if set */ | ||||
copier = getenv("NNN_COPIER"); | copier = getenv("NNN_COPIER"); | ||||
/* Parse bookmarks string, if available */ | |||||
char *bms = getenv("NNN_BMS"); | |||||
if (bms) | |||||
parsebmstr(bms); | |||||
signal(SIGINT, SIG_IGN); | signal(SIGINT, SIG_IGN); | ||||
/* Test initial path */ | /* Test initial path */ | ||||