mirror of
https://github.com/junegunn/fzf.git
synced 2026-08-12 19:07:00 +08:00
Fix zsh history widget when sh_glob option is on (#4714)
Fixes #4712. The CTRL-R history widget failed in zsh when [zsh's `sh_glob` option][0] was on. This fixes that by disabling the option locally, like we disable other options. [0]: https://zsh.sourceforge.io/Doc/Release/Options.html#:~:text=SH%5FGLOB,ksh%2E
This commit is contained in:
@@ -129,7 +129,7 @@ fi
|
|||||||
# CTRL-R - Paste the selected command from history into the command line
|
# CTRL-R - Paste the selected command from history into the command line
|
||||||
fzf-history-widget() {
|
fzf-history-widget() {
|
||||||
local selected extracted_with_perl=0
|
local selected extracted_with_perl=0
|
||||||
setopt localoptions noglobsubst noposixbuiltins pipefail no_aliases no_glob no_ksharrays extendedglob 2> /dev/null
|
setopt localoptions noglobsubst noposixbuiltins pipefail no_aliases no_glob no_sh_glob no_ksharrays extendedglob 2> /dev/null
|
||||||
# Ensure the module is loaded if not already, and the required features, such
|
# Ensure the module is loaded if not already, and the required features, such
|
||||||
# as the associative 'history' array, which maps event numbers to full history
|
# as the associative 'history' array, which maps event numbers to full history
|
||||||
# lines, are set. Also, make sure Perl is installed for multi-line output.
|
# lines, are set. Also, make sure Perl is installed for multi-line output.
|
||||||
|
|||||||
@@ -920,6 +920,7 @@ class TestZsh < TestBase
|
|||||||
end
|
end
|
||||||
|
|
||||||
test_perl_and_awk 'ctrl_r_multiline_index_collision' do
|
test_perl_and_awk 'ctrl_r_multiline_index_collision' do
|
||||||
|
tmux.send_keys 'setopt sh_glob', :Enter
|
||||||
# Leading number in multi-line history content is not confused with index
|
# Leading number in multi-line history content is not confused with index
|
||||||
prepare_ctrl_r_test
|
prepare_ctrl_r_test
|
||||||
tmux.send_keys "'line 1"
|
tmux.send_keys "'line 1"
|
||||||
|
|||||||
Reference in New Issue
Block a user