From 87802222b51d2b82da05c0d2a6023c9d59362db1 Mon Sep 17 00:00:00 2001 From: Armin Ronacher Date: Fri, 25 Dec 2015 00:13:27 +0100 Subject: [PATCH] Switch to lektor-markdown-highlighter from pypi --- Website.lektorproject | 1 + .../lektor_markdown_highlighter.py | 49 ------------------- packages/markdown-highlighter/setup.py | 15 ------ 3 files changed, 1 insertion(+), 64 deletions(-) delete mode 100644 packages/markdown-highlighter/lektor_markdown_highlighter.py delete mode 100644 packages/markdown-highlighter/setup.py diff --git a/Website.lektorproject b/Website.lektorproject index 1720cf33..c1bb9f9f 100644 --- a/Website.lektorproject +++ b/Website.lektorproject @@ -13,3 +13,4 @@ default = yes lektor-webpack-support = 0.1 lektor-disqus-comments = 0.1 lektor-markdown-header-anchors = 0.1 +lektor-markdown-highlighter = 0.1 diff --git a/packages/markdown-highlighter/lektor_markdown_highlighter.py b/packages/markdown-highlighter/lektor_markdown_highlighter.py deleted file mode 100644 index ade04415..00000000 --- a/packages/markdown-highlighter/lektor_markdown_highlighter.py +++ /dev/null @@ -1,49 +0,0 @@ -from lektor.pluginsystem import Plugin -from lektor.context import get_ctx - -from pygments import highlight -from pygments.formatters import HtmlFormatter -from pygments.lexers import get_lexer_by_name - -from markupsafe import Markup - - -class MarkdownHighlighterPlugin(Plugin): - name = 'Markdown Highlighter' - description = 'Adds syntax highlighting for markdown blocks.' - - def get_formatter(self): - return HtmlFormatter(style=self.get_style()) - - def get_style(self): - return self.get_config().get('pygments.style', 'default') - - def highlight_code(self, text, lang): - get_ctx().record_dependency(self.config_filename) - lexer = get_lexer_by_name(lang) - return highlight(text, lexer, self.get_formatter()) - - def on_markdown_config(self, config, **extra): - class HighlightMixin(object): - def block_code(ren, text, lang): - if not lang: - return super(HighlightMixin, ren).block_code(text, lang) - return self.highlight_code(text, lang) - config.renderer_mixins.append(HighlightMixin) - - def on_setup_env(self, **extra): - def get_pygments_stylesheet(artifact_name='/static/pygments.css'): - ctx = get_ctx() - @ctx.sub_artifact(artifact_name=artifact_name, sources=[ - self.config_filename]) - def build_stylesheet(artifact): - with artifact.open('w') as f: - f.write(self.get_formatter().get_style_defs()) - return artifact_name - - def pygmentize(text, lang): - return Markup(self.highlight_code(text, lang)) - - self.env.jinja_env.globals['get_pygments_stylesheet'] = \ - get_pygments_stylesheet - self.env.jinja_env.filters['pygmentize'] = pygmentize diff --git a/packages/markdown-highlighter/setup.py b/packages/markdown-highlighter/setup.py deleted file mode 100644 index c02d3a88..00000000 --- a/packages/markdown-highlighter/setup.py +++ /dev/null @@ -1,15 +0,0 @@ -from setuptools import setup - -setup( - name='lektor-markdown-highlighter', - version='0.1', - py_modules=['lektor_markdown_highlighter'], - entry_points={ - 'lektor.plugins': [ - 'markdown-highlighter = lektor_markdown_highlighter:MarkdownHighlighterPlugin', - ] - }, - install_requires=[ - 'Pygments', - ] -)