vim の保存と同時にIE/Opera on Windows をリロードするデモ

遠隔オートリロード
動画と説明
reload.rb
本体
reload-config.yaml
設定

みたいなのの変化版。下地をバイト先をちまちま作って、使いにくかったのでスクラッチから結局書き直した。同じように HTTP 鯖を webrick で立てるやつです。

dl で win32api を読んでる。使うのは PostMessage。でもなんか、SetForegroundWindow がないとだめだったり、あるとでしゃばってきたり、なくても普通に動いたりと怪しいのでウゴカネーってときはそのへんみたらいいかも。あと mswin32 版じゃないと SEGV する。

EnumWindows で列挙して、タイトルがソレっぽいやつに対して F5 を送るだけ。Fx はこの方法だとリロードされない。残念。

設定の chain でリクエストあったときにさらにリクエストを出すことができるので、こいつのトリガひくだけで、ma.la さんの Safari のスクリプトも同時にひけます。


vim 側

command! AutoReloadOFF let b:autoReload_disable = 1
command! AutoReloadON let b:autoReload_disable = 0
augroup AutoReload
au!
autocmd BufUnload,FileWritePost,BufWritePost * call <SID>AutoReload()
augroup END
function! s:AutoReload(...)
" Check enable
if exists('b:autoReload_disable') && b:autoReload_disable != 0
return
endif
silent exe "!GET 'http://nina:4321/reload' > /dev/null"
endfunction
  1. トップ
  2. web
  3. 自動リロードで開発をアジャイルにするたった一つの方法!