From d7c13fb2c3b1b014acde9c1cb17a1e34239b9751 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Fri, 18 Feb 2005 13:57:25 +0000 Subject: 20822: Initial code for Unicode/multibyte input 20823: Debugging test in stat wrong for 64-bit systems --- Src/Zle/zle_move.c | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) (limited to 'Src/Zle/zle_move.c') diff --git a/Src/Zle/zle_move.c b/Src/Zle/zle_move.c index 48e9dd64f..b939df06b 100644 --- a/Src/Zle/zle_move.c +++ b/Src/Zle/zle_move.c @@ -353,13 +353,14 @@ vibeginningofline(UNUSED(char **args)) return 0; } -static int vfindchar, vfinddir, tailadd; +static ZLE_INT_T vfindchar; +static int vfinddir, tailadd; /**/ int vifindnextchar(char **args) { - if ((vfindchar = vigetkey()) != -1) { + if ((vfindchar = vigetkey()) != ZLEEOF) { vfinddir = 1; tailadd = 0; return virepeatfind(args); @@ -371,7 +372,7 @@ vifindnextchar(char **args) int vifindprevchar(char **args) { - if ((vfindchar = vigetkey()) != -1) { + if ((vfindchar = vigetkey()) != ZLEEOF) { vfinddir = -1; tailadd = 0; return virepeatfind(args); @@ -383,7 +384,7 @@ vifindprevchar(char **args) int vifindnextcharskip(char **args) { - if ((vfindchar = vigetkey()) != -1) { + if ((vfindchar = vigetkey()) != ZLEEOF) { vfinddir = 1; tailadd = -1; return virepeatfind(args); @@ -395,7 +396,7 @@ vifindnextcharskip(char **args) int vifindprevcharskip(char **args) { - if ((vfindchar = vigetkey()) != -1) { + if ((vfindchar = vigetkey()) != ZLEEOF) { vfinddir = -1; tailadd = 1; return virepeatfind(args); @@ -465,12 +466,12 @@ vifirstnonblank(UNUSED(char **args)) int visetmark(UNUSED(char **args)) { - int ch; + ZLE_INT_T ch; - ch = getkey(0); - if (ch < 'a' || ch > 'z') + ch = getfullchar(0); + if (ch < LETTER_a || ch > LETTER_z) return 1; - ch -= 'a'; + ch -= LETTER_a; vimarkcs[ch] = zlecs; vimarkline[ch] = histline; return 0; @@ -480,15 +481,15 @@ visetmark(UNUSED(char **args)) int vigotomark(UNUSED(char **args)) { - int ch; + ZLE_INT_T ch; - ch = getkey(0); - if (ch == lastchar) + ch = getfullchar(0); + if (ch == LASTFULLCHAR) ch = 26; else { - if (ch < 'a' || ch > 'z') + if (ch < LETTER_a || ch > LETTER_z) return 1; - ch -= 'a'; + ch -= LETTER_a; } if (!vimarkline[ch]) return 1; -- cgit 1.4.1