Andreas Krennmair:
authorak1 <ak1@e385b8ad-14ed-0310-8656-cc95a2468c6d>
Sat, 8 Jan 2005 18:08:14 +0000 (18:08 +0000)
committerak1 <ak1@e385b8ad-14ed-0310-8656-cc95a2468c6d>
Sat, 8 Jan 2005 18:08:14 +0000 (18:08 +0000)
fixed a few things, still problems with sidebar.

git-svn-id: svn://svn.berlios.de/mutt-ng/trunk@5 e385b8ad-14ed-0310-8656-cc95a2468c6d

19 files changed:
curs_lib.c
curs_main.c
doc/manual.sgml
doc/muttrc.man
enter.c
flea
keymap.c
menu.c
po/bg.gmo
po/da.gmo
po/de.gmo
po/el.gmo
po/et.gmo
po/gl.gmo
po/it.gmo
po/ja.gmo
po/sv.gmo
po/zh_CN.gmo
stderr.txt [deleted file]

index 0f38f05..1eb0911 100644 (file)
@@ -170,7 +170,7 @@ int mutt_yesorno (const char *msg, int def)
   answer[1] = 0;
   
   reyes_ok = (expr = nl_langinfo (YESEXPR)) && expr[0] == '^' &&
   answer[1] = 0;
   
   reyes_ok = (expr = nl_langinfo (YESEXPR)) && expr[0] == '^' &&
-            !regcomp (&reyes, expr, REG_NOSUB|REG_EXTENDED);
+             !regcomp (&reyes, expr, REG_NOSUB|REG_EXTENDED);
   reno_ok = (expr = nl_langinfo (NOEXPR)) && expr[0] == '^' &&
             !regcomp (&reno, expr, REG_NOSUB|REG_EXTENDED);
 #endif
   reno_ok = (expr = nl_langinfo (NOEXPR)) && expr[0] == '^' &&
             !regcomp (&reno, expr, REG_NOSUB|REG_EXTENDED);
 #endif
