]> git.wh0rd.org Git - nano.git/commitdiff
change the behavior of Esc Esc [3-digit number from 000 to 255] so that
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Mon, 13 Jun 2005 17:26:19 +0000 (17:26 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Mon, 13 Jun 2005 17:26:19 +0000 (17:26 +0000)
it enters the byte with that value regardless of whether we're in UTF-8
mode or not, and update the help text to mention this; this will allow
searching for and replacing raw bytes with their equivalent multibyte
sequences as entered using verbatim input

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2653 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
src/nano.c
src/winio.c

index 2d4416893026c5696a0a81f3385cbad760160857..8477f9dae3ef8ca3a65234cdc1a8a8a98d4e705f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -66,6 +66,13 @@ CVS code -
          make_valid_mbstring()), mbstrncasecmp(), mbstrcasestr(),
          mbrevstrcasestr(), etc.; removal of is_alnum_char() and
          is_alnum_wchar(). (DLR)
+       - Change the behavior of Esc Esc [3-digit number from 000 to
+         255] so that it enters the byte with that value regardless of
+         whether we're in UTF-8 mode or not, and update the help text
+         to mention this.  This will allow searching for and replacing
+         raw bytes with their equivalent multibyte sequences as entered
+         using verbatim input.  Changes to help_init() and
+         parse_kbinput(). (DLR)
        - Implement word count via Meta-D at the main window.  Note that
          this is disabled when NANO_SMALL is defined.  New functions
          do_word_count() and do_next_word_void(); changes to
index c5cd9a649d4445a454c475dd03da2680f30527fb..bf8e81a3107a10b2cb09b6ef146c99ae2c212dac 100644 (file)
@@ -419,10 +419,9 @@ void help_init(void)
                "or Meta key depending on your keyboard setup.  ");
        htx[2] = N_("Also, pressing Esc twice and then typing a "
                "three-digit decimal number from 000 to 255 will enter "
-               "the character with the corresponding value.  The "
-               "following keystrokes are available in the main editor "
-               "window.  Alternative keys are shown in "
-               "parentheses:\n\n");
+               "the byte with the corresponding value.  The following "
+               "keystrokes are available in the main editor window.  "
+               "Alternative keys are shown in parentheses:\n\n");
     }
 
     htx[0] = _(htx[0]);
index c7e39726e3b25a23b4d7d5809093d4b70d367dfb..b3949263c0557e40c3aefafa4ca16aa5290eebeb 100644 (file)
@@ -550,9 +550,6 @@ int parse_kbinput(WINDOW *win, bool *meta_key, bool *func_key
                                );
 
                        if (byte != ERR) {
-                           char *byte_mb;
-                           int byte_mb_len, *seq, i;
-
                            /* If we've read in a complete byte
                             * sequence, reset the byte sequence counter
                             * and the escape counter, and put back the
@@ -560,20 +557,8 @@ int parse_kbinput(WINDOW *win, bool *meta_key, bool *func_key
                            byte_digits = 0;
                            escapes = 0;
 
-                           /* Put back the multibyte equivalent of the
-                            * byte value. */
-                           byte_mb = make_mbchar(byte, &byte_mb_len);
-
-                           seq = (int *)nmalloc(byte_mb_len *
-                               sizeof(int));
-
-                           for (i = 0; i < byte_mb_len; i++)
-                               seq[i] = (unsigned char)byte_mb[i];
-
-                           unget_input(seq, byte_mb_len);
-
-                           free(seq);
-                           free(byte_mb);
+                           /* Put back the byte value. */
+                           unget_input(&byte, 1);
                        }
                    } else {
                        /* Reset the escape counter. */