diff --git a/nnn.1 b/nnn.1 index ed1d7eb8..2e65d7df 100644 --- a/nnn.1 +++ b/nnn.1 @@ -363,6 +363,9 @@ There are 2 ways (can be used together) to manage bookmarks. On entering a bookmark, the directory where the select bookmark key was pressed is set as the previous directory. Press '-' to return to it. .Pp +When \fINNN_BMS\fR` is not set, it's possible to return to the previous directory +from the bookmarks directory using the select bookmark key. +.Pp .Sh UNITS The minimum file size unit is byte (B). The rest are K, M, G, T, P, E, Z, Y (powers of 1024), same as the default units in \fIls\fR. diff --git a/src/nnn.c b/src/nnn.c index 78891bc5..0a291251 100644 --- a/src/nnn.c +++ b/src/nnn.c @@ -7142,8 +7142,13 @@ nochange: goto nochange; } - if (strcmp(path, newpath) == 0) - break; + if (strcmp(path, newpath) == 0) { + if (bookmark) + break; + + dir = lastdir; /* Go to last dir on bookmark key repeat */ + xstrsncpy(newpath, dir, PATH_MAX); + } } /* In list mode, retain the last file name to highlight it, if possible */