@@ -204,21 +204,21 @@ int mutt_yesorno (const char *msg, int def)
 #ifdef HAVE_LANGINFO_YESEXPR
     answer[0] = ch.ch;
     if (reyes_ok ? 
 #ifdef HAVE_LANGINFO_YESEXPR
     answer[0] = ch.ch;
     if (reyes_ok ? 
-       (regexec (& reyes, answer, 0, 0, 0) == 0) :
+        (regexec (& reyes, answer, 0, 0, 0) == 0) :
 #else
     if (
 #endif
 #else
     if (
 #endif
-       (tolower (ch.ch) == 'y'))
+        (tolower (ch.ch) == 'y'))
     {
       def = M_YES;
       break;
     }
     else if (
 #ifdef HAVE_LANGINFO_YESEXPR
     {
       def = M_YES;
       break;
     }
     else if (
 #ifdef HAVE_LANGINFO_YESEXPR
-            reno_ok ?
-            (regexec (& reno, answer, 0, 0, 0) == 0) :
+             reno_ok ?
+             (regexec (& reno, answer, 0, 0, 0) == 0) :
 #endif
 #endif
-            (tolower (ch.ch) == 'n'))
+             (tolower (ch.ch) == 'n'))
     {
       def = M_NO;
       break;
     {
       def = M_NO;
       break;
@@ -271,7 +271,7 @@ void mutt_curses_error (const char *fmt, ...)
   
   dprint (1, (debugfile, "%s\n", Errorbuf));
   mutt_format_string (Errorbuf, sizeof (Errorbuf),
   
   dprint (1, (debugfile, "%s\n", Errorbuf));
   mutt_format_string (Errorbuf, sizeof (Errorbuf),
-                     0, COLS-2, 0, 0, Errorbuf, sizeof (Errorbuf), 0);
+                      0, COLS-2, 0, 0, Errorbuf, sizeof (Errorbuf), 0);
 
   if (!option (OPTKEEPQUIET))
   {
 
   if (!option (OPTKEEPQUIET))
   {
@@ -295,7 +295,7 @@ void mutt_curses_message (const char *fmt, ...)
   va_end (ap);
 
   mutt_format_string (Errorbuf, sizeof (Errorbuf),
   va_end (ap);
 
   mutt_format_string (Errorbuf, sizeof (Errorbuf),
-                     0, COLS-2, 0, 0, Errorbuf, sizeof (Errorbuf), 0);
+                      0, COLS-2, 0, 0, Errorbuf, sizeof (Errorbuf), 0);
 
   if (!option (OPTKEEPQUIET))
   {
 
   if (!option (OPTKEEPQUIET))
   {
@@ -376,9 +376,9 @@ int mutt_any_key_to_continue (const char *s)
 }
 
 int mutt_do_pager (const char *banner,
 }
 
 int mutt_do_pager (const char *banner,
-                  const char *tempfile,
-                  int do_color,
-                  pager_t *info)
+                   const char *tempfile,
+                   int do_color,
+                   pager_t *info)
 {
   int rc;
   
 {
   int rc;
   
@@ -425,17 +425,17 @@ int _mutt_enter_fname (const char *prompt, char *buf, size_t blen, int *redraw,
     mutt_refresh ();
     buf[0] = 0;
     _mutt_select_file (buf, blen, M_SEL_FOLDER | (multiple ? M_SEL_MULTI : 0), 
     mutt_refresh ();
     buf[0] = 0;
     _mutt_select_file (buf, blen, M_SEL_FOLDER | (multiple ? M_SEL_MULTI : 0), 
-                      files, numfiles);
+                       files, numfiles);
     *redraw = REDRAW_FULL;
   }
   else
   {
     char *pc = safe_malloc (mutt_strlen (prompt) + 3);
 
     *redraw = REDRAW_FULL;
   }
   else
   {
     char *pc = safe_malloc (mutt_strlen (prompt) + 3);
 
-    sprintf (pc, "%s: ", prompt);      /* __SPRINTF_CHECKED__ */
+    sprintf (pc, "%s: ", prompt);        /* __SPRINTF_CHECKED__ */
     mutt_ungetch (ch.op ? 0 : ch.ch, ch.op ? ch.op : 0);
     if (_mutt_get_field (pc, buf, blen, (buffy ? M_EFILE : M_FILE) | M_CLEAR, multiple, files, numfiles)
     mutt_ungetch (ch.op ? 0 : ch.ch, ch.op ? ch.op : 0);
     if (_mutt_get_field (pc, buf, blen, (buffy ? M_EFILE : M_FILE) | M_CLEAR, multiple, files, numfiles)
-       != 0)
+        != 0)
       buf[0] = 0;
     MAYBE_REDRAW (*redraw);
     FREE (&pc);
       buf[0] = 0;
     MAYBE_REDRAW (*redraw);
     FREE (&pc);
@@ -479,8 +479,8 @@ void mutt_curs_set (int cursor)
     SavedCursor = cursor;
   
   if (curs_set (cursor) == ERR) {
     SavedCursor = cursor;
   
   if (curs_set (cursor) == ERR) {
-    if (cursor == 1)   /* cnorm */
-      curs_set (2);    /* cvvis */
+    if (cursor == 1)        /* cnorm */
+      curs_set (2);        /* cvvis */
   }
 }
 #endif
   }
 }
 #endif
@@ -507,14 +507,14 @@ int mutt_multi_choice (char *prompt, char *letters)
       p = strchr (letters, ch.ch);
       if (p)
       {
       p = strchr (letters, ch.ch);
       if (p)
       {
-       choice = p - letters + 1;
-       break;
+        choice = p - letters + 1;
+        break;
       }
       else if (ch.ch <= '9' && ch.ch > '0')
       {
       }
       else if (ch.ch <= '9' && ch.ch > '0')
       {
-       choice = ch.ch - '0';
-       if (choice <= mutt_strlen (letters))
-         break;
+        choice = ch.ch - '0';
+        if (choice <= mutt_strlen (letters))
+          break;
       }
     }
     BEEP ();
       }
     }
     BEEP ();
@@ -551,10 +551,10 @@ int mutt_addwch (wchar_t wc)
  */
 
 void mutt_format_string (char *dest, size_t destlen,
  */
 
 void mutt_format_string (char *dest, size_t destlen,
-                        int min_width, int max_width,
-                        int right_justify, char m_pad_char,
-                        const char *s, size_t n,
-                        int arboreal)
+                         int min_width, int max_width,
+                         int right_justify, char m_pad_char,
+                         const char *s, size_t n,
+                         int arboreal)
 {
   char *p;
   int w;
 {
   char *p;
   int w;
@@ -603,10 +603,10 @@ void mutt_format_string (char *dest, size_t destlen,
  */
 
 static void mutt_format_s_x (char *dest,
  */
 
 static void mutt_format_s_x (char *dest,
-                            size_t destlen,
-                            const char *prefix,
-                            const char *s,
-                            int arboreal)
+                             size_t destlen,
+                             const char *prefix,
+                             const char *s,
+                             int arboreal)
 {
   int right_justify = 1;
   char *p;
 {
   int right_justify = 1;
   char *p;
@@ -625,21 +625,21 @@ static void mutt_format_s_x (char *dest,
   }
 
   mutt_format_string (dest, destlen, min_width, max_width,
   }
 
   mutt_format_string (dest, destlen, min_width, max_width,
-                     right_justify, ' ', s, mutt_strlen (s), arboreal);
+                      right_justify, ' ', s, mutt_strlen (s), arboreal);
 }
 
 void mutt_format_s (char *dest,
 }
 
 void mutt_format_s (char *dest,
-                   size_t destlen,
-                   const char *prefix,
-                   const char *s)
+                    size_t destlen,
+                    const char *prefix,
+                    const char *s)
 {
   mutt_format_s_x (dest, destlen, prefix, s, 0);
 }
 
 void mutt_format_s_tree (char *dest,
 {
   mutt_format_s_x (dest, destlen, prefix, s, 0);
 }
 
 void mutt_format_s_tree (char *dest,
-                        size_t destlen,
-                        const char *prefix,
-                        const char *s)
+                         size_t destlen,
+                         const char *prefix,
+                         const char *s)
 {
   mutt_format_s_x (dest, destlen, prefix, s, 1);
 }
 {
   mutt_format_s_x (dest, destlen, prefix, s, 1);
 }
@@ -651,30 +651,14 @@ void mutt_format_s_tree (char *dest,
 
 void mutt_paddstr (int n, const char *s)
 {
 
 void mutt_paddstr (int n, const char *s)
 {
-  wchar_t wc;
-  int w;
-  size_t k;
   size_t len = mutt_strlen (s);
   size_t len = mutt_strlen (s);
-  mbstate_t mbstate;
 
 
-  memset (&mbstate, 0, sizeof (mbstate));
-  for (; len && (k = mbrtowc (&wc, s, len, &mbstate)); s += k, len -= k)
+  for (; len && *s; s += 1, len -= 1)
   {
   {
-    if (k == (size_t)(-1) || k == (size_t)(-2))
-    {
-      k = (k == (size_t)(-1)) ? 1 : len;
-      wc = replacement_char ();
-    }
-    if (!IsWPrint (wc))
-      wc = '?';
-    w = wcwidth (wc);
-    if (w >= 0)
-    {
-      if (w > n)
-       break;
-      addnstr ((char *)s, k);
-      n -= w;
-    }
+    if (1 > n)
+      break;
+    addnstr ((char *)s, 1);
+    n -= 1;
   }
   while (n-- > 0)
     addch (' ');
   }
   while (n-- > 0)
     addch (' ');
@@ -683,30 +667,10 @@ void mutt_paddstr (int n, const char *s)
 /*
  * mutt_strwidth is like mutt_strlen except that it returns the width
  * refering to the number of characters cells.
 /*
  * mutt_strwidth is like mutt_strlen except that it returns the width
  * refering to the number of characters cells.
+ * AK: since we remove all that multibyte-character-stuff, it is equal to mutt_strlen
  */
 
 int mutt_strwidth (const char *s)
 {
  */
 
 int mutt_strwidth (const char *s)
 {
-  wchar_t wc;
-  int w;
-  size_t k, n;
-  mbstate_t mbstate;
-
-  if (!s) return 0;
-
-  n = mutt_strlen (s);
-
-  memset (&mbstate, 0, sizeof (mbstate));
-  for (w=0; n && (k = mbrtowc (&wc, s, n, &mbstate)); s += k, n -= k)
-  {
-    if (k == (size_t)(-1) || k == (size_t)(-2))
-    {
-      k = (k == (size_t)(-1)) ? 1 : n;
-      wc = replacement_char ();
-    }
-    if (!IsWPrint (wc))
-      wc = '?';
-    w += wcwidth (wc);
-  }
-  return w;
+  return mutt_strlen(s);
 }
 }
index 395019b..97640d6 100644 (file)
@@ -711,8 +711,7 @@ int mutt_index_menu (void)
 #ifdef USE_NNTP
     unset_option (OPTNEWS);        /* for any case */
 #endif
 #ifdef USE_NNTP
     unset_option (OPTNEWS);        /* for any case */
 #endif
-    fprintf(stderr,"%d %d\n",op,OP_SIDEBAR_OPEN);
-    fflush(stderr);
+
     switch (op)
     {
 
     switch (op)
     {
 
index acccb35..08ab89f 100644 (file)
@@ -4338,7 +4338,7 @@ Example: set inews=&dquot;/usr/local/bin/inews -hS&dquot;
 <sect2>ispell<label id="ispell">
 <p>
 Type: path<newline>
 <sect2>ispell<label id="ispell">
 <p>
 Type: path<newline>
-Default: &dquot;/sw/bin/ispell&dquot;
+Default: &dquot;/usr/bin/ispell&dquot;
 
 <p>
 How to invoke ispell (GNU's spell-checking software).
 
 <p>
 How to invoke ispell (GNU's spell-checking software).
@@ -6354,7 +6354,7 @@ iso-8859-2, koi8-r or iso-2022-jp) either instead of or after
 <sect2>sendmail<label id="sendmail">
 <p>
 Type: path<newline>
 <sect2>sendmail<label id="sendmail">
 <p>
 Type: path<newline>
-Default: &dquot;/sw/sbin/sendmail -oem -oi&dquot;
+Default: &dquot;/usr/sbin/sendmail -oem -oi&dquot;
 
 <p>
 Specifies the program and arguments used to deliver mail sent by Mutt.
 
 <p>
 Specifies the program and arguments used to deliver mail sent by Mutt.
index 8594c46..b9473bb 100644 (file)
@@ -1999,7 +1999,7 @@ Example: set inews=\(rq/usr/local/bin/inews -hS\(rq
 .B ispell
 .nf
 Type: path
 .B ispell
 .nf
 Type: path
-Default: \(lq/sw/bin/ispell\(rq
+Default: \(lq/usr/bin/ispell\(rq
 .fi
 .IP
 How to invoke ispell (GNU's spell-checking software).
 .fi
 .IP
 How to invoke ispell (GNU's spell-checking software).
@@ -4249,7 +4249,7 @@ iso-8859-2, koi8-r or iso-2022-jp) either instead of or after
 .B sendmail
 .nf
 Type: path
 .B sendmail
 .nf
 Type: path
-Default: \(lq/sw/sbin/sendmail -oem -oi\(rq
+Default: \(lq/usr/sbin/sendmail -oem -oi\(rq
 .fi
 .IP
 Specifies the program and arguments used to deliver mail sent by Mutt.
 .fi
 .IP
 Specifies the program and arguments used to deliver mail sent by Mutt.
diff --git a/enter.c b/enter.c
index 9547ebb..356ab21 100644 (file)
--- a/enter.c
+++ b/enter.c
@@ -28,8 +28,8 @@
 /* redraw flags for mutt_enter_string() */
 enum
 {
 /* redraw flags for mutt_enter_string() */
 enum
 {
-  M_REDRAW_INIT = 1,   /* go to end of line and redraw */
-  M_REDRAW_LINE                /* redraw entire line */
+  M_REDRAW_INIT = 1,        /* go to end of line and redraw */
+  M_REDRAW_LINE                /* redraw entire line */
 };
 
 static int my_wcwidth (wchar_t wc)
 };
 
 static int my_wcwidth (wchar_t wc)
@@ -101,7 +101,7 @@ static void my_wcstombs (char *dest, size_t dlen, const wchar_t *src, size_t sle
 
     for (; slen && p - buf < dlen; p += k, src++, slen--)
       if ((k = wcrtomb (p, *src, &st)) == (size_t)(-1))
 
     for (; slen && p - buf < dlen; p += k, src++, slen--)
       if ((k = wcrtomb (p, *src, &st)) == (size_t)(-1))
-       break;
+        break;
     p += wcrtomb (p, 0, &st);
 
     /* If it fits into the destination buffer, we can stop now */
     p += wcrtomb (p, 0, &st);
 
     /* If it fits into the destination buffer, we can stop now */
@@ -127,7 +127,7 @@ size_t my_mbstowcs (wchar_t **pwbuf, size_t *pwbuflen, size_t i, char *buf)
   wbuf = *pwbuf, wbuflen = *pwbuflen;
   memset (&st, 0, sizeof (st));
   for (; (k = mbrtowc (&wc, buf, MB_LEN_MAX, &st)) &&
   wbuf = *pwbuf, wbuflen = *pwbuflen;
   memset (&st, 0, sizeof (st));
   for (; (k = mbrtowc (&wc, buf, MB_LEN_MAX, &st)) &&
-        k != (size_t)(-1) && k != (size_t)(-2); buf += k)
+         k != (size_t)(-1) && k != (size_t)(-2); buf += k)
   {
     if (i >= wbuflen)
     {
   {
     if (i >= wbuflen)
     {
@@ -170,9 +170,9 @@ static void replace_part (ENTER_STATE *state, size_t from, char *buf)
 
 /*
  * Returns:
 
 /*
  * Returns:
- *     1 need to redraw the screen and call me again
- *     0 if input was given
- *     -1 if abort.
+ *        1 need to redraw the screen and call me again
+ *        0 if input was given
+ *         -1 if abort.
  */
 
 int  mutt_enter_string(char *buf, size_t buflen, int y, int x, int flags)
  */
 
 int  mutt_enter_string(char *buf, size_t buflen, int y, int x, int flags)
@@ -185,8 +185,8 @@ int  mutt_enter_string(char *buf, size_t buflen, int y, int x, int flags)
 }
 
 int _mutt_enter_string (char *buf, size_t buflen, int y, int x,
 }
 
 int _mutt_enter_string (char *buf, size_t buflen, int y, int x,
-                       int flags, int multiple, char ***files, int *numfiles,
-                       ENTER_STATE *state)
+                        int flags, int multiple, char ***files, int *numfiles,
+                        ENTER_STATE *state)
 {
   int width = COLS - x - 1;
   int redraw;
 {
   int width = COLS - x - 1;
   int redraw;
@@ -235,21 +235,21 @@ int _mutt_enter_string (char *buf, size_t buflen, int y, int x,
     {
       if (redraw == M_REDRAW_INIT)
       {
     {
       if (redraw == M_REDRAW_INIT)
       {
-       /* Go to end of line */
-       state->curpos = state->lastchar;
-       state->begin = width_ceiling (state->wbuf, state->lastchar, my_wcswidth (state->wbuf, state->lastchar) - width + 1);
+        /* Go to end of line */
+        state->curpos = state->lastchar;
+        state->begin = width_ceiling (state->wbuf, state->lastchar, my_wcswidth (state->wbuf, state->lastchar) - width + 1);
       } 
       if (state->curpos < state->begin ||
       } 
       if (state->curpos < state->begin ||
-         my_wcswidth (state->wbuf + state->begin, state->curpos - state->begin) >= width)
-       state->begin = width_ceiling (state->wbuf, state->lastchar, my_wcswidth (state->wbuf, state->curpos) - width / 2);
+          my_wcswidth (state->wbuf + state->begin, state->curpos - state->begin) >= width)
+        state->begin = width_ceiling (state->wbuf, state->lastchar, my_wcswidth (state->wbuf, state->curpos) - width / 2);
       move (y, x);
       w = 0;
       for (i = state->begin; i < state->lastchar; i++)
       {
       move (y, x);
       w = 0;
       for (i = state->begin; i < state->lastchar; i++)
       {
-       w += my_wcwidth (state->wbuf[i]);
-       if (w > width)
-         break;
-       my_addwch (state->wbuf[i]);
+        w += my_wcwidth (state->wbuf[i]);
+        if (w > width)
+          break;
+        my_addwch (state->wbuf[i]);
       }
       clrtoeol ();
       move (y, x + my_wcswidth (state->wbuf + state->begin, state->curpos - state->begin));
       }
       clrtoeol ();
       move (y, x + my_wcswidth (state->wbuf + state->begin, state->curpos - state->begin));
@@ -266,343 +266,343 @@ int _mutt_enter_string (char *buf, size_t buflen, int y, int x,
     {
       first = 0;
       if (ch != OP_EDITOR_COMPLETE)
     {
       first = 0;
       if (ch != OP_EDITOR_COMPLETE)
-       state->tabs = 0;
+        state->tabs = 0;
       redraw = M_REDRAW_LINE;
       switch (ch)
       {
       redraw = M_REDRAW_LINE;
       switch (ch)
       {
-       case OP_EDITOR_HISTORY_UP:
-         state->curpos = state->lastchar;
-         replace_part (state, 0, mutt_history_prev (hclass));
-         redraw = M_REDRAW_INIT;
-         break;
-
-       case OP_EDITOR_HISTORY_DOWN:
-         state->curpos = state->lastchar;
-         replace_part (state, 0, mutt_history_next (hclass));
-         redraw = M_REDRAW_INIT;
-         break;
-
-       case OP_EDITOR_BACKSPACE:
-         if (state->curpos == 0)
-           BEEP ();
-         else
-         {
-           i = state->curpos;
-           while (i && COMB_CHAR (state->wbuf[i - 1]))
-             --i;
-           if (i)
-             --i;
-           memmove (state->wbuf + i, state->wbuf + state->curpos, (state->lastchar - state->curpos) * sizeof (wchar_t));
-           state->lastchar -= state->curpos - i;
-           state->curpos = i;
-         }
-         break;
-
-       case OP_EDITOR_BOL:
-         state->curpos = 0;
-         break;
-
-       case OP_EDITOR_EOL:
-         redraw= M_REDRAW_INIT;
-         break;
-
-       case OP_EDITOR_KILL_LINE:
-         state->curpos = state->lastchar = 0;
-         break;
-
-       case OP_EDITOR_KILL_EOL:
-         state->lastchar = state->curpos;
-         break;
-
-       case OP_EDITOR_BACKWARD_CHAR:
-         if (state->curpos == 0)
-           BEEP ();
-         else
-         {
-           while (state->curpos && COMB_CHAR (state->wbuf[state->curpos - 1]))
-             state->curpos--;
-           if (state->curpos)
-             state->curpos--;
-         }
-         break;
-
-       case OP_EDITOR_FORWARD_CHAR:
-         if (state->curpos == state->lastchar)
-           BEEP ();
-         else
-         {
-           ++state->curpos;
-           while (state->curpos < state->lastchar && COMB_CHAR (state->wbuf[state->curpos]))
-             ++state->curpos;
-         }
-         break;
-
-       case OP_EDITOR_BACKWARD_WORD:
-         if (state->curpos == 0)
-           BEEP ();
-         else
-         {
-           while (state->curpos && iswspace (state->wbuf[state->curpos - 1]))
-             --state->curpos;
-           while (state->curpos && !iswspace (state->wbuf[state->curpos - 1]))
-             --state->curpos;
-         }
-         break;
-
-       case OP_EDITOR_FORWARD_WORD:
-         if (state->curpos == state->lastchar)
-           BEEP ();
-         else
-         {
-           while (state->curpos < state->lastchar && iswspace (state->wbuf[state->curpos]))
-             ++state->curpos;
-           while (state->curpos < state->lastchar && !iswspace (state->wbuf[state->curpos]))
-             ++state->curpos;
-         }
-         break;
-
-       case OP_EDITOR_CAPITALIZE_WORD:
-       case OP_EDITOR_UPCASE_WORD:
-       case OP_EDITOR_DOWNCASE_WORD:
-         if (state->curpos == state->lastchar)
-         {
-           BEEP ();
-           break;
-         }
-         while (state->curpos && !iswspace (state->wbuf[state->curpos]))
-           --state->curpos;
-         while (state->curpos < state->lastchar && iswspace (state->wbuf[state->curpos]))
-           ++state->curpos;
-         while (state->curpos < state->lastchar && !iswspace (state->wbuf[state->curpos]))
-         {
-           if (ch == OP_EDITOR_DOWNCASE_WORD)
-             state->wbuf[state->curpos] = towlower (state->wbuf[state->curpos]);
-           else
-           {
-             state->wbuf[state->curpos] = towupper (state->wbuf[state->curpos]);
-             if (ch == OP_EDITOR_CAPITALIZE_WORD)
-               ch = OP_EDITOR_DOWNCASE_WORD;
-           }
-           state->curpos++;
-         }
-         break;
-
-       case OP_EDITOR_DELETE_CHAR:
-         if (state->curpos == state->lastchar)
-           BEEP ();
-         else
-         {
-           i = state->curpos;
-           while (i < state->lastchar && COMB_CHAR (state->wbuf[i]))
-             ++i;
-           if (i < state->lastchar)
-             ++i;
-           while (i < state->lastchar && COMB_CHAR (state->wbuf[i]))
-             ++i;
-           memmove (state->wbuf + state->curpos, state->wbuf + i, (state->lastchar - i) * sizeof (wchar_t));
-           state->lastchar -= i - state->curpos;
-         }
-         break;
-
-       case OP_EDITOR_KILL_WORD:
-         /* delete to begining of word */
-         if (state->curpos != 0)
-         {
-           i = state->curpos;
-           while (i && iswspace (state->wbuf[i - 1]))
-             --i;
-           if (i)
-           {
-             if (iswalnum (state->wbuf[i - 1]))
-             {
-               for (--i; i && iswalnum (state->wbuf[i - 1]); i--)
-                 ;
-             }
-             else
-               --i;
-           }
-           memmove (state->wbuf + i, state->wbuf + state->curpos,
-                    (state->lastchar - state->curpos) * sizeof (wchar_t));
-           state->lastchar += i - state->curpos;
-           state->curpos = i;
-         }
-         break;
-
-       case OP_EDITOR_KILL_EOW:
-         /* delete to end of word */
-         for (i = state->curpos;
-              i < state->lastchar && iswspace (state->wbuf[i]); i++)
-           ;
-         for (; i < state->lastchar && !iswspace (state->wbuf[i]); i++)
-           ;
-         memmove (state->wbuf + state->curpos, state->wbuf + i,
-                  (state->lastchar - i) * sizeof (wchar_t));
-         state->lastchar += state->curpos - i;
-         break;
-
-       case OP_EDITOR_BUFFY_CYCLE:
-         if (flags & M_EFILE)
-         {
-           first = 1; /* clear input if user types a real key later */
-           my_wcstombs (buf, buflen, state->wbuf, state->curpos);
-           mutt_buffy (buf, buflen);
-           state->curpos = state->lastchar = my_mbstowcs (&state->wbuf, &state->wbuflen, 0, buf);
-           break;
-         }
-         else if (!(flags & M_FILE))
-           goto self_insert;
-         /* fall through to completion routine (M_FILE) */
-
-       case OP_EDITOR_COMPLETE:
-         state->tabs++;
-         if (flags & M_CMD)
-         {
-           for (i = state->curpos; i && state->wbuf[i-1] != ' '; i--)
-             ;
-           my_wcstombs (buf, buflen, state->wbuf + i, state->curpos - i);
-           if (tempbuf && templen == state->lastchar - i &&
-               !memcmp (tempbuf, state->wbuf + i, (state->lastchar - i) * sizeof (wchar_t)))
-           {
-             mutt_select_file (buf, buflen, (flags & M_EFILE) ? M_SEL_FOLDER : 0);
-             set_option (OPTNEEDREDRAW);
-             if (*buf)
-               replace_part (state, i, buf);
-             rv = 1; 
-             goto bye;
-           }
-           if (!mutt_complete (buf, buflen))
-           {
-             templen = state->lastchar - i;
-             safe_realloc (&tempbuf, templen * sizeof (wchar_t));
-           }
-           else
-             BEEP ();
-
-           replace_part (state, i, buf);
-         }
-         else if (flags & M_ALIAS)
-         {
-           /* invoke the alias-menu to get more addresses */
-           for (i = state->curpos; i && state->wbuf[i-1] != ',' && 
-                state->wbuf[i-1] != ':'; i--)
-             ;
-           for (; i < state->lastchar && state->wbuf[i] == ' '; i++)
-             ;
-           my_wcstombs (buf, buflen, state->wbuf + i, state->curpos - i);
-           r = mutt_alias_complete (buf, buflen);
-           replace_part (state, i, buf);
-           if (!r)
-           {
-             rv = 1;
-             goto bye;
-           }
-           break;
-         }
-         else if (flags & M_COMMAND)
-         {
-           my_wcstombs (buf, buflen, state->wbuf, state->curpos);
-           i = strlen (buf);
-           if (i && buf[i - 1] == '=' &&
-               mutt_var_value_complete (buf, buflen, i))
-             state->tabs = 0;
-           else if (!mutt_command_complete (buf, buflen, i, state->tabs))
-             BEEP ();
-           replace_part (state, 0, buf);
-         }
-         else if (flags & (M_FILE | M_EFILE))
-         {
-           my_wcstombs (buf, buflen, state->wbuf, state->curpos);
-
-           /* see if the path has changed from the last time */
-           if ((!tempbuf && !state->lastchar) || (tempbuf && templen == state->lastchar &&
-               !memcmp (tempbuf, state->wbuf, state->lastchar * sizeof (wchar_t))))
-           {
-             _mutt_select_file (buf, buflen, 
-                                ((flags & M_EFILE) ? M_SEL_FOLDER : 0) | (multiple ? M_SEL_MULTI : 0), 
-                                files, numfiles);
-             set_option (OPTNEEDREDRAW);
-             if (*buf)
-             {
-               mutt_pretty_mailbox (buf);
-               if (!pass)
-                 mutt_history_add (hclass, buf);
-               rv = 0;
-               goto bye;
-             }
-
-             /* file selection cancelled */
-             rv = 1;
-             goto bye;
-           }
-
-           if (!mutt_complete (buf, buflen))
-           {
-             templen = state->lastchar;
-             safe_realloc (&tempbuf, templen * sizeof (wchar_t));
-             memcpy (tempbuf, state->wbuf, templen * sizeof (wchar_t));
-           }
-           else
-             BEEP (); /* let the user know that nothing matched */
-           replace_part (state, 0, buf);
-         }
-         else
-           goto self_insert;
-         break;
-
-       case OP_EDITOR_COMPLETE_QUERY:
-         if (flags & M_ALIAS)
-         {
-           /* invoke the query-menu to get more addresses */
-           if ((i = state->curpos))
-           {
-             for (; i && state->wbuf[i - 1] != ','; i--)
-               ;
-             for (; i < state->curpos && state->wbuf[i] == ' '; i++)
-               ;
-           }
-
-           my_wcstombs (buf, buflen, state->wbuf + i, state->curpos - i);
-           mutt_query_complete (buf, buflen);
-           replace_part (state, i, buf);
-
-           rv = 1; 
-           goto bye;
-         }
-         else
-           goto self_insert;
-
-       case OP_EDITOR_QUOTE_CHAR:
-         {
-           event_t event;
-           /*ADDCH (LastKey);*/
-           event = mutt_getch ();
-           if (event.ch != -1)
-           {
-             LastKey = event.ch;
-             goto self_insert;
-           }
-         }
-
-       case OP_EDITOR_TRANSPOSE_CHARS:
-         if (state->lastchar < 2)
-           BEEP ();
-         else
-       {
-           wchar_t t;
-
-           if (state->curpos == 0)
-             state->curpos = 2;
-           else if (state->curpos < state->lastchar)
-             ++state->curpos;
-
-           t = state->wbuf[state->curpos - 2];
-           state->wbuf[state->curpos - 2] = state->wbuf[state->curpos - 1];
-           state->wbuf[state->curpos - 1] = t;
-         }
-         break;
-
-       default:
-         BEEP ();
+        case OP_EDITOR_HISTORY_UP:
+          state->curpos = state->lastchar;
+          replace_part (state, 0, mutt_history_prev (hclass));
+          redraw = M_REDRAW_INIT;
+          break;
+
+        case OP_EDITOR_HISTORY_DOWN:
+          state->curpos = state->lastchar;
+          replace_part (state, 0, mutt_history_next (hclass));
+          redraw = M_REDRAW_INIT;
+          break;
+
+        case OP_EDITOR_BACKSPACE:
+          if (state->curpos == 0)
+            BEEP ();
+          else
+          {
+            i = state->curpos;
+            while (i && COMB_CHAR (state->wbuf[i - 1]))
+              --i;
+            if (i)
+              --i;
+            memmove (state->wbuf + i, state->wbuf + state->curpos, (state->lastchar - state->curpos) * sizeof (wchar_t));
+            state->lastchar -= state->curpos - i;
+            state->curpos = i;
+          }
+          break;
+
+        case OP_EDITOR_BOL:
+          state->curpos = 0;
+          break;
+
+        case OP_EDITOR_EOL:
+          redraw= M_REDRAW_INIT;
+          break;
+
+        case OP_EDITOR_KILL_LINE:
+          state->curpos = state->lastchar = 0;
+          break;
+
+        case OP_EDITOR_KILL_EOL:
+          state->lastchar = state->curpos;
+          break;
+
+        case OP_EDITOR_BACKWARD_CHAR:
+          if (state->curpos == 0)
+            BEEP ();
+          else
+          {
+            while (state->curpos && COMB_CHAR (state->wbuf[state->curpos - 1]))
+              state->curpos--;
+            if (state->curpos)
+              state->curpos--;
+          }
+          break;
+
+        case OP_EDITOR_FORWARD_CHAR:
+          if (state->curpos == state->lastchar)
+            BEEP ();
+          else
+          {
+            ++state->curpos;
+            while (state->curpos < state->lastchar && COMB_CHAR (state->wbuf[state->curpos]))
+              ++state->curpos;
+          }
+          break;
+
+        case OP_EDITOR_BACKWARD_WORD:
+          if (state->curpos == 0)
+            BEEP ();
+          else
+          {
+            while (state->curpos && iswspace (state->wbuf[state->curpos - 1]))
+              --state->curpos;
+            while (state->curpos && !iswspace (state->wbuf[state->curpos - 1]))
+              --state->curpos;
+          }
+          break;
+
+        case OP_EDITOR_FORWARD_WORD:
+          if (state->curpos == state->lastchar)
+            BEEP ();
+          else
+          {
+            while (state->curpos < state->lastchar && iswspace (state->wbuf[state->curpos]))
+              ++state->curpos;
+            while (state->curpos < state->lastchar && !iswspace (state->wbuf[state->curpos]))
+              ++state->curpos;
+          }
+          break;
+
+        case OP_EDITOR_CAPITALIZE_WORD:
+        case OP_EDITOR_UPCASE_WORD:
+        case OP_EDITOR_DOWNCASE_WORD:
+          if (state->curpos == state->lastchar)
+          {
+            BEEP ();
+            break;
+          }
+          while (state->curpos && !iswspace (state->wbuf[state->curpos]))
+            --state->curpos;
+          while (state->curpos < state->lastchar && iswspace (state->wbuf[state->curpos]))
+            ++state->curpos;
+          while (state->curpos < state->lastchar && !iswspace (state->wbuf[state->curpos]))
+          {
+            if (ch == OP_EDITOR_DOWNCASE_WORD)
+              state->wbuf[state->curpos] = towlower (state->wbuf[state->curpos]);
+            else
+            {
+              state->wbuf[state->curpos] = towupper (state->wbuf[state->curpos]);
+              if (ch == OP_EDITOR_CAPITALIZE_WORD)
+                ch = OP_EDITOR_DOWNCASE_WORD;
+            }
+            state->curpos++;
+          }
+          break;
+
+        case OP_EDITOR_DELETE_CHAR:
+          if (state->curpos == state->lastchar)
+            BEEP ();
+          else
+          {
+            i = state->curpos;
+            while (i < state->lastchar && COMB_CHAR (state->wbuf[i]))
+              ++i;
+            if (i < state->lastchar)
+              ++i;
+            while (i < state->lastchar && COMB_CHAR (state->wbuf[i]))
+              ++i;
+            memmove (state->wbuf + state->curpos, state->wbuf + i, (state->lastchar - i) * sizeof (wchar_t));
+            state->lastchar -= i - state->curpos;
+          }
+          break;
+
+        case OP_EDITOR_KILL_WORD:
+          /* delete to begining of word */
+          if (state->curpos != 0)
+          {
+            i = state->curpos;
+            while (i && iswspace (state->wbuf[i - 1]))
+              --i;
+            if (i)
+            {
+              if (iswalnum (state->wbuf[i - 1]))
+              {
+                for (--i; i && iswalnum (state->wbuf[i - 1]); i--)
+                  ;
+              }
+              else
+                --i;
+            }
+            memmove (state->wbuf + i, state->wbuf + state->curpos,
+                     (state->lastchar - state->curpos) * sizeof (wchar_t));
+            state->lastchar += i - state->curpos;
+            state->curpos = i;
+          }
+          break;
+
+        case OP_EDITOR_KILL_EOW:
+          /* delete to end of word */
+          for (i = state->curpos;
+               i < state->lastchar && iswspace (state->wbuf[i]); i++)
+            ;
+          for (; i < state->lastchar && !iswspace (state->wbuf[i]); i++)
+            ;
+          memmove (state->wbuf + state->curpos, state->wbuf + i,
+                   (state->lastchar - i) * sizeof (wchar_t));
+          state->lastchar += state->curpos - i;
+          break;
+
+        case OP_EDITOR_BUFFY_CYCLE:
+          if (flags & M_EFILE)
+          {
+            first = 1; /* clear input if user types a real key later */
+            my_wcstombs (buf, buflen, state->wbuf, state->curpos);
+            mutt_buffy (buf, buflen);
+            state->curpos = state->lastchar = my_mbstowcs (&state->wbuf, &state->wbuflen, 0, buf);
+            break;
+          }
+          else if (!(flags & M_FILE))
+            goto self_insert;
+          /* fall through to completion routine (M_FILE) */
+
+        case OP_EDITOR_COMPLETE:
+          state->tabs++;
+          if (flags & M_CMD)
+          {
+            for (i = state->curpos; i && state->wbuf[i-1] != ' '; i--)
+              ;
+            my_wcstombs (buf, buflen, state->wbuf + i, state->curpos - i);
+            if (tempbuf && templen == state->lastchar - i &&
+                !memcmp (tempbuf, state->wbuf + i, (state->lastchar - i) * sizeof (wchar_t)))
+            {
+              mutt_select_file (buf, buflen, (flags & M_EFILE) ? M_SEL_FOLDER : 0);
+              set_option (OPTNEEDREDRAW);
+              if (*buf)
+                replace_part (state, i, buf);
+              rv = 1; 
+              goto bye;
+            }
+            if (!mutt_complete (buf, buflen))
+            {
+              templen = state->lastchar - i;
+              safe_realloc (&tempbuf, templen * sizeof (wchar_t));
+            }
+            else
+              BEEP ();
+
+            replace_part (state, i, buf);
+          }
+          else if (flags & M_ALIAS)
+          {
+            /* invoke the alias-menu to get more addresses */
+            for (i = state->curpos; i && state->wbuf[i-1] != ',' && 
+                 state->wbuf[i-1] != ':'; i--)
+              ;
+            for (; i < state->lastchar && state->wbuf[i] == ' '; i++)
+              ;
+            my_wcstombs (buf, buflen, state->wbuf + i, state->curpos - i);
+            r = mutt_alias_complete (buf, buflen);
+            replace_part (state, i, buf);
+            if (!r)
+            {
+              rv = 1;
+              goto bye;
+            }
+            break;
+          }
+          else if (flags & M_COMMAND)
+          {
+            my_wcstombs (buf, buflen, state->wbuf, state->curpos);
+            i = strlen (buf);
+            if (i && buf[i - 1] == '=' &&
+                mutt_var_value_complete (buf, buflen, i))
+              state->tabs = 0;
+            else if (!mutt_command_complete (buf, buflen, i, state->tabs))
+              BEEP ();
+            replace_part (state, 0, buf);
+          }
+          else if (flags & (M_FILE | M_EFILE))
+          {
+            my_wcstombs (buf, buflen, state->wbuf, state->curpos);
+
+            /* see if the path has changed from the last time */
+            if ((!tempbuf && !state->lastchar) || (tempbuf && templen == state->lastchar &&
+                !memcmp (tempbuf, state->wbuf, state->lastchar * sizeof (wchar_t))))
+            {
+              _mutt_select_file (buf, buflen, 
+                                 ((flags & M_EFILE) ? M_SEL_FOLDER : 0) | (multiple ? M_SEL_MULTI : 0), 
+                                 files, numfiles);
+              set_option (OPTNEEDREDRAW);
+              if (*buf)
+              {
+                mutt_pretty_mailbox (buf);
+                if (!pass)
+                  mutt_history_add (hclass, buf);
+                rv = 0;
+                goto bye;
+              }
+
+              /* file selection cancelled */
+              rv = 1;
+              goto bye;
+            }
+
+            if (!mutt_complete (buf, buflen))
+            {
+              templen = state->lastchar;
+              safe_realloc (&tempbuf, templen * sizeof (wchar_t));
+              memcpy (tempbuf, state->wbuf, templen * sizeof (wchar_t));
+            }
+            else
+              BEEP (); /* let the user know that nothing matched */
+            replace_part (state, 0, buf);
+          }
+          else
+            goto self_insert;
+          break;
+
+        case OP_EDITOR_COMPLETE_QUERY:
+          if (flags & M_ALIAS)
+          {
+            /* invoke the query-menu to get more addresses */
+            if ((i = state->curpos))
+            {
+              for (; i && state->wbuf[i - 1] != ','; i--)
+                ;
+              for (; i < state->curpos && state->wbuf[i] == ' '; i++)
+                ;
+            }
+
+            my_wcstombs (buf, buflen, state->wbuf + i, state->curpos - i);
+            mutt_query_complete (buf, buflen);
+            replace_part (state, i, buf);
+
+            rv = 1; 
+            goto bye;
+          }
+          else
+            goto self_insert;
+
+        case OP_EDITOR_QUOTE_CHAR:
+          {
+            event_t event;
+            /*ADDCH (LastKey);*/
+            event = mutt_getch ();
+            if (event.ch != -1)
+            {
+              LastKey = event.ch;
+              goto self_insert;
+            }
+          }
+
+        case OP_EDITOR_TRANSPOSE_CHARS:
+          if (state->lastchar < 2)
+            BEEP ();
+          else
+        {
+            wchar_t t;
+
+            if (state->curpos == 0)
+              state->curpos = 2;
+            else if (state->curpos < state->lastchar)
+              ++state->curpos;
+
+            t = state->wbuf[state->curpos - 2];
+            state->wbuf[state->curpos - 2] = state->wbuf[state->curpos - 1];
+            state->wbuf[state->curpos - 1] = t;
+          }
+          break;
+
+        default:
+          BEEP ();
       }
     }
     else
       }
     }
     else
@@ -617,70 +617,70 @@ self_insert:
 #ifdef KEY_ENTER
       /* treat ENTER the same as RETURN */
       if (ch == KEY_ENTER)
 #ifdef KEY_ENTER
       /* treat ENTER the same as RETURN */
       if (ch == KEY_ENTER)
-       ch = '\r';
+        ch = '\r';
 #endif
 
       /* quietly ignore all other function keys */
       if (ch & ~0xff)
 #endif
 
       /* quietly ignore all other function keys */
       if (ch & ~0xff)
-       continue;
+        continue;
 
       /* gather the octets into a wide character */
       {
 
       /* gather the octets into a wide character */
       {
-       char c;
-       size_t k;
-
-       c = ch;
-       k = mbrtowc (&wc, &c, 1, &mbstate);
-       if (k == (size_t)(-2))
-         continue;
-       else if (k && k != 1)
-       {
-         memset (&mbstate, 0, sizeof (mbstate));
-         continue;
-       }
+        char c;
+        size_t k;
+
+        c = ch;
+        k = mbrtowc (&wc, &c, 1, &mbstate);
+        if (k == (size_t)(-2))
+          continue;
+        else if (k && k != 1)
+        {
+          memset (&mbstate, 0, sizeof (mbstate));
+          continue;
+        }
       }
 
       if (first && (flags & M_CLEAR))
       {
       }
 
       if (first && (flags & M_CLEAR))
       {
-       first = 0;
-       if (IsWPrint (wc)) /* why? */
-         state->curpos = state->lastchar = 0;
+        first = 0;
+        if (IsWPrint (wc)) /* why? */
+          state->curpos = state->lastchar = 0;
       }
 
       if (wc == '\r' || wc == '\n')
       {
       }
 
       if (wc == '\r' || wc == '\n')
       {
-       /* Convert from wide characters */
-       my_wcstombs (buf, buflen, state->wbuf, state->lastchar);
-       if (!pass)
-         mutt_history_add (hclass, buf);
-
-       if (multiple)
-       {
-         char **tfiles;
-         *numfiles = 1;
-         tfiles = safe_calloc (*numfiles, sizeof (char *));
-         mutt_expand_path (buf, buflen);
-         tfiles[0] = safe_strdup (buf);
-         *files = tfiles;
-       }
-       rv = 0; 
-       goto bye;
+        /* Convert from wide characters */
+        my_wcstombs (buf, buflen, state->wbuf, state->lastchar);
+        if (!pass)
+          mutt_history_add (hclass, buf);
+
+        if (multiple)
+        {
+          char **tfiles;
+          *numfiles = 1;
+          tfiles = safe_calloc (*numfiles, sizeof (char *));
+          mutt_expand_path (buf, buflen);
+          tfiles[0] = safe_strdup (buf);
+          *files = tfiles;
+        }
+        rv = 0; 
+        goto bye;
       }
       else if (wc && (wc < ' ' || IsWPrint (wc))) /* why? */
       {
       }
       else if (wc && (wc < ' ' || IsWPrint (wc))) /* why? */
       {
-       if (state->lastchar >= state->wbuflen)
-       {
-         state->wbuflen = state->lastchar + 20;
-         safe_realloc (&state->wbuf, state->wbuflen * sizeof (wchar_t));
-       }
-       memmove (state->wbuf + state->curpos + 1, state->wbuf + state->curpos, (state->lastchar - state->curpos) * sizeof (wchar_t));
-       state->wbuf[state->curpos++] = wc;
-       state->lastchar++;
+        if (state->lastchar >= state->wbuflen)
+        {
+          state->wbuflen = state->lastchar + 20;
+          safe_realloc (&state->wbuf, state->wbuflen * sizeof (wchar_t));
+        }
+        memmove (state->wbuf + state->curpos + 1, state->wbuf + state->curpos, (state->lastchar - state->curpos) * sizeof (wchar_t));
+        state->wbuf[state->curpos++] = wc;
+        state->lastchar++;
       }
       else
       {
       }
       else
       {
-       mutt_flushinp ();
-       BEEP ();
+        mutt_flushinp ();
+        BEEP ();
       }
     }
   }
       }
     }
   }
diff --git a/flea b/flea
index c4c056f..ef77e2d 100755 (executable)
--- a/flea
+++ b/flea
@@ -33,7 +33,7 @@ DEBIAN_SUBMIT="submit@bugs.debian.org"
 prefix=/usr/local
 
 DEBUGGER=/usr/bin/gdb
 prefix=/usr/local
 
 DEBUGGER=/usr/bin/gdb
-SENDMAIL=/sw/sbin/sendmail
+SENDMAIL=/usr/sbin/sendmail
 sysconfdir=${prefix}/etc
 pkgdatadir=@pkgdatadir@
 
 sysconfdir=${prefix}/etc
 pkgdatadir=@pkgdatadir@
 
index 493b2de..89711b2 100644 (file)
--- a/keymap.c
+++ b/keymap.c
@@ -266,12 +266,9 @@ static char *get_func (struct binding_t *bindings, int op)
 {
   int i;
 
 {
   int i;
 
-  fprintf(stderr,"get_func: op = %d\n",op);
-
   for (i = 0; bindings[i].name; i++)
   {
     if (bindings[i].op == op) {
   for (i = 0; bindings[i].name; i++)
   {
     if (bindings[i].op == op) {
-      fprintf(stderr,"get_func: name = %s\n",bindings[i].name);
       return bindings[i].name;
     }
   }
       return bindings[i].name;
     }
   }
@@ -391,8 +388,6 @@ int km_dokey (int menu)
     if (LastKey == -1)
       return -1;
 
     if (LastKey == -1)
       return -1;
 
-    fprintf(stderr,"km_dokey got %d (%c) tmp.op = %d\n",LastKey,LastKey,tmp.op);
-
     /* do we have an op already? */
     if (tmp.op)
     {
     /* do we have an op already? */
     if (tmp.op)
     {
diff --git a/menu.c b/menu.c
index 95bc43e..5e46eed 100644 (file)
--- a/menu.c
+++ b/menu.c
@@ -35,13 +35,10 @@ extern size_t UngetCount;
 
 static void print_enriched_string (int attr, unsigned char *s, int do_color)
 {
 
 static void print_enriched_string (int attr, unsigned char *s, int do_color)
 {
-  wchar_t wc;
   size_t k;
   size_t n = mutt_strlen ((char *)s);
   size_t k;
   size_t n = mutt_strlen ((char *)s);
-  mbstate_t mbstate;
   short f1, f2, b1, b2;
 
   short f1, f2, b1, b2;
 
-  memset (&mbstate, 0, sizeof (mbstate));
   while (*s)
   {
     if (*s < M_TREE_MAX)
   while (*s)
   {
     if (*s < M_TREE_MAX)
@@ -136,10 +133,10 @@ static void print_enriched_string (int attr, unsigned char *s, int do_color)
       }
       if (do_color) attrset(attr);
     }
       }
       if (do_color) attrset(attr);
     }
-    else if ((k = mbrtowc (&wc, (char *)s, n, &mbstate)) > 0)
+    else if (*s > 0)
     {
     {
-      addnstr ((char *)s, k);
-      s += k, n-= k;
+      addnstr ((char *)s, 1);
+      s += 1, n-= 1;
     }
     else
       break;
     }
     else
       break;
index 496b6c2..2df565e 100644 (file)
Binary files a/po/bg.gmo and b/po/bg.gmo differ
index 40d6655..3b4efea 100644 (file)
Binary files a/po/da.gmo and b/po/da.gmo differ
index c31ff1a..73efab5 100644 (file)
Binary files a/po/de.gmo and b/po/de.gmo differ
index 2a4bc27..bcfcefa 100644 (file)
Binary files a/po/el.gmo and b/po/el.gmo differ
index 2828695..45d0454 100644 (file)
Binary files a/po/et.gmo and b/po/et.gmo differ
index 2adb998..7a251b8 100644 (file)
Binary files a/po/gl.gmo and b/po/gl.gmo differ
index 747c4c8..701361a 100644 (file)
Binary files a/po/it.gmo and b/po/it.gmo differ
index 14596fe..f9d3d12 100644 (file)
Binary files a/po/ja.gmo and b/po/ja.gmo differ
index bf2ddb8..119d0d0 100644 (file)
Binary files a/po/sv.gmo and b/po/sv.gmo differ
index efa9913..810c028 100644 (file)
Binary files a/po/zh_CN.gmo and b/po/zh_CN.gmo differ
diff --git a/stderr.txt b/stderr.txt
deleted file mode 100644 (file)
index 3bf4512..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-km_dokey got 98 (b) tmp.op = 0
-km_dokey got 58 (:) tmp.op = 0
-km_dokey got 58 (:) tmp.op = 0
-86 200
-km_dokey got 116 (t) tmp.op = 0
-km_dokey got 111 (o) tmp.op = 0
-km_dokey got 103 (g) tmp.op = 0
-km_dokey got 103 (g) tmp.op = 0
-km_dokey got 108 (l) tmp.op = 0
-km_dokey got 101 (e) tmp.op = 0
-km_dokey got 32 ( ) tmp.op = 0
-km_dokey got 115 (s) tmp.op = 0
-km_dokey got 105 (i) tmp.op = 0
-km_dokey got 100 (d) tmp.op = 0
-km_dokey got 101 (e) tmp.op = 0
-km_dokey got 98 (b) tmp.op = 0
-km_dokey got 97 (a) tmp.op = 0
-km_dokey got 114 (r) tmp.op = 0
-km_dokey got 95 (_) tmp.op = 0
-km_dokey got 118 (v) tmp.op = 0
-km_dokey got 105 (i) tmp.op = 0
-km_dokey got 115 (s) tmp.op = 0
-km_dokey got 105 (i) tmp.op = 0
-km_dokey got 98 (b) tmp.op = 0
-km_dokey got 108 (l) tmp.op = 0
-km_dokey got 101 (e) tmp.op = 0
-km_dokey got 13 (\r) tmp.op = 0
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 14 (\ e) tmp.op = 0
-198 200
-km_dokey got 98 (b) tmp.op = 0
-km_dokey got 58 (:) tmp.op = 0
-km_dokey got 58 (:) tmp.op = 0
-86 200
-km_dokey got 116 (t) tmp.op = 0
-km_dokey got 111 (o) tmp.op = 0
-km_dokey got 103 (g) tmp.op = 0
-km_dokey got 103 (g) tmp.op = 0
-km_dokey got 108 (l) tmp.op = 0
-km_dokey got 101 (e) tmp.op = 0
-km_dokey got 32 ( ) tmp.op = 0
-km_dokey got 115 (s) tmp.op = 0
-km_dokey got 105 (i) tmp.op = 0
-km_dokey got 100 (d) tmp.op = 0
-km_dokey got 101 (e) tmp.op = 0
-km_dokey got 98 (b) tmp.op = 0
-km_dokey got 97 (a) tmp.op = 0
-km_dokey got 114 (r) tmp.op = 0
-km_dokey got 95 (_) tmp.op = 0
-km_dokey got 118 (v) tmp.op = 0
-km_dokey got 105 (i) tmp.op = 0
-km_dokey got 115 (s) tmp.op = 0
-km_dokey got 105 (i) tmp.op = 0
-km_dokey got 98 (b) tmp.op = 0
-km_dokey got 108 (l) tmp.op = 0
-km_dokey got 101 (e) tmp.op = 0
-km_dokey got 13 (\r) tmp.op = 0
-km_dokey got 98 (b) tmp.op = 0
-km_dokey got 58 (:) tmp.op = 0
-km_dokey got 58 (:) tmp.op = 0
-86 200
-km_dokey got 116 (t) tmp.op = 0
-km_dokey got 111 (o) tmp.op = 0
-km_dokey got 103 (g) tmp.op = 0
-km_dokey got 103 (g) tmp.op = 0
-km_dokey got 108 (l) tmp.op = 0
-km_dokey got 101 (e) tmp.op = 0
-km_dokey got 32 ( ) tmp.op = 0
-km_dokey got 115 (s) tmp.op = 0
-km_dokey got 105 (i) tmp.op = 0
-km_dokey got 100 (d) tmp.op = 0
-km_dokey got 101 (e) tmp.op = 0
-km_dokey got 98 (b) tmp.op = 0
-km_dokey got 97 (a) tmp.op = 0
-km_dokey got 114 (r) tmp.op = 0
-km_dokey got 95 (_) tmp.op = 0
-km_dokey got 118 (v) tmp.op = 0
-km_dokey got 105 (i) tmp.op = 0
-km_dokey got 115 (s) tmp.op = 0
-km_dokey got 105 (i) tmp.op = 0
-km_dokey got 98 (b) tmp.op = 0
-km_dokey got 108 (l) tmp.op = 0
-km_dokey got 101 (e) tmp.op = 0
-km_dokey got 13 (\r) tmp.op = 0
-km_dokey got 16 (\10) tmp.op = 0
-199 200
-km_dokey got 16 (\10) tmp.op = 0
-199 200
-km_dokey got 16 (\10) tmp.op = 0
-199 200
-km_dokey got 263 (\a) tmp.op = 0
-km_dokey got 263 (\a) tmp.op = 0
-0 200
-km_dokey got 63 (?) tmp.op = 0
-km_dokey got 63 (?) tmp.op = 0
-km_dokey got 113 (q) tmp.op = 0
-158 200