原理就是通过AppleScript去调用切换输入法的快捷键,我的为<ctrl+command+option+shift+space>;
脚本执行的速度大体跟
defaults read
这条命令的时间相关默认功能:返回normal模式时自动切换输入法为英文
附加功能:当执行了
touch "$HOME/.input-source-vim/data"
,会启动insert模式下上一次的输入法的记录
cp -r "input-source-vim" "$HOME/.input-source-vim"
touch "$HOME/.input-source-vim/data"
echo -n 0 > "$HOME/.input-source-vim/data"
" 解决esc后光标左移的问题,自动切换输入法; 这是ideavim的写法,因为ideavim不支持autocmd命令,原生vim中可以用autocmd
inoremap <silent> <Esc> <Esc>`^:!/Users/logan/.input-source-vim/toggle-normal.sh<CR>
nnoremap <silent> i :!/Users/logan/.input-source-vim/toggle-insert.sh<CR>i
nnoremap <silent> I :!/Users/logan/.input-source-vim/toggle-insert.sh<CR>I
nnoremap <silent> o :!/Users/logan/.input-source-vim/toggle-insert.sh<CR>o
nnoremap <silent> O :!/Users/logan/.input-source-vim/toggle-insert.sh<CR>O
nnoremap <silent> a :!/Users/logan/.input-source-vim/toggle-insert.sh<CR>a
nnoremap <silent> A :!/Users/logan/.input-source-vim/toggle-insert.sh<CR>A