[转]让Sublime Text2支持浏览器中预览

转自http://www.imququ.com/post/view-sublime-text-2-file-in-browser.htmlphp

1点击菜单Tools -> New Plugin...,在建立好的py文件输入下列内容:html

import sublime, sublime_plugin
import webbrowser
 
url_map = {
    '/Users/jerry/Sites/test/' : 'http://test/',
}
 
class OpenBrowserCommand(sublime_plugin.TextCommand):
    def run(self,edit):
        window = sublime.active_window()
        window.run_command('save')
        url = self.view.file_name()
        flag = False
        for path, domain in url_map.items():
            if url.startswith(path):
                url = url.replace(path, domain).replace('\\', '\/')
                flag = True
                break
        if not flag:
            url = 'file://' + url
        webbrowser.open_new(url)

代码只有几行,大部分仍是参考的这个帖子,相信你们一眼就能看明白,不解释了。python

将文件保存到Packages/User目录(Packages可经过菜单里的Browser Packages...打开),文件名随意,如open_browser.py。web

url_map里配置的站点目录到URL的映射应该也是可用的。sublime-text

PS:若是要指定用什么浏览器预览,也能够将最后一行代码改为这样:浏览器

webbrowser.get('safari').open_new(url)

webbrowser具体支持get哪些浏览器,能够经过webbrowser._browsers查看。只是,ST2默认使用的是python2.6,在个人mac os下,python2.6找不到任何可用的浏览器。2.7的webbrowser.py里多了一段patch,能够找到firefox和safari。好在,对我来讲,能在默认浏览器预览已经够用了。dom

二、为刚才的插件分配快捷键。点菜单Tools -> Command Palette...,或者shift+cmd+p,打开命令集,选择“key Bindings - User”打开我的快捷键配置,输入下列内容:post

{ "keys": ["ctrl+shift+b"], "command": "open_browser" }
相关文章
相关标签/搜索