* Made it work for Big5 locales (Patches by Matthew Fischer).

* Fixed a problem with the 'r' command in EUC-JP and Big5 locales (Bugreport
  by Matthew Fischer).
This commit is contained in:
Gunnar Ritter 2005-01-20 22:33:32 +00:00
parent 28950221e4
commit 11445d2b92
5 changed files with 14 additions and 10 deletions

View File

@ -1,3 +1,8 @@
Release ...
* Made it work for Big5 locales (Patches by Matthew Fischer).
* Fixed a problem with the 'r' command in EUC-JP and Big5 locales (Bugreport
by Matthew Fischer).
Release 1/19/05 Release 1/19/05
* The last release erroneously made 'X' work like 'x' in visual mode. It now * The last release erroneously made 'X' work like 'x' in visual mode. It now
deletes the character before the cursor again as documented (Bugreport by deletes the character before the cursor again as documented (Bugreport by

View File

@ -73,7 +73,7 @@
#ifndef lint #ifndef lint
#ifdef DOSCCS #ifdef DOSCCS
static char sccsid[] = "@(#)ex_put.c 1.28 (gritter) 1/16/05"; static char sccsid[] = "@(#)ex_put.c 1.29 (gritter) 1/20/05";
#endif #endif
#endif #endif
@ -761,7 +761,7 @@ dontcr:
plodput(vtube[outline][outcol-1]); plodput(vtube[outline][outcol-1]);
} else } else
plodput(i); plodput(i);
outcol += i == MULTICOL ? 1 : colsc(i); outcol += i == MULTICOL ? 1 : colsc(i & ~MULTICOL);
} }
if (plodcnt < 0) if (plodcnt < 0)
goto out; goto out;

View File

@ -70,12 +70,12 @@
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
* Sccsid @(#)ex_version.c 1.117 (gritter) 1/19/05 * Sccsid @(#)ex_version.c 1.118 (gritter) 1/20/05
*/ */
#include "ex.h" #include "ex.h"
static char *versionstring = "@(#)Version 4.0 (gritter) 1/19/05"; static char *versionstring = "@(#)Version 4.0 (gritter) 1/20/05";
void void
printver(void) printver(void)

View File

@ -73,7 +73,7 @@
#ifndef lint #ifndef lint
#ifdef DOSCCS #ifdef DOSCCS
static char sccsid[] = "@(#)ex_vget.c 1.27 (gritter) 1/16/05"; static char sccsid[] = "@(#)ex_vget.c 1.28 (gritter) 1/20/05";
#endif #endif
#endif #endif
@ -168,9 +168,8 @@ readwc(int fd, int *cp)
} }
if (pbuf[idx][0] & 0200) { if (pbuf[idx][0] & 0200) {
sz = 1; sz = 1;
while (pbuf[idx][i-1] & 0200 && i < mb_cur_max && while ((sz = mbrtowc(&wc, pbuf[idx], i, &state[idx]))
(sz = mbrtowc(&wc, pbuf[idx], i, == (size_t)-2 && i < mb_cur_max) {
&state[idx])) == (size_t)-2) {
if ((c = read(fd, &b, 1)) <= 0) { if ((c = read(fd, &b, 1)) <= 0) {
incompl[idx] = 1; incompl[idx] = 1;
break; break;

View File

@ -73,7 +73,7 @@
#ifndef lint #ifndef lint
#ifdef DOSCCS #ifdef DOSCCS
static char sccsid[] = "@(#)ex_vput.c 1.42 (gritter) 1/16/05"; static char sccsid[] = "@(#)ex_vput.c 1.43 (gritter) 1/20/05";
#endif #endif
#endif #endif
@ -268,7 +268,7 @@ vcursat(register char *cp)
if (cp <= linebuf && linebuf[0] == 0) if (cp <= linebuf && linebuf[0] == 0)
vgotoCL(value(NUMBER) << 3); vgotoCL(value(NUMBER) << 3);
else else
vgotoCL(column(cp - 1)); vgotoCL(column(cp + skipleft(linebuf, cp)));
} }
/* /*