X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=lib-ui%2Fcurs_lib.c;h=079a34a59cbad0cd4312ef3c33558f42f8b9d3cf;hb=5d5c580eec880d5a67b9d4ab5bc399574dcc285e;hp=1cc7aa6bd98eeff2c7948d004b5eaa9fed3886ab;hpb=ac813896ca32d850febc2d95065ac4fa040f11f9;p=apps%2Fmadmutt.git diff --git a/lib-ui/curs_lib.c b/lib-ui/curs_lib.c index 1cc7aa6..079a34a 100644 --- a/lib-ui/curs_lib.c +++ b/lib-ui/curs_lib.c @@ -11,31 +11,13 @@ * please see the file GPL in the top level source directory. */ -#if HAVE_CONFIG_H -# include "config.h" -#endif +#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include - #ifdef HAVE_LANGINFO_YESEXPR #include #endif -#include -#include -#include -#include -#include - #include #include @@ -221,11 +203,11 @@ int mutt_yesorno (const char *msg, int def) #ifdef HAVE_LANGINFO_YESEXPR answer[0] = ch.ch; - if (reyes_ok ? (regexec (&reyes, answer, 0, 0, 0) == 0) : + if (reyes_ok ? (regexec (&reyes, answer, 0, 0, 0) == 0) : tolower (ch.ch) == *yes) #else - if ( + if (tolower (ch.ch) == *yes) #endif - (tolower (ch.ch) == *yes)) { + { def = M_YES; break; } @@ -236,8 +218,7 @@ int mutt_yesorno (const char *msg, int def) (tolower (ch.ch) == *no)) { def = M_NO; break; - } - else { + } else { BEEP (); } } @@ -281,7 +262,6 @@ void mutt_curses_error (const char *fmt, ...) vsnprintf (Errorbuf, sizeof (Errorbuf), fmt, ap); va_end (ap); - debug_print (1, ("%s\n", Errorbuf)); mutt_format_string (TmpErrorbuf, sizeof (TmpErrorbuf), 0, COLS - 2, 0, 0, Errorbuf, sizeof (Errorbuf), 0); snprintf (Errorbuf, sizeof (Errorbuf), "%s", TmpErrorbuf); /* overkill */ @@ -380,8 +360,6 @@ void mutt_endwin (const char *msg) void _mutt_perror (const char *s, const char* filename, int line) { char *p = strerror (errno); - - debug_print (1, ("%s: %s (errno = %d)\n", s, p ? p : "unknown error", errno)); mutt_error ("%s: %s (errno = %d) from %s:%i", s, p ? p : _("unknown error"), errno, filename, line); } @@ -572,6 +550,24 @@ int mutt_addwch (wchar_t wc) return addstr (buf); } +ssize_t mutt_pretty_size(char *s, ssize_t len, ssize_t n) +{ + if (n == 0) + return m_strcpy(s, len, "0K"); + + if (n < 10189) /* 0.1K - 9.9K */ + return snprintf(s, len, "%3.1fK", (n < 103) ? 0.1 : n / 1024.0); + + if (n < 1023949) /* 10K - 999K */ + /* 51 is magic which causes 10189/10240 to be rounded up to 10 */ + return snprintf(s, len, "%ldK", (n + 51) / 1024); + + if (n < 10433332) /* 1.0M - 9.9M */ + return snprintf(s, len, "%3.1fM", n / 1048576.0); + + /* (10433332 + 52428) / 1048576 = 10 */ + return snprintf (s, len, "%ldM", (n + 52428) / 1048576); +} /* * This formats a string, a bit like @@ -599,12 +595,12 @@ void mutt_format_string (char *dest, ssize_t destlen, for (; n && (k = mbrtowc (&wc, s, n, &mbstate1)); s += k, n -= k) { if (k == -1 || k == -2) { k = (k == -1) ? 1 : n; - wc = replacement_char (); + wc = CharsetReplacement; } if (arboreal && wc < M_TREE_MAX) w = 1; /* hack */ else { - if (!IsWPrint (wc)) + if (!iswprint(wc)) wc = '?'; w = wcwidth (wc); } @@ -694,9 +690,9 @@ void mutt_paddstr (int n, const char *s) for (; len && (k = mbrtowc (&wc, s, len, &mbstate)); s += k, len -= k) { if (k == -1 || k == -2) { k = (k == -1) ? 1 : len; - wc = replacement_char (); + wc = CharsetReplacement; } - if (!IsWPrint (wc)) + if (!iswprint(wc)) wc = '?'; w = wcwidth (wc); if (w >= 0) { @@ -731,9 +727,9 @@ int mutt_strwidth (const char *s) for (w = 0; n && (k = mbrtowc (&wc, s, n, &mbstate)); s += k, n -= k) { if (k == -1 || k == -2) { k = (k == -1) ? 1 : n; - wc = replacement_char (); + wc = CharsetReplacement; } - if (!IsWPrint (wc)) + if (!iswprint(wc)) wc = '?'; w += wcwidth (wc); }