diff --git a/CHANGELOG.md b/CHANGELOG.md index 5dc699f..8b850cb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ # Changelog +## v0.6.1 +- Fixed bug occurring when `_complete` had been aliased (#443) + ## v0.6.0 - Added `completion` suggestion strategy powered by completion system (#111) - Allow setting `ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE` to an empty string (#422) diff --git a/VERSION b/VERSION index 60f6343..1490961 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -v0.6.0 +v0.6.1 diff --git a/spec/strategies/completion_spec.rb b/spec/strategies/completion_spec.rb index e8cc8ce..2be358a 100644 --- a/spec/strategies/completion_spec.rb +++ b/spec/strategies/completion_spec.rb @@ -20,6 +20,23 @@ describe 'the `completion` suggestion strategy' do wait_for { session.content }.to eq("baz \\\nbar") end + context 'when `_complete` is aliased' do + let(:before_sourcing) do + -> do + session. + run_command('autoload compinit && compinit'). + run_command('_foo() { compadd bar; compadd bat }'). + run_command('compdef _foo baz'). + run_command('alias _complete=_complete') + end + end + + it 'suggests the first completion result' do + session.send_string('baz ') + wait_for { session.content }.to eq('baz bar') + end + end + context 'when async mode is enabled' do let(:options) { ['ZSH_AUTOSUGGEST_USE_ASYNC=true', 'ZSH_AUTOSUGGEST_STRATEGY=completion'] } diff --git a/src/strategies/completion.zsh b/src/strategies/completion.zsh index 4c60e90..dfbf6eb 100644 --- a/src/strategies/completion.zsh +++ b/src/strategies/completion.zsh @@ -86,7 +86,7 @@ _zsh_autosuggest_capture_completion_async() { # https://stackoverflow.com/a/7057118/154703 autoload +X _complete functions[_original_complete]=$functions[_complete] - _complete () { + function _complete() { unset 'compstate[vared]' _original_complete "$@" } diff --git a/zsh-autosuggestions.zsh b/zsh-autosuggestions.zsh index f214147..cd68f69 100644 --- a/zsh-autosuggestions.zsh +++ b/zsh-autosuggestions.zsh @@ -1,8 +1,8 @@ # Fish-like fast/unobtrusive autosuggestions for zsh. # https://github.com/zsh-users/zsh-autosuggestions -# v0.6.0 +# v0.6.1 # Copyright (c) 2013 Thiago de Arruda -# Copyright (c) 2016-2018 Eric Freese +# Copyright (c) 2016-2019 Eric Freese # # Permission is hereby granted, free of charge, to any person # obtaining a copy of this software and associated documentation @@ -568,7 +568,7 @@ _zsh_autosuggest_capture_completion_async() { # https://stackoverflow.com/a/7057118/154703 autoload +X _complete functions[_original_complete]=$functions[_complete] - _complete () { + function _complete() { unset 'compstate[vared]' _original_complete "$@" }