mirror of https://github.com/tildeclub/ex-vi.git
* The 'cw' visual command with a multibyte character as last character of
the affected word located at the end of the line left garbage bytes past the end of the new text.
This commit is contained in:
parent
91464fa6fb
commit
4d481fff00
3
Changes
3
Changes
|
@ -6,6 +6,9 @@ Release ...
|
||||||
screen representation was sometimes not updated accordingly.
|
screen representation was sometimes not updated accordingly.
|
||||||
* Undoing the replacement of a multicolumn character by a singlecolumn
|
* Undoing the replacement of a multicolumn character by a singlecolumn
|
||||||
character twice made the singlecolumn character invisible.
|
character twice made the singlecolumn character invisible.
|
||||||
|
* The 'cw' visual command with a multibyte character as last character of
|
||||||
|
the affected word located at the end of the line left garbage bytes past
|
||||||
|
the end of the new text.
|
||||||
* Visual 'U' followed by 'u' lead to garbage on the screen when multibyte
|
* Visual 'U' followed by 'u' lead to garbage on the screen when multibyte
|
||||||
characters were present on the changed line.
|
characters were present on the changed line.
|
||||||
* The '\u', '\l', '\U', and '\L' substitution sequences work with multibyte
|
* The '\u', '\l', '\U', and '\L' substitution sequences work with multibyte
|
||||||
|
|
|
@ -73,7 +73,7 @@
|
||||||
|
|
||||||
#ifndef lint
|
#ifndef lint
|
||||||
#ifdef DOSCCS
|
#ifdef DOSCCS
|
||||||
static char sccsid[] = "@(#)ex_voper.c 1.23 (gritter) 12/1/04";
|
static char sccsid[] = "@(#)ex_voper.c 1.24 (gritter) 1/11/05";
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -830,7 +830,7 @@ find(int c)
|
||||||
int
|
int
|
||||||
word(register void (*op)(int), int cnt)
|
word(register void (*op)(int), int cnt)
|
||||||
{
|
{
|
||||||
register int which = 0;
|
register int which = 0, i;
|
||||||
register char *iwc;
|
register char *iwc;
|
||||||
register line *iwdot = wdot;
|
register line *iwdot = wdot;
|
||||||
|
|
||||||
|
@ -839,9 +839,9 @@ word(register void (*op)(int), int cnt)
|
||||||
which = wordch(wcursor);
|
which = wordch(wcursor);
|
||||||
while (wordof(which, wcursor)) {
|
while (wordof(which, wcursor)) {
|
||||||
if (cnt == 1 && op != vmove &&
|
if (cnt == 1 && op != vmove &&
|
||||||
wcursor[skipright(linebuf, wcursor)]
|
wcursor[i = skipright(linebuf, wcursor)]
|
||||||
== 0) {
|
== 0) {
|
||||||
wcursor++;
|
wcursor += i;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (!lnext())
|
if (!lnext())
|
||||||
|
|
Loading…
Reference in New Issue