let s:save_cpo = &cpo set cpo&vim let s:enabled_zenhan = v:false function! myvimrc#zenhan#enable() abort if s:enabled_zenhan call myvimrc#util#error('zenhan is enabled already') return endif if !executable('zenhan.exe') call myvimrc#util#error('zenhan.exe is not executable') endif augroup zenhan_autodisable autocmd! autocmd InsertLeave * call timer_start(0, {-> system('zenhan.exe 0')}) augroup END let s:enabled_zenhan = v:true endfunction let &cpo = s:save_cpo unlet s:save_cpo