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

master
Benno Schulenberg 2018-03-01 10:55:04 +01:00
parent ae9ec6d4ad
commit bdd8920081
3 changed files with 9 additions and 1 deletions

View File

@ -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;

View File

@ -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

View File

@ -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;