Hello,
there are claims that the current instructions are overly complicated.
Below is the second part of the proof that they are in fact needed, but
still insufficient for producing a system that works with both UTF-8
based and traditional locales with zero regressions, and anything else
is oversimplification. All testcases assume that LC_ALL is not set, and
that you run them in the 'LANG=en_US.UTF-8 xterm' or 'LANG=ru_RU.UTF-8
xterm' terminal.
3) NCurses:
the wide-character ncurses library is needed in order to remove the
assumption that one character = one character cell = one byte. BLFS
console applications need the wide-character library in order to support
UTF-8 on the console.Try compiling a non-wide-character version of
ncurses in addition to libncursesw, and creating the libncurses.so ->
libncurses.so.5 symlink instead of the current linker script. Then
install Lynx as the BLFS book says, but pass the option
--with-screen=ncurses to force the use of this library. Then go to
http://bugs.linuxbase.org/show_bug.cgi?id=1049 and read the original
testcase there (but you can use the en_US.UTF-8 locale). Then recompile
Lynx --with-screen=ncursesw and redo the test.
4) Vim page has removals of the translated tutorials.
Testcase: in 'LANG=ru_RU.UTF-8 xterm' terminal, start vimtutor.
Expected result: Russian letters.
Acceptable result: fallback to English tutorial (that's what the book does)
Wrong result: accented Latin instead of Russian letters => the tutorial
is completely unreadable.
Distros either ignore the problem (Debian, bad) or convert the tutorials
to UTF-8 (RedHat, achieves the expected result in ru_RU.UTF-8, but
breaks the traditional ru_RU.KOI8-R locale: line drawing characters
appear instead of the text).
5) Groff-1.18.1.1, DB, Man-DB: see testcases at
http://archives.linuxfromscratch.org/mail-archives/lfs-dev/2006-January/055319.html
6) Texinfo: see testcases at
http://archives.linuxfromscratch.org/mail-archives/lfs-dev/2005-August/052947.html
7) Grep: see the patch itself for non-LSB testcases. LSB testcases that
fail without the patch are below.
echo 'abCD' | grep -i -e 'AbcD'
echo 'abCDefGH' | grep -i -e 'AbcDEfgH'
Expected result: match in both cases (obviously).
8) diff, testcase from LSB:
echo "hello こんにちは ですね。 " > file1.txt
echo "hello こんにちは ですね。 " > file2.txt
diff -b file1.txt file2.txt
Expected result: no output (since the files differ only in the amount of
whitespace).
More later.
--
Alexander E. Patrakov
--
http://linuxfromscratch.org/mailman/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page