Skip to content

Instantly share code, notes, and snippets.

@nakamuray
Created December 4, 2012 10:29
Show Gist options
  • Save nakamuray/4202486 to your computer and use it in GitHub Desktop.
Save nakamuray/4202486 to your computer and use it in GitHub Desktop.
vim で非同期 HTTP リクエスト
python << EOP
from twisted.internet.error import ReactorAlreadyInstalledError
try:
from twisted.internet.gtk2reactor import install
install()
except ReactorAlreadyInstalledError:
pass
from twisted.internet import reactor
reactor.run()
import vim
from twisted.internet import defer
from twisted.web.client import getPage
@defer.inlineCallbacks
def appendPage(url):
page = yield getPage(url)
vim.current.buffer.append(page)
EOP
" XXX: vim を終了する前に reactor.stop() しないと vim が固まる。
" XXX: 以下の autocmd だと呼ばれない?
autocmd VimLeavePre * python reactor.stop()
command -nargs=1 AppendPage python appendPage(<args>)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment