Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Distributed Completion/ structure and compinit
- X-seq: zsh-workers 14107
- From: Sven Wischnowsky <wischnow@xxxxxxxxxxxxxxxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxx
- Subject: Re: Distributed Completion/ structure and compinit
- Date: Thu, 26 Apr 2001 15:01:23 +0200 (MET DST)
- In-reply-to: <1010426081035.ZM12445@xxxxxxxxxxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
Bart Schaefer wrote:
> ...
>
> Either that, or we should fix the docs. Having it work for the source
> tree layout is helpful to developers, I think: No "make install" before
> trying out some change, just set _compdir and let compinstall figure it
> out. However, developers are also likely capable of setting the fpath
> manually, so it's not that big a deal.
Not tested, but should work.
Bye
Sven
Index: Completion/compaudit
===================================================================
RCS file: /cvsroot/zsh/zsh/Completion/compaudit,v
retrieving revision 1.2
diff -u -r1.2 compaudit
--- Completion/compaudit 2001/04/02 13:04:04 1.2
+++ Completion/compaudit 2001/04/26 13:00:56
@@ -55,11 +55,11 @@
# Too few files: we need some more directories, or we need to check
# that all directories (not just Base) are present.
_i_addfiles=()
- if [[ $_compdir = */Base ]]; then
- # Add all the Completion subdirectories
- _i_addfiles=(${_compdir:h}/*(/))
+ if [[ -d $_compdir/Base/Core ]]; then
+ # Add all the Completion subdirectories (CVS-layout)
+ _i_addfiles=(${_compdir}/*/*(/))
elif [[ -d $_compdir/Base ]]; then
- # Likewise
+ # Likewise (installation-layout)
_i_addfiles=(${_compdir}/*(/))
fi
for _i_line in {1..$#i_addfiles}; do
Index: Completion/compinstall
===================================================================
RCS file: /cvsroot/zsh/zsh/Completion/compinstall,v
retrieving revision 1.2
diff -u -r1.2 compinstall
--- Completion/compinstall 2001/04/02 13:04:04 1.2
+++ Completion/compinstall 2001/04/26 13:00:57
@@ -190,7 +190,9 @@
__ci_set_compdir $fpath
-if [[ -d $compdir/Base ]]; then
+if [[ -d $compdir/Base/Core ]]; then
+ subdirs=2
+elif [[ -d $compdir/Base ]]; then
subdirs=1
### compdir=${compdir:h}
fi
@@ -229,12 +231,18 @@
compinstall again."
fi
fi
- if [[ -n $subdirs ]]; then
+ if [[ $subdirs = 2 ]]; then
+ fpath_line=($compdir/[A-Z]*/[A-Z]*)
+ fpath_line="fpath=($fpath ${(F)fpath_line})"
+ elif [[ -n $subdirs ]]; then
fpath_line=($compdir/[A-Z]*)
fpath_line="fpath=($fpath ${(F)fpath_line})"
fi
else
- if [[ -n $subdirs ]]; then
+ if [[ $subdirs = 2 ]]; then
+ print "Completion directories $compdir/*/*
+are already in your \$fpath, good."
+ elif [[ -n $subdirs ]]; then
print "Completion directories $compdir/*
are already in your \$fpath, good."
else
Index: Doc/Zsh/compsys.yo
===================================================================
RCS file: /cvsroot/zsh/zsh/Doc/Zsh/compsys.yo,v
retrieving revision 1.118
diff -u -r1.118 compsys.yo
--- Doc/Zsh/compsys.yo 2001/04/26 12:13:37 1.118
+++ Doc/Zsh/compsys.yo 2001/04/26 13:00:59
@@ -142,9 +142,10 @@
For incomplete installations, if tt(compinit) does not find enough files
beginning with an underscore (fewer than twenty) in the search path, it
will try to find more by adding the directory tt(_compdir) to the search
-path. Furthermore, if the directory in question ends in the path segment
-tt(Base), or has a subdirectory named tt(Base), tt(compinit) will add all
-subdirectories of the directory where tt(Base) is to the path: this allows
+path. If that directory has a subdirectory named tt(Base), all
+subdirectories will be added to the path. Furthermore, if the subdirectory
+tt(Base) has a subdirectory named tt(Core), tt(compinit) will add all
+subdirectories of the subdirectories is to the path: this allows
the functions to be in the same format as in the tt(zsh) source
distribution.
--
Sven Wischnowsky wischnow@xxxxxxxxxxxxxxxxxxxxxxx
Messages sorted by:
Reverse Date,
Date,
Thread,
Author