From f3c0df36be042489041968c57b201a1f44664c2b Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Tue, 27 Sep 2005 14:30:30 +0000 Subject: 21769: fix some consequences of 21730 in completion lists --- ChangeLog | 5 +++++ Src/Zle/complist.c | 6 ++++-- Src/utils.c | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 84c88d215..8694faadc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-09-27 Peter Stephenson + + * 21769: Src/utils.c, Src/Zle/complist.c: fix some consequences of + 21730 in completion lists. + 2005-09-27 Clint Adams * Vincent Lefevre: 21767: Completion/Unix/Command/_subversion: diff --git a/Src/Zle/complist.c b/Src/Zle/complist.c index 4290f5f6d..3c94ae11b 100644 --- a/Src/Zle/complist.c +++ b/Src/Zle/complist.c @@ -570,11 +570,12 @@ clnicezputs(Listcols c, char *s, int ml) cc = *s++ ^ 32; for (t = nicechar(cc); *t; t++) { + int nc = (*t == Meta) ? STOUC(*++t ^ 32) : STOUC(*t); if (ml == mlend - 1 && col == columns - 1) { mlprinted = ml - oml; return 0; } - putc(*t, shout); + putc(nc, shout); if (++col == columns) { ml++; if (mscroll && !--mrestlines && (ask = asklistscroll(ml))) { @@ -978,11 +979,12 @@ compnicezputs(char *s, int ml) c = *s++ ^ 32; for (t = nicechar(c); *t; t++) { + int nc = (*t == Meta) ? STOUC(*++t ^ 32) : STOUC(*t); if (ml == mlend - 1 && col == columns - 1) { mlprinted = ml - oml; return 0; } - putc(*t, shout); + putc(nc, shout); if (++col == columns) { ml++; if (mscroll && !--mrestlines && (ask = asklistscroll(ml))) { diff --git a/Src/utils.c b/Src/utils.c index 8a7c557f0..7bf4213c7 100644 --- a/Src/utils.c +++ b/Src/utils.c @@ -260,7 +260,7 @@ nicechar(int c) * This can't happen if the character is printed "nicely", so * this results in a maximum of two bytes total (plus the null). */ - if (itok(c)) { + if (imeta(c)) { *s++ = Meta; *s++ = c ^ 32; } else -- cgit 1.4.1