def tojson_filter(obj, **kwargs):
return Markup(htmlsafe_dumps(obj, **kwargs))
python类Markup()的实例源码
def do_render(self):
return jinja2.Markup(prism.handle_render(self.plugin_id, self.render))
def include_static(name):
""" Load a file from the /static/ directory """
desired_file = os.path.join(flask_app.static_folder, name)
with open(desired_file) as f:
return jinja2.Markup(f.read())
def do_render(self, site_config):
return jinja2.Markup(prism.handle_render(self.plugin_id, self.render, site_config))
def newline_br(eval_ctx, value):
result = u'\n\n'.join(u'<p>%s</p>' % p.replace('\n', '<br>\n') \
for p in _paragraph_re.split(escape(value)))
if eval_ctx.autoescape:
result = Markup(result)
return result
def tojson_filter(obj, **kwargs):
return Markup(htmlsafe_dumps(obj, **kwargs))
def __init__(self, id, name, priority=100, content='',
octicon=None, badge=None):
self.id = id
self.name = name
self.content = jinja2.Markup(content)
self.priority = priority
self.octicon = octicon
self.badge = badge
def gh_user_link(user):
"""Convert user/org to its GitHub URL
:param repo: User to show its GitHub URL
:type repo: ``repocribro.models.RepositoryOwner``
:return: HTML code with hyperlink to GitHub user/org page
:rtype: ``jinja2.Markup``
"""
return jinja2.Markup(
'<a href="https://github.com/{0}" target="_blank">{0}</a>'.format(
user.login
)
)
def gh_repo_link(repo):
"""Convert repo to its GitHub URL
:param repo: Repository to show its GitHub URL
:type repo: ``repocribro.models.Repository``
:return: HTML code with hyperlink to GitHub repo page
:rtype: ``jinja2.Markup``
"""
return jinja2.Markup(
'<a href="https://github.com/{0}" target="_blank">{0}</a>'.format(
repo.full_name
)
)
def email_link(email):
"""Convert email string to HTML link
:param email: Email address
:type email: str
:return: HTML code with hyperlink mailto
:rtype: ``jinja2.Markup``
"""
if email is None:
return ''
return jinja2.Markup('<a href="mailto:{0}">{0}</a>'.format(email))
def test_ext_link():
result = ext_link('https://github.com')
assert 'https://github.com' in result
assert 'href="https://github.com"' in result
assert 'target="_blank"' in result
assert isinstance(result, jinja2.Markup)
assert ext_link(None) == ''
# @see http://getbootstrap.com/components/#alerts
def test_gh_user_link():
user = User(111, 'some', '', '', None, '', '', None, None, None, None)
result = gh_user_link(user)
assert user.login in result
assert 'https://github.com' in result
assert isinstance(result, jinja2.Markup)
org = Organization(111, 'some', '', '', None, '', '', None, None)
result = gh_user_link(org)
assert org.login in result
assert 'https://github.com' in result
assert isinstance(result, jinja2.Markup)
def test_gh_repo_link():
repo = Repository(777, None, 'some/repo', 'repo', 'C++', '', '',
False, None, None, Repository.VISIBILITY_PRIVATE)
result = gh_repo_link(repo)
assert repo.full_name in result
assert 'https://github.com' in result
assert isinstance(result, jinja2.Markup)
def render_markup(text):
"""Renders the given text as markdown
:param text: The text that should be rendered as markdown
"""
return Markup(markdown.render(text))
def tojson_filter(obj, **kwargs):
return Markup(htmlsafe_dumps(obj, **kwargs))
def _format_source(self, source):
formatter = HtmlFormatter(nowrap=True)
html = highlight(source, PythonLexer(), formatter)
return {
'html_lines': [Markup(l) for l in html.splitlines()],
'css': formatter.get_style_defs()
}
def tojson_filter(obj, **kwargs):
return Markup(htmlsafe_dumps(obj, **kwargs))
def tojson_filter(obj, **kwargs):
return Markup(htmlsafe_dumps(obj, **kwargs))
def include_pagedown(self):
if request.is_secure:
protocol = 'https'
else:
protocol = 'http'
return Markup('''
<script type="text/javascript" src="{0}://cdnjs.cloudflare.com/ajax/libs/pagedown/1.0/Markdown.Converter.min.js"></script>
<script type="text/javascript" src="{0}://cdnjs.cloudflare.com/ajax/libs/pagedown/1.0/Markdown.Sanitizer.min.js"></script>
'''.format(protocol))