/usr/share/zsh/5.5.1/help
NameSizeModeActions
alias23220644editdlrm
autoload46090644editdlrm
bg1230644editdlrm
bindkey600644editdlrm
break1840644editdlrm
builtin810644editdlrm
bye5310644editdlrm
cap620644editdlrm
cd27190644editdlrm
chdir27190644editdlrm
clone640644editdlrm
colon1900644editdlrm
command5660644editdlrm
comparguments810644editdlrm
compcall750644editdlrm
compctl740644editdlrm
compdescribe800644editdlrm
compfiles770644editdlrm
compgroups780644editdlrm
compquote770644editdlrm
comptags760644editdlrm
comptry750644editdlrm
compvalues780644editdlrm
continue2440644editdlrm
declare214120644editdlrm
dirs7290644editdlrm
disable37670644editdlrm
disown6820644editdlrm
dot11440644editdlrm
echo14700644editdlrm
echotc660644editdlrm
echoti670644editdlrm
emulate65620644editdlrm
enable12620644editdlrm
eval3740644editdlrm
exec9970644editdlrm
exit5310644editdlrm
export2800644editdlrm
false680644editdlrm
fc62190644editdlrm
fg1400644editdlrm
float214120644editdlrm
functions37680644editdlrm
getcap620644editdlrm
getln1470644editdlrm
getopts18400644editdlrm
hash24430644editdlrm
history62190644editdlrm
integer214120644editdlrm
jobs7910644editdlrm
kill14800644editdlrm
let3230644editdlrm
limit35980644editdlrm
local214120644editdlrm
log1160644editdlrm
logout5310644editdlrm
noglob830644editdlrm
popd8200644editdlrm
print54150644editdlrm
printf21530644editdlrm
pushd16260644editdlrm
pushln54150644editdlrm
pwd2600644editdlrm
r62190644editdlrm
read58140644editdlrm
readonly214120644editdlrm
rehash24430644editdlrm
return9280644editdlrm
sched640644editdlrm
set24660644editdlrm
setcap620644editdlrm
setopt15990644editdlrm
shift4220644editdlrm
source1820644editdlrm
stat630644editdlrm
suspend1990644editdlrm
test12120644editdlrm
times1130644editdlrm
trap37040644editdlrm
true670644editdlrm
ttyctl12190644editdlrm
type23930644editdlrm
typeset214120644editdlrm
ulimit31730644editdlrm
umask4850644editdlrm
unalias12820644editdlrm
unfunction12820644editdlrm
unhash12820644editdlrm
unlimit5550644editdlrm
unset9330644editdlrm
unsetopt5060644editdlrm
vared520644editdlrm
wait13780644editdlrm
whence23930644editdlrm
where23930644editdlrm
which23930644editdlrm
zcompile66290644editdlrm
zformat720644editdlrm
zftp630644editdlrm
zle520644editdlrm
zmodload173370644editdlrm
zparseopts750644editdlrm
zprof640644editdlrm
zpty630644editdlrm
zregexparse760644editdlrm
zsocket770644editdlrm
zstyle640644editdlrm
ztcp660644editdlrm
Edit: /usr/share/zsh/5.5.1/help/zcompile (6629B)
zcompile [ -U ] [ -z | -k ] [ -R | -M ] file [ name ... ] zcompile -ca [ -m ] [ -R | -M ] file [ name ... ] zcompile -t file [ name ... ] This builtin command can be used to compile functions or scripts, storing the compiled form in a file, and to examine files containing the compiled form. This allows faster autoloading of functions and sourcing of scripts by avoiding parsing of the text when the files are read. The first form (without the -c, -a or -t options) creates a com- piled file. If only the file argument is given, the output file has the name `file.zwc' and will be placed in the same directory as the file. The shell will load the compiled file instead of the normal function file when the function is autoloaded; see the section `Autoloading Functions' in zshmisc(1) for a descrip- tion of how autoloaded functions are searched. The extension .zwc stands for `zsh word code'. If there is at least one name argument, all the named files are compiled into the output file given as the first argument. If file does not end in .zwc, this extension is automatically appended. Files containing multiple compiled functions are called `digest' files, and are intended to be used as elements of the FPATH/fpath special array. The second form, with the -c or -a options, writes the compiled definitions for all the named functions into file. For -c, the names must be functions currently defined in the shell, not those marked for autoloading. Undefined functions that are marked for autoloading may be written by using the -a option, in which case the fpath is searched and the contents of the defini- tion files for those functions, if found, are compiled into file. If both -c and -a are given, names of both defined func- tions and functions marked for autoloading may be given. In either case, the functions in files written with the -c or -a option will be autoloaded as if the KSH_AUTOLOAD option were unset. The reason for handling loaded and not-yet-loaded functions with different options is that some definition files for autoloading define multiple functions, including the function with the same name as the file, and, at the end, call that function. In such cases the output of `zcompile -c' does not include the addi- tional functions defined in the file, and any other initializa- tion code in the file is lost. Using `zcompile -a' captures all this extra information. If the -m option is combined with -c or -a, the names are used as patterns and all functions whose names match one of these patterns will be written. If no name is given, the definitions of all functions currently defined or marked as autoloaded will be written. Note the second form cannot be used for compiling functions that include redirections as part of the definition rather than within the body of the function; for example fn1() { { ... } >~/logfile } can be compiled but fn1() { ... } >~/logfile cannot. It is possible to use the first form of zcompile to compile autoloadable functions that include the full function definition instead of just the body of the function. The third form, with the -t option, examines an existing com- piled file. Without further arguments, the names of the origi- nal files compiled into it are listed. The first line of output shows the version of the shell which compiled the file and how the file will be used (i.e. by reading it directly or by mapping it into memory). With arguments, nothing is output and the return status is set to zero if definitions for all names were found in the compiled file, and non-zero if the definition for at least one name was not found. Other options: -U Aliases are not expanded when compiling the named files. -R When the compiled file is read, its contents are copied into the shell's memory, rather than memory-mapped (see -M). This happens automatically on systems that do not support memory mapping. When compiling scripts instead of autoloadable functions, it is often desirable to use this option; otherwise the whole file, including the code to define functions which have already been defined, will remain mapped, conse- quently wasting memory. -M The compiled file is mapped into the shell's memory when read. This is done in such a way that multiple instances of the shell running on the same host will share this mapped file. If neither -R nor -M is given, the zcompile builtin decides what to do based on the size of the com- piled file. -k -z These options are used when the compiled file contains functions which are to be autoloaded. If -z is given, the function will be autoloaded as if the KSH_AUTOLOAD option is not set, even if it is set at the time the compiled file is read, while if the -k is given, the function will be loaded as if KSH_AUTOLOAD is set. These options also take precedence over any -k or -z options specified to the autoload builtin. If neither of these options is given, the function will be loaded as determined by the setting of the KSH_AUTOLOAD option at the time the com- piled file is read. These options may also appear as many times as necessary between the listed names to specify the loading style of all following functions, up to the next -k or -z. The created file always contains two versions of the com- piled format, one for big-endian machines and one for small-endian machines. The upshot of this is that the compiled file is machine independent and if it is read or mapped, only one half of the file is actually used (and mapped).