nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit bdd8920081974d72f71fe421acee5deb7f9d4c1c
parent ae9ec6d4ad801bb1122fc77764decca8cdd5cab3
Author: Benno Schulenberg <bensberg@telfort.nl>
Date:   Thu,  1 Mar 2018 10:55:04 +0100

bindings: make a key defined as string work also in browser and viewer

Diffstat:
Msrc/browser.c | 4++++
Msrc/help.c | 4++++
Msrc/rcfile.c | 2+-
3 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/browser.c b/src/browser.c @@ -303,6 +303,10 @@ char *do_browser(char *path) /* Try opening and reading the selected directory. */ path = mallocstrcpy(path, filelist[selected]); goto read_directory_contents; +#ifdef ENABLE_NANORC + } else if (func == (void *)implant) { + implant(first_sc_for(MBROWSER, func)->expansion); +#endif } else if (func == do_exit) { /* Exit from the file browser. */ break; diff --git a/src/help.c b/src/help.c @@ -215,6 +215,10 @@ void do_help(void) do_findprevious(); } else if (func == do_findnext) { do_findnext(); +#ifdef ENABLE_NANORC + } else if (func == (void *)implant) { + implant(first_sc_for(MHELP, func)->expansion); +#endif } else if (kbinput == KEY_WINCH) { ; /* Nothing to do. */ #endif diff --git a/src/rcfile.c b/src/rcfile.c @@ -458,7 +458,7 @@ void parse_binding(char *ptr, bool dobind) /* Now limit the given menu to those where the function exists. */ if (is_universal(newsc->func)) - menu = menu & MMOST; + menu = menu & (MMOST | (newsc->func == (void *)implant ? MHELP : 0)); else menu = menu & mask;