1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-09-02 22:11:54 +02:00

50855: Clarify how commands are hashed, and searched-for by "whence".

This commit is contained in:
Bart Schaefer 2022-10-31 16:50:16 -07:00
parent 0a66d6f3ec
commit 159c892b9b
3 changed files with 20 additions and 7 deletions

View file

@ -1,3 +1,8 @@
2022-10-31 Bart Schaefer <schaefer@BartMAC2015.local>
* 50855: Doc/Zsh/builtins.yo, Doc/Zsh/params.yo: Clarify how
commands are hashed, and searched-for by "whence".
2022-10-31 Peter Grayson <pete@jpgrayson.net>
* 50844: Completion/Unix/Command/_stgit: Remove _stgit completion

View file

@ -1052,9 +1052,11 @@ The choice of hash table to work on is determined by the tt(-d) option;
without the option the command hash table is used, and with the option the
named directory hash table is used.
A command var(name) starting with a tt(/) is never hashed, whether by
explicit use of the tt(hash) command or otherwise. Such a command
is always found by direct look up in the file system.
A command var(name) starting with a tt(/) or with a relative path
starting with tt(./) or tt(../) is never executed by lookup in
the command hash table, and these can only be added to the table by
explicit use of the tt(hash) command. Such a command is always
found by direct look up in the file system.
Given no arguments, and neither the tt(-r) or tt(-f) options,
the selected hash table will be listed in full.
@ -1063,9 +1065,11 @@ The tt(-r) option causes the selected hash table to be emptied.
It will be subsequently rebuilt in the normal fashion.
The tt(-f) option causes the selected hash table to be fully
rebuilt immediately. For the command hash table this hashes
all the absolute directories in the tt(PATH),
and for the named directory hash table this adds all users' home directories.
all (and em(only)) the absolute directories in the tt(PATH),
and for the named directory hash table this adds all users' home
directories.
These two options cannot be used with any arguments.
Both options remove any explicitly-added elements.
The tt(-m) option causes the arguments to be taken as patterns
(which should be quoted) and the elements of the hash table
@ -2523,11 +2527,14 @@ item(tt(-a))(
Do a search for all occurrences of var(name)
throughout the command path.
Normally only the first occurrence is printed.
When combined with tt(-m), only names appearing in the command hash
table are searched, but all occurrences of those names are printed.
)
item(tt(-m))(
The arguments are taken as patterns (pattern characters should be
quoted), and the information is displayed for each command matching one
of these patterns.
quoted), and the information is displayed for each entry in the command
hash table matching one of these patterns. The hash table is first
refilled, in case of changes to tt(PATH).
)
item(tt(-s))(
If a pathname contains symlinks, print the symlink-free pathname as well.

View file

@ -1414,6 +1414,7 @@ An array (colon-separated list)
of directories to search for commands.
When this parameter is set, each directory is scanned
and all files found are put in a hash table.
Directories named by relative path are not scanned for hashing.
)
vindex(POSTEDIT)
item(tt(POSTEDIT) <S>)(