summaryrefslogtreecommitdiff
path: root/Completion/Unix
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2005-03-03 14:13:03 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2005-03-03 14:13:03 +0000
commit1b50dff802c0aa187c8947af9a017495e98c097a (patch)
tree6198308ec25a90a467e0f02de7788ac95fa5bc8d /Completion/Unix
parenteb8232757617f5de0a602f6de27cbc9c77d3447c (diff)
downloadzsh-1b50dff802c0aa187c8947af9a017495e98c097a.tar.gz
zsh-1b50dff802c0aa187c8947af9a017495e98c097a.zip
20921: using UCS-4BE instead of ISO-10646 to identify character encoding
is more portable, find more encodings in iconv completion on Solaris 20924: make error message more specific
Diffstat (limited to 'Completion/Unix')
-rw-r--r--Completion/Unix/Command/_iconv4
1 files changed, 3 insertions, 1 deletions
diff --git a/Completion/Unix/Command/_iconv b/Completion/Unix/Command/_iconv
index e1528aec5..92fa17e34 100644
--- a/Completion/Unix/Command/_iconv
+++ b/Completion/Unix/Command/_iconv
@@ -1,7 +1,8 @@
#compdef iconv
-local expl curcontext="$curcontext" state line codeset ret=1
+local expl curcontext="$curcontext" state line ret=1
local LOCPATH="${LOCPATH:-/usr/lib/nls/loc}"
+local -U codeset
if _pick_variant gnu=GNU unix --version; then
@@ -40,6 +41,7 @@ else
if [[ $state = codeset ]]; then
if [[ -f /usr/lib/iconv/iconv_data ]]; then # IRIX & Solaris
codeset=( ${${(f)"$(</usr/lib/iconv/iconv_data)"}%%[[:blank:]]*} )
+ codeset+=( /usr/lib/iconv/*%*.so(Ne.'reply=( ${${REPLY:t}%%%*} ${${REPLY:r}#*%} )'.) )
elif [[ -d $LOCPATH/iconv ]]; then # OSF
codeset=( $LOCPATH/iconv/*(N:t) )
codeset=( ${(j:_:s:_:)codeset} )