Mercurial > dotfiles
view .zfun/zsh-autosuggestions/spec/integrations/wrapped_widget_spec.rb @ 522:7983184eb8d8
emacs.sh: hack together fallback to vscode
Lately if emacs is not running I prefer using vscode. This allows
my muscle memory to keep working.
author | Augie Fackler <raf@durin42.com> |
---|---|
date | Sun, 31 Jul 2022 22:34:33 -0400 |
parents | e1ce8897030d |
children |
line wrap: on
line source
describe 'a wrapped widget' do let(:widget) { 'backward-delete-char' } context 'initialized before sourcing the plugin' do let(:before_sourcing) do -> do session. run_command("_orig_#{widget}() { zle .#{widget} }"). run_command("zle -N orig-#{widget} _orig_#{widget}"). run_command("#{widget}-magic() { zle orig-#{widget}; BUFFER+=b }"). run_command("zle -N #{widget} #{widget}-magic") end end it 'executes the custom behavior and the built-in behavior' do with_history('foobar', 'foodar') do session.send_string('food').send_keys('C-h') wait_for { session.content }.to eq('foobar') end end end context 'initialized after sourcing the plugin' do before do session. run_command("zle -N orig-#{widget} ${widgets[#{widget}]#*:}"). run_command("#{widget}-magic() { zle orig-#{widget}; BUFFER+=b }"). run_command("zle -N #{widget} #{widget}-magic"). clear_screen end it 'executes the custom behavior and the built-in behavior' do with_history('foobar', 'foodar') do session.send_string('food').send_keys('C-h') wait_for { session.content }.to eq('foobar') end end end end