Implement #7495 as per Matt and Ingo's suggestions.

The various LC_ environment variables (as well as LANG) are set in
/etc/profile, based on the output of this new simple bin command locale.
LANG and LC_CTYPE are set based on the first preferred language, whereas the
formatting variables are all set based on the formatting conventions language.

The list of LC_ variables are from the locale command on Linux.

Based on my testing, at least the date command obeys these variables.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42394 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ryan Leavengood 2011-07-09 04:29:20 +00:00
parent 698b6790bc
commit 83a30ba91e
3 changed files with 19 additions and 1 deletions

View File

@ -41,7 +41,8 @@ SYSTEM_BIN = "[" addattr alert arp base64 basename bash bc beep bzip2
$(IDE_ONLY)ideinfo $(IDE_ONLY)idestatus
join kernel_debugger keymap kill
less lessecho lesskey link linkcatkeys listarea listattr listimage listdev
listport listres listsem listusb ln locate logger login logname ls lsindex
listport listres listsem listusb ln locale locate logger login logname ls
lsindex
mail2mbox makebootable mbox2mail md5sum merge message mimeset mkdos mkdir
mkfifo mkfs mkindex mktemp modifiers mount mount_nfs mountvolume mv
netcat netstat nl nohup notify nproc

View File

@ -16,6 +16,21 @@ export PS1="\w> "
export HISTFILESIZE=50
export HISTCONTROL=ignoredups
# Locale
export LANG=`locale -l`
export LC_CTYPE=`locale -c`
export LC_TIME=`locale -f`
export LC_NUMERIC=$LC_TIME
export LC_COLLATE=$LC_TIME
export LC_MONETARY=$LC_TIME
export LC_MESSAGES=$LC_TIME
export LC_PAPER=$LC_TIME
export LC_NAME=$LC_TIME
export LC_ADDRESS=$LC_TIME
export LC_TELEPHONE=$LC_TIME
export LC_MEASUREMENT=$LC_TIME
export LC_IDENTIFICATION=$LC_TIME
alias ls="ls --color"
alias ll="ls -lA"
alias la="ls -A"

View File

@ -11,3 +11,5 @@ BinCommand collectcatkeys : collectcatkeys.cpp RegExp.cpp
BinCommand linkcatkeys : linkcatkeys.cpp : be liblocale.so $(TARGET_LIBSTDC++) ;
BinCommand dumpcatalog : dumpcatalog.cpp : be liblocale.so $(TARGET_LIBSUPC++) ;
BinCommand locale : locale.cpp : be liblocale.so $(TARGET_LIBSUPC++) ;