From 9bd04df662ce125a1414446805f580814b2902d7 Mon Sep 17 00:00:00 2001 From: Jim Warner Date: Wed, 15 Jun 2022 00:00:00 -0500 Subject: [PATCH] top: trade just 1 'Ctrl' bottom window key association <=== port of newlib 9ff5a4ff ______________________________ original newlib message I grew tired of inadvertently causing a premature exit from top when all I wanted was to review some process' environment variables. That 'V' key was just too close to the 'C' key so the '^V' attempt became one of '^C'. Well, not any more. Should a user wish to see a task's environment, it will now require the '^N' combination. [ it also now places G/U & N/K on a similar diagonal ] Along the way, lower case Ctrl key combinations on the help screen were all changed into upper case versions. Signed-off-by: Jim Warner --- top/top.c | 26 +++++++++++++------------- top/top.h | 2 +- top/top_nls.c | 4 ++-- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/top/top.c b/top/top.c index b7a710a2..e85d020b 100644 --- a/top/top.c +++ b/top/top.c @@ -5523,6 +5523,18 @@ static void keys_global (int ch) { Tagged_func = wins_tag_cmdline; } break; + case kbd_CtrlN: + def = w->ppt[w->begtask]->tid; + // if already targeted, assume user wants to turn it off ... + if (Tagged_task && Tagged_lflg == (L_ENVIRON)) { + TAGGED_TOSS; + } else { + Tagged_task = def; + Tagged_lflg = L_ENVIRON; + Tagged_name = "environment"; + Tagged_func = wins_tag_generic; + } + break; case kbd_CtrlU: def = w->ppt[w->begtask]->tid; // if already targeted, assume user wants to turn it off ... @@ -5535,18 +5547,6 @@ static void keys_global (int ch) { Tagged_func = wins_tag_generic; } break; - case kbd_CtrlV: - def = w->ppt[w->begtask]->tid; - // if already targeted, assume user wants to turn it off ... - if (Tagged_task && Tagged_lflg == (L_ENVIRON)) { - TAGGED_TOSS; - } else { - Tagged_task = def; - Tagged_lflg = L_ENVIRON; - Tagged_name = "environment"; - Tagged_func = wins_tag_generic; - } - break; case kbd_ENTER: // these two have the effect of waking us case kbd_SPACE: // from 'pselect', refreshing the display break; // and updating any hot-plugged resources @@ -6360,7 +6360,7 @@ static void do_key (int ch) { { keys_global, { '?', 'B', 'd', 'E', 'e', 'f', 'g', 'H', 'h' , 'I', 'k', 'r', 's', 'X', 'Y', 'Z', '0' - , kbd_CtrlE, kbd_CtrlG, kbd_CtrlK, kbd_CtrlU, kbd_CtrlV + , kbd_CtrlE, kbd_CtrlG, kbd_CtrlK, kbd_CtrlN, kbd_CtrlU , kbd_ENTER, kbd_SPACE, '\0' } }, { keys_summary, { '!', '1', '2', '3', '4', 'C', 'l', 'm', 't', '\0' } }, diff --git a/top/top.h b/top/top.h index 482e4367..3de0822d 100644 --- a/top/top.h +++ b/top/top.h @@ -185,9 +185,9 @@ char *strcasestr(const char *haystack, const char *needle); #define kbd_CtrlE '\005' #define kbd_CtrlG '\007' #define kbd_CtrlK '\013' +#define kbd_CtrlN '\016' #define kbd_CtrlO '\017' #define kbd_CtrlU '\025' -#define kbd_CtrlV '\026' /* Special value in Pseudo_row to force an additional procs refresh -- used at startup and for task/thread mode transitions */ diff --git a/top/top_nls.c b/top/top_nls.c index 2d07b70a..b835878d 100644 --- a/top/top_nls.c +++ b/top/top_nls.c @@ -590,8 +590,8 @@ static void build_uniq_nlstab (void) { " V,v,F . Toggle: '~1V~2' forest view; '~1v~2' hide/show children; '~1F~2' keep focused\n" "\n" "%s" - " ^G,K,U,V View: ctl groups ~1^g~2; cmdline ~1^k~2; supp groups ~1^u~2; environment ~1^v~2\n" - " W,Y,!,^E Write cfg '~1W~2'; Inspect '~1Y~2'; Combine Cpus '~1!~2'; Scale time ~1^e~2'\n" + " ^G,K,N,U View: ctl groups ~1^G~2; cmdline ~1^K~2; environment ~1^N~2; supp groups ~1^U~2\n" + " W,Y,!,^E Write cfg '~1W~2'; Inspect '~1Y~2'; Combine Cpus '~1!~2'; Scale time ~1^E~2'\n" " q Quit\n" " ( commands shown with '.' require a ~1visible~2 task display ~1window~2 ) \n" "Press '~1h~2' or '~1?~2' for help with ~1Windows~2,\n"