X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=keymap.c;h=2c5bebedfded872fc2e4d183a2a20518d6511e7d;hp=e80e5a30d5e975e50d90692dea737c6841bf5751;hb=61c6367b9a56cf1b8180debf8a77af7300407504;hpb=230399f9632c37b66c1c117a17e8327eae6b3235 diff --git a/keymap.c b/keymap.c index e80e5a3..2c5bebe 100644 --- a/keymap.c +++ b/keymap.c @@ -7,10 +7,6 @@ * please see the file GPL in the top level source directory. */ -#if HAVE_CONFIG_H -# include "config.h" -#endif - #include #include @@ -20,11 +16,6 @@ #include "keymap.h" #include - -#include -#include -#include - #define MUTT_FUNCTIONS_VALUES #include "functions.def" @@ -45,19 +36,12 @@ struct mapping_t Menus[] = { {"key_select_smime", MENU_KEY_SELECT_SMIME}, #endif - -#ifdef MIXMASTER {"mix", MENU_MIX}, -#endif - - {"query", MENU_QUERY}, {"generic", MENU_GENERIC}, {NULL, 0} }; -#define mutt_check_menu(s) mutt_getvaluebyname(s, Menus) - static struct mapping_t KeyNames[] = { {"", KEY_PPAGE}, {"", KEY_NPAGE}, @@ -103,21 +87,13 @@ static struct keymap_t *allocKeys(int len, keycode_t *keys) static int parse_fkey (const char *s) { - const char *t; int n = 0; - if (s[0] != '<' || ascii_tolower (s[1]) != 'f') + if (s[0] != '<' || ascii_tolower(s[1]) != 'f') return -1; - for (t = s + 2; *t && isdigit ((unsigned char) *t); t++) { - n *= 10; - n += *t - '0'; - } - - if (*t != '>') - return -1; - else - return n; + n = strtol(s + 2, (char **)&s, 10); + return *s == '>' ? n : -1; } /* @@ -126,12 +102,12 @@ static int parse_fkey (const char *s) */ static int parse_keycode (const char *s) { - if (isdigit ((unsigned char) s[1]) && - isdigit ((unsigned char) s[2]) && - isdigit ((unsigned char) s[3]) && s[4] == '>') { - return (s[3] - '0') + (s[2] - '0') * 8 + (s[1] - '0') * 64; - } - return -1; + int n; + + if (*s != '<') + return -1; + n = strtol(s + 1, (char **)&s, 8); + return *s == '>' ? n : -1; } static int parsekeys (const char *str, keycode_t * d, int max) @@ -523,8 +499,6 @@ void km_init (void) create_bindings (OpPost, MENU_POST); create_bindings (OpQuery, MENU_QUERY); create_bindings (OpAlias, MENU_ALIAS); - - create_bindings (OpPgp, MENU_PGP); create_bindings (OpSmime, MENU_SMIME); @@ -533,13 +507,11 @@ void km_init (void) create_bindings (OpSmime, MENU_KEY_SELECT_SMIME); #endif -#ifdef MIXMASTER create_bindings (OpMix, MENU_MIX); km_bindkey ("", MENU_MIX, OP_GENERIC_SELECT_ENTRY); km_bindkey ("h", MENU_MIX, OP_MIX_CHAIN_PREV); km_bindkey ("l", MENU_MIX, OP_MIX_CHAIN_NEXT); -#endif /* bindings for the line editor */ create_bindings (OpEditor, MENU_EDITOR); @@ -682,7 +654,7 @@ static char *parse_keymap (int *menu, BUFFER * s, int maxmenus, int *nummenus, if (q) *q = '\0'; - if ((menu[i] = mutt_check_menu (p)) == -1) { + if ((menu[i] = mutt_getvaluebyname(p, Menus)) == -1) { snprintf (err->data, err->dsize, _("%s: no such menu"), p); goto error; } @@ -746,7 +718,6 @@ struct binding_t *km_get_table (int menu) return OpEditor; case MENU_QUERY: return OpQuery; - case MENU_PGP: return OpPgp; @@ -757,11 +728,8 @@ struct binding_t *km_get_table (int menu) return OpSmime; #endif -#ifdef MIXMASTER case MENU_MIX: return OpMix; -#endif - } return NULL; }