mirror of
https://github.com/zsh-users/zsh-autosuggestions.git
synced 2024-11-18 09:51:06 +01:00
Don't do anything but re-bind widgets on each precmd
There's no need to re-run feature detection or async_start on every precmd. Just do those once.
This commit is contained in:
parent
2cd99e64b7
commit
e3fa4e4904
2 changed files with 16 additions and 0 deletions
|
@ -5,9 +5,17 @@
|
||||||
|
|
||||||
# Start the autosuggestion widgets
|
# Start the autosuggestion widgets
|
||||||
_zsh_autosuggest_start() {
|
_zsh_autosuggest_start() {
|
||||||
|
add-zsh-hook -d precmd _zsh_autosuggest_start
|
||||||
|
|
||||||
_zsh_autosuggest_feature_detect
|
_zsh_autosuggest_feature_detect
|
||||||
_zsh_autosuggest_bind_widgets
|
_zsh_autosuggest_bind_widgets
|
||||||
|
|
||||||
|
# Re-bind widgets on every precmd to ensure we wrap other wrappers.
|
||||||
|
# Specifically, highlighting breaks if our widgets are wrapped by
|
||||||
|
# zsh-syntax-highlighting widgets. This also allows modifications
|
||||||
|
# to the widget list variables to take effect on the next precmd.
|
||||||
|
add-zsh-hook precmd _zsh_autosuggest_bind_widgets
|
||||||
|
|
||||||
if [ -n "${ZSH_AUTOSUGGEST_USE_ASYNC+x}" ]; then
|
if [ -n "${ZSH_AUTOSUGGEST_USE_ASYNC+x}" ]; then
|
||||||
_zsh_autosuggest_async_start
|
_zsh_autosuggest_async_start
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -609,9 +609,17 @@ _zsh_autosuggest_async_start() {
|
||||||
|
|
||||||
# Start the autosuggestion widgets
|
# Start the autosuggestion widgets
|
||||||
_zsh_autosuggest_start() {
|
_zsh_autosuggest_start() {
|
||||||
|
add-zsh-hook -d precmd _zsh_autosuggest_start
|
||||||
|
|
||||||
_zsh_autosuggest_feature_detect
|
_zsh_autosuggest_feature_detect
|
||||||
_zsh_autosuggest_bind_widgets
|
_zsh_autosuggest_bind_widgets
|
||||||
|
|
||||||
|
# Re-bind widgets on every precmd to ensure we wrap other wrappers.
|
||||||
|
# Specifically, highlighting breaks if our widgets are wrapped by
|
||||||
|
# zsh-syntax-highlighting widgets. This also allows modifications
|
||||||
|
# to the widget list variables to take effect on the next precmd.
|
||||||
|
add-zsh-hook precmd _zsh_autosuggest_bind_widgets
|
||||||
|
|
||||||
if [ -n "${ZSH_AUTOSUGGEST_USE_ASYNC+x}" ]; then
|
if [ -n "${ZSH_AUTOSUGGEST_USE_ASYNC+x}" ]; then
|
||||||
_zsh_autosuggest_async_start
|
_zsh_autosuggest_async_start
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in a new issue