X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=help.c;h=30bcbde56e879e7f88270a594cfa40f476ae2ccb;hp=ea694c337c204fce88d5f09d6fa4ddd4a5655dfb;hb=049b21f53af51ad7259613f5eefaa0f37b1b2167;hpb=ad303d5eab5c92f9546cc9d3703a24534d6bb5e0 diff --git a/help.c b/help.c index ea694c3..30bcbde 100644 --- a/help.c +++ b/help.c @@ -11,7 +11,7 @@ #include -#include +#include #include "mutt.h" #include "charset.h" @@ -27,48 +27,16 @@ static struct binding_t *help_lookupFunction (int op, int menu) /* first look in the generic map for the function */ for (i = 0; OpGeneric[i].name; i++) if (OpGeneric[i].op == op) - return (&OpGeneric[i]); + return &OpGeneric[i]; } if ((map = km_get_table (menu))) { for (i = 0; map[i].name; i++) if (map[i].op == op) - return (&map[i]); + return &map[i]; } - return (NULL); -} - -void mutt_make_help (char *d, ssize_t dlen, const char *txt, int menu, int op) -{ - char buf[STRING]; - - if (km_expand_key (buf, sizeof (buf), km_find_func (menu, op)) || - km_expand_key (buf, sizeof (buf), km_find_func (MENU_GENERIC, op))) - snprintf (d, dlen, "%s:%s", buf, txt); - else - d[0] = 0; -} - -char *mutt_compile_help (char *buf, ssize_t buflen, int menu, - struct mapping_t *items) -{ - int i; - ssize_t len; - char *pbuf = buf; - - for (i = 0; items[i].name && buflen > 2; i++) { - if (i) { - *pbuf++ = ' '; - *pbuf++ = ' '; - buflen -= 2; - } - mutt_make_help (pbuf, buflen, _(items[i].name), menu, items[i].value); - len = m_strlen(pbuf); - pbuf += len; - buflen -= len; - } - return buf; + return NULL; } static int print_macro (FILE * f, int maxwidth, const char **macro) @@ -124,7 +92,7 @@ static int print_macro (FILE * f, int maxwidth, const char **macro) fprintf (f, "?"); } } - return (maxwidth - n); + return maxwidth - n; } static int pad (FILE * f, int col, int i) @@ -134,10 +102,10 @@ static int pad (FILE * f, int col, int i) if (col < i) { snprintf (fmt, sizeof (fmt), "%%-%ds", i - col); fprintf (f, fmt, ""); - return (i); + return i; } fputc (' ', f); - return (col + 1); + return col + 1; } static void help_format_line (FILE * f, int ismacro, @@ -150,16 +118,15 @@ static void help_format_line (FILE * f, int ismacro, fputs (t1, f); - /* don't try to press string into one line with less than 40 characters. - The double paranthesis avoid a gcc warning, sigh ... */ - if ((split = COLS < 40)) { + /* don't try to press string into one line with less than 40 characters. */ + if ((split = getmaxx(main_w) < 40)) { col_a = col = 0; col_b = LONG_STRING; fputc ('\n', f); } else { - col_a = COLS > 83 ? (COLS - 32) >> 2 : 12; - col_b = COLS > 49 ? (COLS - 10) >> 1 : 19; + col_a = getmaxx(main_w) > 83 ? (getmaxx(main_w) - 32) >> 2 : 12; + col_b = getmaxx(main_w) > 49 ? (getmaxx(main_w) - 10) >> 1 : 19; col = pad (f, m_strlen(t1), col_a); } @@ -186,14 +153,14 @@ static void help_format_line (FILE * f, int ismacro, } else { while (*t3) { - n = COLS - col; + n = getmaxx(main_w) - col; if (ismacro >= 0) { t3 = vskipspaces(t3); /* FIXME: this is completely wrong */ - if ((n = m_strlen(t3)) > COLS - col) { - n = COLS - col; + if ((n = m_strlen(t3)) > getmaxx(main_w) - col) { + n = getmaxx(main_w) - col; for (col_a = n; col_a > 0 && t3[col_a] != ' '; col_a--); if (col_a) n = col_a; @@ -203,7 +170,7 @@ static void help_format_line (FILE * f, int ismacro, print_macro (f, n, &t3); if (*t3) { - n += col - COLS; + n += col - getmaxx(main_w); if (option (OPTMARKERS)) ++n; col = pad (f, n, col_b); @@ -276,7 +243,7 @@ void mutt_help (int menu) desc = _(""); do { - f = m_tempfile(tmp, sizeof(tmp), NONULL(MCore.tmpdir), NULL); + f = m_tempfile(tmp, sizeof(tmp), NONULL(mod_core.tmpdir), NULL); if (!f) { mutt_perror(tmp); return;