Frank Terbeck <ft@bewatermyfriend.org>:
> [snip]
> @@ -431,9 +431,11 @@
> [[ -d /etc/zsh/completion.d ]] && fpath=( $fpath /etc/zsh/completion.d )
> if [[ -d /etc/zsh/functions.d ]] ; then
> fpath+=( /etc/zsh/functions.d )
> - for func in /etc/zsh/functions.d/[^_]*[^~] ; do
> + setopt nonomatch
> + for func in `ls -C /etc/zsh/functions.d/[^_]*[^~] 2>&/dev/null` ; do
> zrcautoload -U ${func:t}
> done
> + unsetopt nonomatch
>
> fi
> fi
> [snap]
>
> No way. Das ist aus so vielen Gründen nicht akzeptabel, das ich
> garnicht erst anfange. Ich weiß auch nicht, was du da mit nonomatch
> erreichen willst. Ich nehme an, du willst null_glob. Erklärung bitte.
>
> Dieser unsägliche ls-Hack kommt auf keinen Fall in Frage:
> <http://bewatermyfriend.org/posts/2007/02-08.12-18-45-rants.html>
Mika hat da ein wenig zuviel weggeschnitten. Schieben wir's mal auf
die Erkrankung. :-)
Leeres Verzeichnis. In Ordnung.
Aber wie gesagt, da will man NULL_GLOB. Und dieses ls-Gefrickel kommt
ganz sicher nicht in die Tüte:
for func in /etc/zsh/functions.d/[^_]*[^~](N.) ; do
'N' schaltet temporär NULL_GLOB ein. '.' matched nur reguläre Dateien
(macht nun noch keinen Unterschied, sollten aber in Zukunft einmal
Subverzeichnisse in functions.d liegen, kommt der Glob damit schon
klar).
Gruß, Frank |