Don't fetch suggestions after copy-earlier-word
Like {up,down}-line-or-beginning-search, this widget relies on
`$LASTWIDGET` being set to function correctly on subsequent invocations.
When asynchronous suggestions are enabled, and the widget triggers a
suggestion to be fetched, `autosuggest-suggest` will be called and
$LASTWIDGET will be set to it.
			
			
This commit is contained in:
		
							parent
							
								
									9ceeacc797
								
							
						
					
					
						commit
						15bcfd7126
					
				|  | @ -27,6 +27,29 @@ context 'with asynchronous suggestions enabled' do | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
| 
 | 
 | ||||||
|  |   describe '`copy-earlier-word`' do | ||||||
|  |     let(:before_sourcing) do | ||||||
|  |       -> do | ||||||
|  |         session. | ||||||
|  |           run_command('autoload -Uz copy-earlier-word'). | ||||||
|  |           run_command('zle -N copy-earlier-word'). | ||||||
|  |           run_command('bindkey "^N" copy-earlier-word') | ||||||
|  |       end | ||||||
|  |     end | ||||||
|  | 
 | ||||||
|  |     it 'should cycle through previous words in the buffer' do | ||||||
|  |       session.clear_screen | ||||||
|  |       session.send_string('foo bar baz') | ||||||
|  |       sleep 0.5 | ||||||
|  |       session.send_keys('C-n') | ||||||
|  |       wait_for { session.content }.to eq('foo bar bazbaz') | ||||||
|  |       session.send_keys('C-n') | ||||||
|  |       wait_for { session.content }.to eq('foo bar bazbar') | ||||||
|  |       session.send_keys('C-n') | ||||||
|  |       wait_for { session.content }.to eq('foo bar bazfoo') | ||||||
|  |     end | ||||||
|  |   end | ||||||
|  | 
 | ||||||
|   describe 'pressing ^C after fetching a suggestion' do |   describe 'pressing ^C after fetching a suggestion' do | ||||||
|     before do |     before do | ||||||
|       skip 'Workaround does not work below v5.0.8' if session.zsh_version < Gem::Version.new('5.0.8') |       skip 'Workaround does not work below v5.0.8' if session.zsh_version < Gem::Version.new('5.0.8') | ||||||
|  |  | ||||||
|  | @ -35,6 +35,7 @@ typeset -g ZSH_AUTOSUGGEST_ORIGINAL_WIDGET_PREFIX=autosuggest-orig- | ||||||
| 		up-line-or-history | 		up-line-or-history | ||||||
| 		down-line-or-history | 		down-line-or-history | ||||||
| 		accept-line | 		accept-line | ||||||
|  | 		copy-earlier-word | ||||||
| 	) | 	) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -61,6 +61,7 @@ typeset -g ZSH_AUTOSUGGEST_ORIGINAL_WIDGET_PREFIX=autosuggest-orig- | ||||||
| 		up-line-or-history | 		up-line-or-history | ||||||
| 		down-line-or-history | 		down-line-or-history | ||||||
| 		accept-line | 		accept-line | ||||||
|  | 		copy-earlier-word | ||||||
| 	) | 	) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue