diff options
| author | 2020-01-11 18:23:46 +0530 | |
|---|---|---|
| committer | 2020-01-11 18:23:46 +0530 | |
| commit | 490359f853a2c04daa11d081afa1e7090579a52e (patch) | |
| tree | 0055de4cca7c285a3a7ce9e46f89ceec4a79deb9 | |
| parent | 70dcbf43d786da63598ad1080c518e4c44baa7bd (diff) | |
| download | nnn-490359f853a2c04daa11d081afa1e7090579a52e.tar.gz | |
nuke: open manpages, reload dir after dot
| -rwxr-xr-x | plugins/nuke | 5 | ||||
| -rw-r--r-- | src/nnn.c | 8 |
2 files changed, 11 insertions, 2 deletions
diff --git a/plugins/nuke b/plugins/nuke index 8883034..6f08527 100755 --- a/plugins/nuke +++ b/plugins/nuke @@ -371,6 +371,11 @@ handle_multimedia() { handle_mime() { mimetype="${1}" case "${mimetype}" in + ## Manpages + text/troff) + man -l "${FPATH}" + exit 0;; + ## Text text/* | */xml) vi "${FPATH}" @@ -4653,6 +4653,7 @@ nochange: cfg.runplugin = 0; /* Must be in plugin dir and same context to select plugin */ if ((cfg.runctx == cfg.curctx) && !strcmp(path, plugindir)) { + endselection(); /* Copy path so we can return back to earlier dir */ xstrlcpy(path, rundir, PATH_MAX); rundir[0] = '\0'; @@ -4908,9 +4909,12 @@ nochange: break; case SEL_TOGGLEDOT: cfg.showhidden ^= 1; + if (ndents) + copycurname(); if (cfg.filtermode) presel = FILTER; - break; + clearfilter(); + goto begin; case SEL_DETAIL: cfg.showdetail ^= 1; cfg.showdetail ? (printptr = &printent_long) : (printptr = &printent); @@ -4973,7 +4977,6 @@ nochange: break; } - /* Save current */ if (ndents) copycurname(); @@ -5410,6 +5413,7 @@ nochange: } if (sel == SEL_PLUGKEY) { + endselection(); r = xstrlcpy(g_buf, messages[MSG_PLUGIN_KEYS], CMD_LEN_MAX); printkeys(plug, g_buf + r - 1, PLUGIN_MAX); printprompt(g_buf); |