dotfiles/private_dot_config/private_fish/conf.d/pisces.fish
2023-04-30 01:21:51 +03:00

43 lines
1.3 KiB
Fish

set -l _pisces_bind_mode default
switch $fish_key_bindings
case 'fish_vi_key_bindings' 'fish_hybrid_key_bindings'
set _pisces_bind_mode insert
end
set -q pisces_pairs
or set -U pisces_pairs '(,)' '[,]' '{,}' '","' "','"
for pair in $pisces_pairs
_pisces_bind_pair $_pisces_bind_mode (string split -- ',' $pair)
end
# normal backspace, also known as \010 or ^H:
bind -M $_pisces_bind_mode \b _pisces_backspace
# Terminal.app sends DEL code on ⌫:
bind -M $_pisces_bind_mode \177 _pisces_backspace
# overrides TAB to provide completion of vars before a closing '"'
bind -M $_pisces_bind_mode \t _pisces_complete
function _pisces_uninstall --on-event pisces_uninstall
# NOTE: won't work as expected if user has changed the mode after installation
set -l _pisces_bind_mode default
switch $fish_key_bindings
case 'fish_vi_key_bindings' 'fish_hybrid_key_bindings'
set _pisces_bind_mode insert
end
for pair in $pisces_pairs
for c in (string split -- ',' $pair)
bind -e -M $_pisces_bind_mode $c
end
end
bind -M $_pisces_bind_mode \b backward-delete-char
bind -M $_pisces_bind_mode \177 backward-delete-char
bind -M $_pisces_bind_mode \t complete
set -e pisces_pairs
end