mirror of
https://github.com/tildeclub/ex-vi.git
synced 2026-01-24 02:10:19 +00:00
* 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:
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())
|
||||||
|
|||||||
Reference in New Issue
Block a user