I am trying to
investigate this bug, since I am sure it is. One thing I already
noticed that the way the functions void AddStr(char *str)
(display.c:3513) and void AddStrn(char *str, int n) (display.c:3533)
call the funcion void AddUtf8(int c) (encoding.c:638) is errenous. The
latter is called on each byte in the string, while it is intended to be
called on wide characters (here int, should be w_char) convert them to
the multi byte utf8 representation. I think that simple call to
AddChar(c) is OK also in the in the UTF8 case. I tried to change the
conditional compilation directive #ifdef UTF8 (in display.c:3520 and
3540) to #if 0 (comment the code out) and the result is again
unsatisfactory - the Greek characters in the title question marks (and
the same happen for every non-ascii character, even from the latin1
supplement block (U+0080..U+00FF). So, the solution is more involved.
Alexander Kriegisch wrote, On 28/03/07 12:26:
I think this question has been asked before, even though I don't
remember whether it was answered. Maybe it was even you who asked
before. If so, I hope this time somebody can help you (I cannot).
Otherwise, maybe an archive search helps.
Dr. Zvi Har'El mailto:address@hidden Department of Mathematics
tel:+972-54-4227607 icq:179294841 Technion - Israel Institute of Technology
fax:+972-4-8293388 http://www.math.technion.ac.il/~rl/ Haifa 32000, ISRAEL
"If you can't say somethin' nice, don't say nothin' at all." -- Thumper (1942)