HTML編集をプレビューしたい

vim/gvimでHTMLを編集して、保存したタイミングでプレビューできるようなツールがほしい。

と思い1秒ほど探してみたら、

Big Sky :: Vimで編集中のMarkdownをプレビュー出来るプラグイン書いた.

VIMプラグインの所はちょっと置いておいて、
Qt使うと簡単にブラウザみたいの作れるみたい。

HTMLを編集して保存したらプレビューできるのがほしかっただけなので、直接ファイルを指定してブラウザを立ち上げるだけでよいかっ。

[python]

import os
import sys
#import json
#import cgi
import time
#from threading import Thread
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *
from PyQt4.QtNetwork import *
#from BaseHTTPServer import HTTPServer
#from SimpleHTTPServer import SimpleHTTPRequestHandler

target_url = sys.argv[1]

QNetworkProxyFactory.setUseSystemConfiguration(True)
app = QApplication(sys.argv)

webview = QWebView()
webview.setWindowTitle(‘preview window’)
webview.load(QUrl(target_url))

def do_reload_url(url):
webview.load(QUrl(url))

QObject.connect(webview, SIGNAL("reload_url"), do_reload_url)

webview.show()

class UpdateChecker(QThread):
def __init__(self, url):
QThread.__init__(self)
self.url = url

def run(self):
before_st = os.stat(self.url)
while True:
st = os.stat(self.url)
if st.st_mtime != before_st.st_mtime:
before_st = st
webview.emit(SIGNAL("reload_url"), self.url)
time.sleep(1)

checker = UpdateChecker(target_url)
checker.start()

sys.exit(app.exec_())

# vim:set et sw=4 ts=4:

[/python]

おー。Qtすげー!

ちなみに、Qtの環境は Windowsなら公式サイトのインストーラーを使ったらすぐできた。
mac os xの場合は、

[bash]
brew install qt
brew install pyqt

export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
[/bash]

したらできた。
brewちょーすごい。


One thought to “HTML編集をプレビューしたい”

  1. へ〜。Qtですか。昔、C++の勉強がてらWindowsのIDEをちょっといじったことぐらいしかありません。ってかPyQtか。そんなのもあるんだ・・・
    Vimってプラグインとか、結構いじれるんですね〜

    ちょっと前に、MacVimと、ディレクトリツリー表示するプラグインみたいの入れて、がんばろうと思ったけど、結局TextMateでお手軽コーダーのままです・・・

コメントは受け付けていません。