39 howm-mode.vim (2-17) プレビューの動作を変更

pだけの動作でいいのに、どういうわけか数秒放置するとプレビューしてくれる。ウゼエ。そんなあなたのための修正。

まず、グローバル変数を追加する。

if !exists('g:howm_autopreview')
  let g:howm_autopreview = 1
endif

次に、autocommands を先のグローバル変数を解釈する形に変更する。

if g:howm_autopreview || g:howm_instantpreview
  exe 'autocmd CursorHold '.escape(s:prefix_howm.s:buftitle_ftresult, ' ').' call s:ShowPreview()'
endif

最後に OpenSearchWindow() の nnoremap を instantpreview に影響されるのを変更する。if 文をはずしただけ。

  nnoremap <silent> <buffer> p :call <SID>ShowPreview()<CR>

これで終了。オプションが追加されたことと g:howm_instantpreview の解釈が変わったことが変更点。

  • p でプレビュー ( 以前は g:howm_instantpreview が偽のときだけだった )
  • g:howm_autopreview が真なら、一定時間後にプレビュー。 ( カーソルが &updatetime だけ停止したとき )
  • g:howm_instantpreview が真なら、カーソルが動いたらすぐプレビュー

今回の変更は id:kuhukuhun が教えてくれました。