Set ZSH_AUTOSUGGEST_HISTORY_IGNORE to a glob pattern to have the history
and match_prev_cmd suggestion strategies never make suggestions matching
that pattern.
For example, set to "cd *" to never suggest any `cd` commands from
history (see issues #340 and #425). Or set to "?(#c50,)" to never
suggest anything 50 characters or longer (see issue #429).
Maybe this is also a fix for #247, #248 and #258. Supersedes #267.
Testcase:
Using match_prev_cmd strategy and with these lines in history:
echo '1^'
echo '2^'
echo '1^'
type:
echo (unexpected suggestion echo '1^' instead of echo '2^')
echo '1^1 (wrong suggestion echo '1^1echo '1^')
echo '1^# (error "bad math expression")
This strategy relies on the history being exactly in the order in which
commands have been entered. Therefore, options like suppressing
duplicates or expiring duplicates first will lead to unexpected
suggestions.
A new suggestion strategy 'match_prev_cmd' is available. This is a bit
more context aware variaton on the default strategy.
The suggestion will be:
- The newest history entry that matches the current prefix, AND
- Whose preceding history entry also matches the previously executed
command.
See src/strategies/match_prev_cmd.zsh for an example.