You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
zsh-autosuggestions/spec
Eric Freese 676aebdf44 Fix deleting last character in vi mode (#302)
Typing `d` and then `l` runs `vi-delete` and then `vi-forward-char`.  However,
by default, `vi-forward-char` is configured to accept the suggestion. So in
that case, the suggestion was being accepted and the cursor set to the end of
the buffer before the deletion was run.

The reason the user doesn't see the suggestion accepted is that `vi-delete`
doesn't finish until the movement widget is run, so we're already inside of a
`modify` when `accept` is called. `modify` unsets `POSTDISPLAY` before calling
the original widget so when we get to the accept function, `POSTDISPLAY` is
empty and thus accepting the suggestion is a no-op.

The fix is to make sure we reset the cursor to the correct place before running
the original widget.

We skip the test for versions of zsh below 5.0.8 since there was a bug in
earlier versions where deleting the last char did not work.

See http://www.zsh.org/mla/workers/2014/msg01316.html
6 years ago
..
integrations Fix deleting last character in vi mode (#302) 6 years ago
options Allow disabling of automatic widget re-binding 6 years ago
strategies Prefix custom `_complete` implementation with "function" keyword 6 years ago
widgets Enabling suggestions should not fetch a suggestion if buffer is empty 9 years ago
async_spec.rb Don't fetch suggestions after copy-earlier-word 6 years ago
kill_ring_spec.rb Don't break kill ring rotation 7 years ago
line_init_spec.rb Remove hard-coded ignore of zle-* widgets and add to default config 6 years ago
multi_line_spec.rb Lots of async changes 9 years ago
spec_helper.rb Set options immediately after sourcing the plugin before next precmd 6 years ago
terminal_session.rb Revert async process substitution & completion strategy 7 years ago