mirror of
https://github.com/fish-shell/fish-shell
synced 2024-11-14 17:07:44 +00:00
e88eb508d0
Prior to this change, tab completing with a variable assignment like `VAR=val cmd<tab>` would parse out and apply VAR=val, then recursively invoke completions. This caused some awkwardness around the wrap chain - if a wrapped command had a variable completion we risked infinite recursion. A secondary problem is that we would run any command substitutions inside variable assignment, which the user does not expect to run until pressing enter. With this change, we explicitly track variable assignments encountered during tab completion, including both those explicitly given on the command line and those found during wrap chain walk. We then apply them while suppressing command substitutions. |
||
---|---|---|
.. | ||
checks | ||
pexpects | ||
test_functions | ||
.gitignore | ||
history_sample_bash | ||
history_sample_corrupt1 | ||
history_sample_fish_1_x | ||
history_sample_fish_2_0 | ||
interactive.config | ||
interactive.fish | ||
test.fish | ||
test_util.fish |