about summary refs log tree commit diff
path: root/Completion/Core/_correct
blob: abd70ddeb18b0e1f01666cdd2200626dffd7a7a9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#autoload

# This is mainly a wrapper around the more general `_approximate'.
# By setting `compstate[pattern_match]' to something unequal to `*' and
# then calling `_approximate', we get only corrections, not all strings
# with the corrected prefix and something after it.
#
# Supported configuration keys are the same as for `_approximate', only
# starting with `correct'.

local ret=1 opm="$compstate[pattern_match]" curcontext="$curcontext"

# Probably set initial context.

[[ -z "$curcontext" ]] && curcontext=':correct'

compstate[pattern_match]='-'

_approximate && ret=0

compstate[pattern_match]="$opm"

return ret