mirror of
git://git.code.sf.net/p/zsh/code
synced 2024-11-11 04:20:01 +01:00
48 lines
1.6 KiB
Plaintext
48 lines
1.6 KiB
Plaintext
#compdef -first-
|
|
|
|
# This function is called at the very beginning before any other
|
|
# function for a specific context.
|
|
#
|
|
# This just gives some examples of things you might want to do here.
|
|
#
|
|
#
|
|
# Other things you can do here is to complete different things if the
|
|
# word on the line matches a certain pattern. This example allows
|
|
# completion of words from the history by adding two commas at the end
|
|
# and hitting TAB.
|
|
#
|
|
# if [[ "$PREFIX" = *,, ]]; then
|
|
# local max i=1 expl opt
|
|
#
|
|
# PREFIX="$PREFIX[1,-2]"
|
|
# # If a numeric prefix is given, we use it as the number of
|
|
# # lines (multiplied by ten below) in the history to search.
|
|
# if [[ ${NUMERIC:-1} -gt 1 ]]; then
|
|
# max=$NUMERIC
|
|
# unset NUMERIC
|
|
# else
|
|
# # The default is to search the last 100 lines.
|
|
# max=10
|
|
# fi
|
|
# # We first search in the last ten words, then in the last
|
|
# # twenty words, and so on...
|
|
# while [[ i -le max ]]; do
|
|
# if zstyle -t ":completion:${curcontext}:history-words" sort; then
|
|
# opt=-J
|
|
# else
|
|
# opt=-V
|
|
# fi
|
|
# if _wanted "$opt" history-words expl "history ($n)" \
|
|
# compadd -Q - \
|
|
# "${(@)${(@)historywords:#[\$'\"]*}[1,i*10]}"; then
|
|
# # We have found at least one matching word, so we switch
|
|
# # on menu-completion and make sure that no other
|
|
# # completion function is called by setting _compskip.
|
|
# compstate[insert]=menu
|
|
# _compskip=all
|
|
# return 0
|
|
# fi
|
|
# (( i++ ))
|
|
# done
|
|
# fi
|