From 1c9ab8bf16476e1c2efd06039f3fb9f284b0c7b1 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg Date: Sun, 24 Jul 2016 21:49:07 +0200 Subject: [PATCH] tweaks: rename a struct element, to be more fitting The keycode is not a sequence; it is a single integer value. --- src/global.c | 42 +++++++++++++++++++++--------------------- src/nano.h | 6 +++--- src/rcfile.c | 4 ++-- src/winio.c | 6 +++--- 4 files changed, 29 insertions(+), 29 deletions(-) diff --git a/src/global.c b/src/global.c index ab7e689d..3ddfc9a2 100644 --- a/src/global.c +++ b/src/global.c @@ -342,7 +342,7 @@ void add_to_sclist(int menus, const char *scstring, void (*func)(void), int togg assign_keyinfo(s, scstring); #ifdef DEBUG - fprintf(stderr, "Setting sequence to %d for shortcut \"%s\" in menus %x\n", s->seq, scstring, s->menus); + fprintf(stderr, "Setting keycode to %d for shortcut \"%s\" in menus %x\n", s->keycode, scstring, s->menus); #endif } @@ -381,7 +381,7 @@ int sc_seq_or(void (*func)(void), int defaultval) if (s) { meta_key = s->meta; - return s->seq; + return s->keycode; } /* else */ return defaultval; @@ -406,51 +406,51 @@ void assign_keyinfo(sc *s, const char *keystring) if (s->keystr[0] == '^') { assert(strlen(s->keystr) > 1); - s->seq = s->keystr[1] - 64; + s->keycode = s->keystr[1] - 64; } else if (s->meta) { assert(strlen(s->keystr) > 2); - s->seq = tolower((int) s->keystr[2]); + s->keycode = tolower((int) s->keystr[2]); } else if (s->keystr[0] == 'F') { assert(strlen(s->keystr) > 1); - s->seq = KEY_F0 + atoi(&s->keystr[1]); + s->keycode = KEY_F0 + atoi(&s->keystr[1]); } else /* RAWINPUT */ - s->seq = (int) s->keystr[0]; + s->keycode = (int) s->keystr[0]; /* Override some keys which don't bind as easily as we'd like. */ if (strcasecmp(s->keystr, "^Space") == 0) - s->seq = 0; + s->keycode = 0; else if (strcasecmp(s->keystr, "M-Space") == 0) - s->seq = (int) ' '; + s->keycode = (int) ' '; else { if (!strcasecmp(s->keystr, "Up")) - s->seq = KEY_UP; + s->keycode = KEY_UP; else if (!strcasecmp(s->keystr, "Down")) - s->seq = KEY_DOWN; + s->keycode = KEY_DOWN; else if (!strcasecmp(s->keystr, "Left")) - s->seq = KEY_LEFT; + s->keycode = KEY_LEFT; else if (!strcasecmp(s->keystr, "Right")) - s->seq = KEY_RIGHT; + s->keycode = KEY_RIGHT; else if (!strcasecmp(s->keystr, "Ins")) - s->seq = KEY_IC; + s->keycode = KEY_IC; else if (!strcasecmp(s->keystr, "Del")) - s->seq = KEY_DC; + s->keycode = KEY_DC; else if (!strcasecmp(s->keystr, "Bsp")) - s->seq = KEY_BACKSPACE; + s->keycode = KEY_BACKSPACE; /* The Tab and Enter keys don't actually produce special codes * but the exact integer values of ^I and ^M. Rebinding the * latter therefore also rebinds Tab and Enter. */ else if (!strcasecmp(s->keystr, "Tab")) - s->seq = NANO_CONTROL_I; + s->keycode = NANO_CONTROL_I; else if (!strcasecmp(s->keystr, "Enter")) - s->seq = KEY_ENTER; + s->keycode = KEY_ENTER; else if (!strcasecmp(s->keystr, "PgUp")) - s->seq = KEY_PPAGE; + s->keycode = KEY_PPAGE; else if (!strcasecmp(s->keystr, "PgDn")) - s->seq = KEY_NPAGE; + s->keycode = KEY_NPAGE; else if (!strcasecmp(s->keystr, "Home")) - s->seq = KEY_HOME; + s->keycode = KEY_HOME; else if (!strcasecmp(s->keystr, "End")) - s->seq = KEY_END; + s->keycode = KEY_END; } } diff --git a/src/nano.h b/src/nano.h index da5b278d..3fb3236b 100644 --- a/src/nano.h +++ b/src/nano.h @@ -436,11 +436,11 @@ typedef struct rcoption { typedef struct sc { char *keystr; - /* The shortcut key for a function, ASCII version. */ + /* The string that describes a keystroke, like "^C" or "M-R". */ bool meta; /* Whether this is a Meta keystroke. */ - int seq; - /* The actual sequence to check once the type is determined. */ + int keycode; + /* The integer that, together with meta, identifies the keystroke. */ int menus; /* Which menus this applies to. */ void (*scfunc)(void); diff --git a/src/rcfile.c b/src/rcfile.c index 441ffcac..c900cb96 100644 --- a/src/rcfile.c +++ b/src/rcfile.c @@ -474,14 +474,14 @@ void parse_binding(char *ptr, bool dobind) assign_keyinfo(newsc, keycopy); /* Do not allow rebinding a frequent escape-sequence starter: Esc [. */ - if (newsc->meta && newsc->seq == 91) { + if (newsc->meta && newsc->keycode == 91) { rcfile_error(N_("Sorry, keystroke \"%s\" may not be rebound"), newsc->keystr); free(newsc); goto free_copy; } #ifdef DEBUG fprintf(stderr, "s->keystr = \"%s\"\n", newsc->keystr); - fprintf(stderr, "s->seq = \"%d\"\n", newsc->seq); + fprintf(stderr, "s->keycode = \"%d\"\n", newsc->keycode); #endif } diff --git a/src/winio.c b/src/winio.c index b8f034ae..81e4f97d 100644 --- a/src/winio.c +++ b/src/winio.c @@ -591,7 +591,7 @@ int parse_kbinput(WINDOW *win) #endif /* Slang doesn't support KEY_CANCEL. */ case KEY_CANCEL: - retval = first_sc_for(currmenu, do_cancel)->seq; + retval = first_sc_for(currmenu, do_cancel)->keycode; break; #endif #ifdef KEY_SUSPEND @@ -1558,7 +1558,7 @@ int get_mouseinput(int *mouse_x, int *mouse_y, bool allow_shortcuts) /* And put the corresponding key into the keyboard buffer. */ if (f != NULL) { const sc *s = first_sc_for(currmenu, f->scfunc); - unget_kbinput(s->seq, s->meta); + unget_kbinput(s->keycode, s->meta); } return 1; } else @@ -1616,7 +1616,7 @@ const sc *get_shortcut(int *kbinput) #endif for (s = sclist; s != NULL; s = s->next) { - if ((s->menus & currmenu) && *kbinput == s->seq && + if ((s->menus & currmenu) && *kbinput == s->keycode && meta_key == s->meta) { #ifdef DEBUG fprintf (stderr, "matched seq '%s' (menu is %x from %x)\n",