Charles E Campbell Jr wrote:
mbbill wrote:

I met a very strange problem recently, that is
when I set the following options:
set encoding=utf-8
set ignorecase
then the expression: if "\xe4"=="\xe4" fails.
I test it using:
if "\xe4"=="\xe4"
  echo "test"
endif
but I got nothing output, why ?

Try

set encoding=utf-8
if "\xe4" == "\xe4"
redraw!
echo "equal!"
else
redraw!
echo "not equal"
endif


Looks like your message is doing an unwanted disappearing act.

Regards,
Chip Campbell



It's not as simple as that, Dr. Chip: I get 0 (zero) as reply to

        :echo ("\xe4" == "\xe4")

when 'encoding' is UTF-8. However, the byte 0xE4 by itself is not a valid character in UTF-8. I also get 1 (one) in reply to

        :echo ("ä" == "\xc3\xa4")

where ä (a-umlaut) is Unicode codepoint U+00E4, represented in UTF-8 by the two bytes 0xC3 0xA4.


Best regards,
Tony.

Reply via email to