#autoload
# Arrange that LC_CTYPE retains the current setting so characters in
# file names are handled properly, but other locales are set to C so
# that the completion system can process output without surprises.
# This exports new locale settings, so should only
# be run in a subshell. A typical use is in a $(...).
local ctype
if ctype=${${(f)"$(locale 2>/dev/null)"}:#^LC_CTYPE=*}; then
unset -m LC_\*
[[ -n $ctype ]] && eval export $ctype
else
ctype=${LC_ALL:-${LC_CTYPE:-${LANG:-C}}}
unset -m LC_\*
export LC_CTYPE=$ctype
fi
export LANG=C