Ticket #26017 (new defect)
aqualess-1.6 AquaLess.app ignores set UTF-8 locale and thus does not display correctly UTF-8 encoded text
|Reported by:||Torsten.Maehne@…||Owned by:||macports-tickets@…|
Description (last modified by ryandesign@…) (diff)
AquaLess.app seems to ignore a set UTF-8 locale thus displaying incorrectly text containing umlauts and other special characters received via aless from the command line.
I set-up my Mac OS X 10.6.4 to use the de_CH.UTF-8 locale in the terminal via the LANG and LC_ALL environment variables. All command line tools (e.g., svn, gcc, man, less, locale) correctly take the locale with the specified text encoding into account, but AquaLess.app launched via aless seems to ignore this locale. AquaLess.app seems to take only into account the region specified under "Formats" in the "Language and Text" pane of the system preferences, which in turn seems to set just a "de_CH", "en_US", etc. locale without ".UTF-8" suffix.
I was not able to find a solution for this problem by searching the web, but only hints that it matters where the environment variables are set. I have tried all possibles I found, namely:
- Specifying the environment variables on the command line for the current shell:
$ export LANG=de_CH.UTF-8 $ export LC_ALL=de_CH.UTF-8
- Specifying the environment variables in ~/.MacOSX/environment.plist
- Specifying the environment variables in /etc/launchd.conf
The effect was always the same: The locale with text encoding is set correctly in the shell of iTerm.app and Terminal.app, but AquaLess.app is ignoring the specified text encoding.
To verify this wrong behaviour in AquaLess.app, it suffices to execute the following commands from a Bash shell in Terminal.app
$ export LANG=en_US.UTF-8 $ export LC_ALL=en_US.UTF-8
Then less correctly displays a string containing umlauts and other special characters:
$ echo "öäüéàè\`¿´^'ç°" | less
However, AquaLess.app fails for the same string:
$ echo "öäüéàè\`¿´^'ç°" | aless
It displays "Ã¶Ã¤Ã¼Ã©Ã Ã¨`Â¿Â´^'Ã§Â°" ignoring the UTF-8 text encoding.
aless should either forward the text encoding used in the terminal or AquaLess.app should provide in its Preferences pane a setting to configure the text encoding.