On 28 ÑÐÐÑÐÐÑ 2009 21:22:50 Bart Schaefer wrote: > On Feb 28, 11:37am, Ismail wrote: > } [~]> echo xo<0308>o<0308>o<0308>x > } xÃÃÃx > } > } Somehow "Ã" character is replaced by <0308> while tab completing. [...] > Wolfgang, if you're reading this, something that I forgot to mention > in my reply to you is that sometime during 4.3.x zsh began to pay > closer attention to characters that are absent from the declared LANG > character set and to either refuse to process them at all, or to > render them as digits surrounded by angle brackets. Unfortunately that does not play nicely with PRINTEIGHTBIT. Currently manual states: PRINT_EIGHT_BIT Print eight bit characters literally in completion lists, etc. This option is not necessary if your system correctly returns the printability of eight bit characters (see man page ctype(3)). But PRINTEIGHTBIT affect only one function - (wcs_)niceputchar. Still conversion to <XXXX> happens directly in zrefresh() if character deemed to be unprintable *and* MULTIBYTE_SUPPORT is set. So either documentation must be fixed (by clearly mentioning that this option has no effect if compiled with multibyte). This is bad IMHO as average user is not supposed to know build options. Or code should be fixed. I am not exactly sure - is it correct that raw character is stuffed into output buffer? Or are they all supposed to go via niceputchar in the first place?
Attachment:
signature.asc
Description: This is a digitally signed message part.