open color scheme as resource #25

allows the color scheme to be in a packaged package
This commit is contained in:
Mathieu PATUREL
2017-03-07 08:24:19 +11:00
parent 119acbb092
commit 76f580ba29
3 changed files with 7 additions and 8 deletions

View File

@ -73,8 +73,7 @@ def markdown2html(md, basepath, color_scheme):
def show_html(md_view, preview):
global windows_phantom_set
html = markdown2html(get_view_content(md_view), os.path.dirname(md_view.file_name()),
os.path.join(sublime.packages_path(), '..', md_view.settings().get('color_scheme')))
html = markdown2html(get_view_content(md_view), os.path.dirname(md_view.file_name()), md_view.settings().get('color_scheme'))
phantom_set = windows_phantom_set.setdefault(preview.window().id(),
sublime.PhantomSet(preview, 'markdown_live_preview'))

View File

@ -128,5 +128,5 @@ def get_style(color_scheme):
with open(USER_STYLE_FILE) as fp:
css += '\n' + fp.read() + '\n'
if color_scheme:
css += pygments_from_theme(color_scheme)
css += pygments_from_theme(sublime.load_resource(color_scheme))
return ''.join([line.strip() + ' ' for line in css.splitlines()])

View File

@ -2,7 +2,7 @@
import os
import sys
from xml.dom.minidom import parse
from xml.dom.minidom import parseString
from collections import defaultdict
class Style:
@ -55,9 +55,9 @@ class Style:
# colors and font styles from colortheme file
def get_settings(file_name):
def get_settings(color_scheme_content):
settings = defaultdict(lambda: [])
dom = parse(file_name)
dom = parseString(color_scheme_content)
arr = dom.getElementsByTagName('array')[0]
editor_cfg = arr.getElementsByTagName('dict')[0].getElementsByTagName('dict')[0]
editor_vals = editor_cfg.getElementsByTagName('string')
@ -82,8 +82,8 @@ def get_settings(file_name):
return settings
def pygments_from_theme(file):
settings = get_settings(file)
def pygments_from_theme(color_scheme_content):
settings = get_settings(color_scheme_content)
styles = []
#Generic