131 lines
3.3 KiB
Plaintext
131 lines
3.3 KiB
Plaintext
|
To: vim_dev@googlegroups.com
|
||
|
Subject: Patch 7.3.320
|
||
|
Fcc: outbox
|
||
|
From: Bram Moolenaar <Bram@moolenaar.net>
|
||
|
Mime-Version: 1.0
|
||
|
Content-Type: text/plain; charset=UTF-8
|
||
|
Content-Transfer-Encoding: 8bit
|
||
|
------------
|
||
|
|
||
|
Patch 7.3.320
|
||
|
Problem: When a 0xa0 character is in a sourced file the error message for
|
||
|
unrecognized command does not show the problem.
|
||
|
Solution: Display 0xa0 as <a0>.
|
||
|
Files: src/ex_docmd.c
|
||
|
|
||
|
|
||
|
*** ../vim-7.3.319/src/ex_docmd.c 2011-07-20 16:36:35.000000000 +0200
|
||
|
--- src/ex_docmd.c 2011-09-21 19:02:15.000000000 +0200
|
||
|
***************
|
||
|
*** 61,66 ****
|
||
|
--- 61,67 ----
|
||
|
static char_u *do_one_cmd __ARGS((char_u **, int, char_u *(*fgetline)(int, void *, int), void *cookie));
|
||
|
static int if_level = 0; /* depth in :if */
|
||
|
#endif
|
||
|
+ static void append_command __ARGS((char_u *cmd));
|
||
|
static char_u *find_command __ARGS((exarg_T *eap, int *full));
|
||
|
|
||
|
static void ex_abbreviate __ARGS((exarg_T *eap));
|
||
|
***************
|
||
|
*** 2136,2145 ****
|
||
|
{
|
||
|
STRCPY(IObuff, _("E492: Not an editor command"));
|
||
|
if (!sourcing)
|
||
|
! {
|
||
|
! STRCAT(IObuff, ": ");
|
||
|
! STRNCAT(IObuff, *cmdlinep, 40);
|
||
|
! }
|
||
|
errormsg = IObuff;
|
||
|
}
|
||
|
goto doend;
|
||
|
--- 2137,2143 ----
|
||
|
{
|
||
|
STRCPY(IObuff, _("E492: Not an editor command"));
|
||
|
if (!sourcing)
|
||
|
! append_command(*cmdlinep);
|
||
|
errormsg = IObuff;
|
||
|
}
|
||
|
goto doend;
|
||
|
***************
|
||
|
*** 2708,2715 ****
|
||
|
STRCPY(IObuff, errormsg);
|
||
|
errormsg = IObuff;
|
||
|
}
|
||
|
! STRCAT(errormsg, ": ");
|
||
|
! STRNCAT(errormsg, *cmdlinep, IOSIZE - STRLEN(IObuff) - 1);
|
||
|
}
|
||
|
emsg(errormsg);
|
||
|
}
|
||
|
--- 2706,2712 ----
|
||
|
STRCPY(IObuff, errormsg);
|
||
|
errormsg = IObuff;
|
||
|
}
|
||
|
! append_command(*cmdlinep);
|
||
|
}
|
||
|
emsg(errormsg);
|
||
|
}
|
||
|
***************
|
||
|
*** 2797,2802 ****
|
||
|
--- 2794,2835 ----
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
+ * Append "cmd" to the error message in IObuff.
|
||
|
+ * Takes care of limiting the length and handling 0xa0, which would be
|
||
|
+ * invisible otherwise.
|
||
|
+ */
|
||
|
+ static void
|
||
|
+ append_command(cmd)
|
||
|
+ char_u *cmd;
|
||
|
+ {
|
||
|
+ char_u *s = cmd;
|
||
|
+ char_u *d;
|
||
|
+
|
||
|
+ STRCAT(IObuff, ": ");
|
||
|
+ d = IObuff + STRLEN(IObuff);
|
||
|
+ while (*s != NUL && d - IObuff < IOSIZE - 7)
|
||
|
+ {
|
||
|
+ if (
|
||
|
+ #ifdef FEAT_MBYTE
|
||
|
+ enc_utf8 ? (s[0] == 0xc2 && s[1] == 0xa0) :
|
||
|
+ #endif
|
||
|
+ *s == 0xa0)
|
||
|
+ {
|
||
|
+ s +=
|
||
|
+ #ifdef FEAT_MBYTE
|
||
|
+ enc_utf8 ? 2 :
|
||
|
+ #endif
|
||
|
+ 1;
|
||
|
+ STRCPY(d, "<a0>");
|
||
|
+ d += 4;
|
||
|
+ }
|
||
|
+ else
|
||
|
+ MB_COPY_CHAR(s, d);
|
||
|
+ }
|
||
|
+ *d = NUL;
|
||
|
+ }
|
||
|
+
|
||
|
+ /*
|
||
|
* Find an Ex command by its name, either built-in or user.
|
||
|
* Start of the name can be found at eap->cmd.
|
||
|
* Returns pointer to char after the command name.
|
||
|
*** ../vim-7.3.319/src/version.c 2011-09-21 18:23:02.000000000 +0200
|
||
|
--- src/version.c 2011-09-21 19:04:35.000000000 +0200
|
||
|
***************
|
||
|
*** 711,712 ****
|
||
|
--- 711,714 ----
|
||
|
{ /* Add new patch number below this line */
|
||
|
+ /**/
|
||
|
+ 320,
|
||
|
/**/
|
||
|
|
||
|
--
|
||
|
hundred-and-one symptoms of being an internet addict:
|
||
|
28. You have comandeered your teenager's phone line for the net and even his
|
||
|
friends know not to call on his line anymore.
|
||
|
|
||
|
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
|
||
|
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
|
||
|
\\\ an exciting new programming language -- http://www.Zimbu.org ///
|
||
|
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
|