This one is weird - on x86_64-64, plus ncurses built with wide character support, in a UTF-8 locale vim and less display garbage for many wide characters. On x86_64 multilib, it works correctly. There is a workaround: for vim
:set enc=utf-8
and for less
export LESSCHARSET=UTF-8
Digging around by instrumenting 'less' shows that nl_langinfo for CODESET is now returning ANSI_X34-1968 which results in a character set of ascii. On working systems (CLFS-1.0.0 with wide character support, x86_64 multilib with wide character support, LFS) the correct value ('UTF-8') is returned.