Пример #1
0
    import misaka as m
    # from misaka import Markdown, HtmlRenderer, EXT_FENCED_CODE, EXT_NO_INTRA_EMPHASIS, HTML_SMARTYPANTS
except ImportError:
    from strange_case import require_package
    require_package('misaka')
import jinja2
import jinja2.ext
from plywood.env import PlywoodEnv

try:
    import pygments as p
    from pygments.formatters import HtmlFormatter
    from pygments.lexers import get_lexer_by_name
except ImportError:
    from strange_case import recommend_package
    recommend_package('pygments',
                      'Pygments is used for syntax highlighting code blocks')

slug_remove = re.compile('\W+')
unidecode = None
try:
    import unidecode
except ImportError:
    from strange_case import recommend_package
    recommend_package(
        'unidecode',
        'Unidecode is used to convert headers with non-ASCII characters into ids for <h1> tags'
    )


def sluggify(s):
    if unidecode:
Пример #2
0
import jinja2
import jinja2.ext
try:
    import misaka as m
    # from misaka import Markdown, HtmlRenderer, EXT_FENCED_CODE, EXT_NO_INTRA_EMPHASIS, HTML_SMARTYPANTS
except ImportError:
    from strange_case import require_package
    require_package('misaka')

try:
    import pygments as p
    from pygments.formatters import HtmlFormatter
    from pygments.lexers import get_lexer_by_name
except ImportError:
    from strange_case import recommend_package
    recommend_package('pygments', 'Pygments is used for syntax highlighting code blocks')

slug_remove = re.compile('\W+')
unidecode = None
try:
    import unidecode
except ImportError:
    from strange_case import recommend_package
    recommend_package('unidecode', 'Unidecode is used to convert headers with non-ASCII characters into ids for <h1> tags')


def sluggify(s):
    if unidecode:
        s = unidecode.unidecode(s)
    s = s.lower()
    return slug_remove.sub('-', s).strip('-')
Пример #3
0
import jinja2
import jinja2.ext
try:
    import markdown2
except ImportError:
    from strange_case import require_package
    require_package('Markdown2')

try:
    import pygments
except ImportError:
    from strange_case import recommend_package
    recommend_package('pygments', 'Pygments is used for syntax highlighting code blocks')


markdowner = markdown2.Markdown(extras=["fenced-code-blocks", "header-ids",
    "code-friendly"])


# markdown filter
def markdown(markdown):
    return markdowner.convert(markdown).strip()


# markdown block
class MarkdownExtension(jinja2.ext.Extension):
    tags = ('markdown',)

    def parse(self, parser):
        lineno = parser.stream.next().lineno
        body = parser.parse_statements(
Пример #4
0
import jinja2
import jinja2.ext
try:
    import markdown2
except ImportError:
    from strange_case import require_package
    require_package('Markdown2')

try:
    import pygments
except ImportError:
    from strange_case import recommend_package
    recommend_package('pygments')


markdowner = markdown2.Markdown(extras=["fenced-code-blocks", "header-ids",
    "code-friendly"])


# markdown filter
def markdown(markdown):
    return markdowner.convert(markdown).strip()


# markdown block
class MarkdownExtension(jinja2.ext.Extension):
    tags = ('markdown',)

    def parse(self, parser):
        lineno = parser.stream.next().lineno
        body = parser.parse_statements(