LANG, LC_*, and unicode
I installed a package which nattered at me:
elog messages for the following packages generated by process 22063 on host df.crowfix.com: - app-dicts/aspell-fo-0.51.0 >>> Messages generated for package app-dicts/aspell-fo-0.51.0 by process 22063 on 20110105-150049 PST: ERROR: install This package installs one or more file names containing characters that do not match your current locale settings. The current setting for filesystem encoding is 'ANSI_X3.4-1968'. usr/lib64/aspell-0.60/fufffdroyskt.alias For best results, UTF-8 encoding is recommended. See the Gentoo Linux Localization Guide for instructions about how to configure your locale for UTF-8 encoding: http://www.gentoo.org/doc/en/guide-localization.xml Now being the simple old fashioned sort, I never set up locale on my machine, so neither LANG nor any LC_* are set. But it does occur to me that I ought to get with the times, especially if I like to install odd language packs just to run spell check in different languages once in a while for spits and dribbles. I tried ls /usr/lib64/aspell-0.60/f* and LANG=en_US.UTF-8 ls /usr/lib64/aspell-0.60/f* and the only difference was whether "fufffdroyskt.alias" was first or last in the listing. It still displayed the unicode char as "ufffd". So supposing I set LANG=en_US.UTF-8 and do nothing else. Will it simply change how "unusual" file names are displayed, will it change how future file names are created, will it affect any text files I now have, or ones I create from now on? In other words, will it mess up what I have? -- ... _._. ._ ._. . _._. ._. ___ .__ ._. . .__. ._ .. ._. Felix Finch: scarecrow repairman & rocket surgeon / felix@crowfix.com GPG = E987 4493 C860 246C 3B1E 6477 7838 76E9 182E 8151 ITAR license #4933 I've found a solution to Fermat's Last Theorem but I see I've run out of room o |
LANG, LC_*, and unicode
* *LANG=en_US.UTF-8 ls /usr/lib64/aspell-0.60/f*
and the only difference was whether "fufffdroyskt.alias" was first or last in the listing. *It still displayed the unicode char as "ufffd". So supposing I set LANG=en_US.UTF-8 and do nothing else. *Will it simply change how "unusual" file names are displayed, will it change how future file names are created, will it affect any text files I now have, or ones I create from now on? In other words, will it mess up what I have? Dr. Finchly, Creating files and getting them to show the correct glyph is very different from your terminal doing so. In the kernel there is a setting for which locales your FILESYSTEMS understand and can grok/display. You may choose to let your terminal display those glyphs or not. Applications use the same LANG and LC_ thingies to decipher what your system is trying to do, so make sure you understand the difference between the two. Usually, setting LANG to en_US.UTF-8 or en_GR.UTF-8 is sufficient. You'll probably still just use ASCII for your filename characters. So any applications like web browsers will have access to all those locales that you have listed in your /etc/locale.gen file. Your filesystems are different. You can load modules for them but usually you just load UTF-8 and ASCII and the main ISO-8859-1 or -15 or -whatever and you're set to display funky filenames. Easy way: /etc/env.d$ cat 02locale* LANG="en_US.UTF-8" So, just make some kind of locale file in /etc/env.d and you're set. Recompile any nls-dependent apps and Bob's your uncle. -- Bill Longman |
LANG, LC_*, and unicode
And make sure your /etc/locale.gen has the right locales....
|
| All times are GMT. The time now is 01:22 PM. |
VBulletin, Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.