move resources.py to MarkdownLivePreview.py

Having an extra file is just a pain because you have to save it manually
for ST to reload, and it was small and created way more trouble than it
needed to... It fits really nicely in there anyway

And add some nice CSS
This commit is contained in:
Mathieu PATUREL
2019-11-15 13:33:58 +11:00
parent 5f2cac54e8
commit c0c9867cc8
4 changed files with 68 additions and 26 deletions

View File

@ -6,16 +6,33 @@ from functools import partial
from .markdown2html import markdown2html
from .utils import *
from .resources import resources
def plugin_loaded():
pass
MARKDOWN_VIEW_INFOS = "markdown_view_infos"
PREVIEW_VIEW_INFOS = "preview_view_infos"
# FIXME: put this as a setting for the user to choose?
DELAY = 500 # ms
def get_resource(resource):
path = 'Packages/MarkdownLivePreview/resources/' + resource
abs_path = os.path.join(sublime.packages_path(), '..', path)
if os.path.isfile(abs_path):
with open(abs_path, 'r') as fp:
return fp.read()
return sublime.load_resource(path)
resources = {}
def plugin_loaded():
resources["base64_loading_image"] = get_resource('loading.base64')
resources["base64_404_image"] = get_resource('404.base64')
resources["stylesheet"] = get_resource('stylesheet.css')
# try to reload the resources if we save this file
try:
plugin_loaded()
except OSError:
pass
# Terminology
# original_view: the view in the regular editor, without it's own window
# markdown_view: the markdown view, in the special window
@ -190,6 +207,8 @@ class MarkdownLivePreviewListener(sublime_plugin.EventListener):
resources
)
print(html)
self.phantom_sets[markdown_view.id()].update([
sublime.Phantom(sublime.Region(0), html, sublime.LAYOUT_BLOCK,
lambda href: sublime.run_command('open_url', {'url': href}))