本文整理汇总了Python中pygments.styles.get_style_by_name函数的典型用法代码示例。如果您正苦于以下问题:Python get_style_by_name函数的具体用法?Python get_style_by_name怎么用?Python get_style_by_name使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了get_style_by_name函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _make_style_from_name
def _make_style_from_name(self, name):
"""
Small wrapper that make an IPython compatible style from a style name
We need that to add style for prompt ... etc.
"""
style_cls = get_style_by_name(name)
style_overrides = {
Token.Prompt: "#009900",
Token.PromptNum: "#00ff00 bold",
Token.OutPrompt: "#990000",
Token.OutPromptNum: "#ff0000 bold",
}
if name == "default":
style_cls = get_style_by_name("default")
# The default theme needs to be visible on both a dark background
# and a light background, because we can't tell what the terminal
# looks like. These tweaks to the default theme help with that.
style_overrides.update(
{
Token.Number: "#007700",
Token.Operator: "noinherit",
Token.String: "#BB6622",
Token.Name.Function: "#2080D0",
Token.Name.Class: "bold #2080D0",
Token.Name.Namespace: "bold #2080D0",
}
)
style_overrides.update(self.highlighting_style_overrides)
style = PygmentsStyle.from_defaults(pygments_style_cls=style_cls, style_dict=style_overrides)
return style
示例2: render_GET
def render_GET(self, request):
try:
style = get_style_by_name(self.style_name)
except ClassNotFound:
style = get_style_by_name('default')
self.style_name = 'default'
prev_url = None
if self.days_back:
prev_url = self.url_for(request, self.days_back - 1)
next_url = self.url_for(request, (self.days_back or 0) + 1)
formatter = LogFormatter(style=style)
if self.days_back:
log_date = date.today() - timedelta(self.days_back)
suffix = log_date.strftime('.%Y_%m_%d').replace('_0', '_')
self.logfilename += suffix
try:
with codecs.open(self.logfilename, 'r', 'utf-8') as logfile:
html = self.render_log(logfile.read(), formatter,
prev_url, next_url)
except IOError:
request.setResponseCode(404)
return '<html><body>Go away.</body></html>'
request.setHeader('Content-Type', 'text/html;charset=utf-8')
return html.encode('utf-8')
示例3: _make_style_from_name
def _make_style_from_name(self, name):
"""
Small wrapper that make an IPython compatible style from a style name
We need that to add style for prompt ... etc.
"""
style_cls = get_style_by_name(name)
style_overrides = {
Token.Prompt: style_cls.styles.get( Token.Keyword, '#009900'),
Token.PromptNum: style_cls.styles.get( Token.Literal.Number, '#00ff00 bold')
}
if name is 'default':
style_cls = get_style_by_name('default')
# The default theme needs to be visible on both a dark background
# and a light background, because we can't tell what the terminal
# looks like. These tweaks to the default theme help with that.
style_overrides.update({
Token.Number: '#007700',
Token.Operator: 'noinherit',
Token.String: '#BB6622',
Token.Name.Function: '#2080D0',
Token.Name.Class: 'bold #2080D0',
Token.Name.Namespace: 'bold #2080D0',
})
style_overrides.update(self.highlighting_style_overrides)
style = PygmentsStyle.from_defaults(pygments_style_cls=style_cls,
style_dict=style_overrides)
return style
示例4: render
def render(self, context):
if not is_qouted(self.style):
self.style = template.Variable(self.style).resolve(context)
else: self.style = self.style[1:-1]
if self.linenos:
formatter = HtmlFormatter(style = get_style_by_name(self.style), linenos = self.linenos)
else: formatter = HtmlFormatter(style = get_style_by_name(self.style))
return mark_safe(formatter.get_style_defs('.highlight'))
示例5: set_style
def set_style(self, extensions, settings):
"""
Search the extensions for the style to be used and return it.
If it is not explicitly set, go ahead and insert the default
style (github).
"""
style = 'default'
if not PYGMENTS_AVAILABLE: # pragma: no cover
settings["settings"]["use_pygments_css"] = False
global_use_pygments_css = settings["settings"]["use_pygments_css"]
use_pygments_css = False
# Search for highlight extensions to see what whether pygments css is required.
for hilite_ext in ('markdown.extensions.codehilite', 'pymdownx.inlinehilite'):
if hilite_ext not in extensions:
continue
config = extensions[hilite_ext]
if config is None:
config = {}
use_pygments_css = use_pygments_css or (
not config.get('noclasses', False) and
config.get('use_pygments', True) and
config.get('use_codehilite_settings', True) and
PYGMENTS_AVAILABLE and
global_use_pygments_css
)
if global_use_pygments_css and not use_pygments_css:
settings["settings"]["use_pygments_css"] = False
else:
settings["settings"]["use_pygments_css"] = use_pygments_css
if use_pygments_css:
# Ensure a working style is set
style = settings["settings"]['pygments_style']
try:
# Check if the desired style exists internally
get_style_by_name(style)
except Exception:
logger.Log.error("Cannot find style: %s! Falling back to 'default' style." % style)
style = "default"
settings["settings"]["pygments_style"] = style
settings["page"]["pygments_style"] = self.load_highlight(
style,
settings["settings"]["use_pygments_css"],
settings["settings"]['pygments_class']
)
示例6: _make_style_from_name_or_cls
def _make_style_from_name_or_cls(self, name_or_cls):
"""
Small wrapper that make an IPython compatible style from a style name
We need that to add style for prompt ... etc.
"""
style_overrides = {}
if name_or_cls == 'legacy':
legacy = self.colors.lower()
if legacy == 'linux':
style_cls = get_style_by_name('monokai')
style_overrides = _style_overrides_linux
elif legacy == 'lightbg':
style_overrides = _style_overrides_light_bg
style_cls = get_style_by_name('pastie')
elif legacy == 'neutral':
# The default theme needs to be visible on both a dark background
# and a light background, because we can't tell what the terminal
# looks like. These tweaks to the default theme help with that.
style_cls = get_style_by_name('default')
style_overrides.update({
Token.Number: '#007700',
Token.Operator: 'noinherit',
Token.String: '#BB6622',
Token.Name.Function: '#2080D0',
Token.Name.Class: 'bold #2080D0',
Token.Name.Namespace: 'bold #2080D0',
Token.Prompt: '#009900',
Token.PromptNum: '#00ff00 bold',
Token.OutPrompt: '#990000',
Token.OutPromptNum: '#ff0000 bold',
})
elif legacy =='nocolor':
style_cls=_NoStyle
style_overrides = {}
else :
raise ValueError('Got unknown colors: ', legacy)
else :
if isinstance(name_or_cls, string_types):
style_cls = get_style_by_name(name_or_cls)
else:
style_cls = name_or_cls
style_overrides = {
Token.Prompt: '#009900',
Token.PromptNum: '#00ff00 bold',
Token.OutPrompt: '#990000',
Token.OutPromptNum: '#ff0000 bold',
}
style_overrides.update(self.highlighting_style_overrides)
style = PygmentsStyle.from_defaults(pygments_style_cls=style_cls,
style_dict=style_overrides)
return style
示例7: init_syntax_highlighting
def init_syntax_highlighting(self, pygments_style):
self.past_lines = []
if pygments_style:
if isstr(pygments_style):
self.pygments_style = get_style_by_name(pygments_style)
else:
self.pygments_style = pygments_style
else:
self.pygments_style = get_style_by_name('default')
self.lexer = PythonLexer()
self.formatter = Terminal256Formatter(style=self.pygments_style)
示例8: _make_style_from_name
def _make_style_from_name(self, name):
"""
Small wrapper that make an IPython compatible style from a style name
We need that to add style for prompt ... etc.
"""
style_overrides = {}
if name == "legacy":
legacy = self.colors.lower()
if legacy == "linux":
style_cls = get_style_by_name("monokai")
style_overrides = _style_overrides_linux
elif legacy == "lightbg":
style_overrides = _style_overrides_light_bg
style_cls = get_style_by_name("pastie")
elif legacy == "neutral":
# The default theme needs to be visible on both a dark background
# and a light background, because we can't tell what the terminal
# looks like. These tweaks to the default theme help with that.
style_cls = get_style_by_name("default")
style_overrides.update(
{
Token.Number: "#007700",
Token.Operator: "noinherit",
Token.String: "#BB6622",
Token.Name.Function: "#2080D0",
Token.Name.Class: "bold #2080D0",
Token.Name.Namespace: "bold #2080D0",
Token.Prompt: "#009900",
Token.PromptNum: "#00ff00 bold",
Token.OutPrompt: "#990000",
Token.OutPromptNum: "#ff0000 bold",
}
)
elif legacy == "nocolor":
style_cls = _NoStyle
style_overrides = {}
else:
raise ValueError("Got unknown colors: ", legacy)
else:
style_cls = get_style_by_name(name)
style_overrides = {
Token.Prompt: "#009900",
Token.PromptNum: "#00ff00 bold",
Token.OutPrompt: "#990000",
Token.OutPromptNum: "#ff0000 bold",
}
style_overrides.update(self.highlighting_style_overrides)
style = PygmentsStyle.from_defaults(pygments_style_cls=style_cls, style_dict=style_overrides)
return style
示例9: style_factory
def style_factory(name, cli_style):
try:
style = get_style_by_name(name)
except ClassNotFound:
style = get_style_by_name('native')
class VStyle(Style):
styles = {}
styles.update(style.styles)
styles.update(default_style_extensions)
custom_styles = dict([(string_to_tokentype(x), y)
for x, y in cli_style.items()])
styles.update(custom_styles)
return PygmentsStyle(VStyle)
示例10: _bbcodeAsHtml
def _bbcodeAsHtml(self):
style = get_style_by_name('igor')
formatter = HtmlFormatter(style=style)
lexer = get_lexer_by_name("bbcode", stripall=True)
css = formatter.get_style_defs()
txt = highlight(self._bbcode, lexer, HtmlFormatter())
return "<style>%s</style>\n%s" % (css, txt)
示例11: blog_mod_render_items
def blog_mod_render_items(self, blog, items):
if self.markdown_highlight_style:
from pygments.style import Style
from pygments.styles import get_style_by_name
from pygments.formatters import HtmlFormatter
# User-defined custom style takes precedence
try:
with tmp_sys_path(self.config.get('command_dir', "")):
mod = import_module(self.markdown_highlight_style)
except ImportError:
mdstyle = None
else:
mdstyle = first_subclass(mod, Style)
# Try for built-in style if no custom style
if not mdstyle:
mdstyle = get_style_by_name(self.markdown_highlight_style)
# Generate CSS with selector for markdown codehilite extension
css = HtmlFormatter(style=mdstyle).get_style_defs(arg=".codehilite")
if not css.endswith(os.linesep):
css = "{}{}".format(css, os.linesep)
csspath = blog.metadata['highlight_stylesheet_url']
if csspath.startswith('/'):
csspath = csspath[1:]
items.append((encode(css, blog.metadata['charset']), csspath))
return items
示例12: create_tags
def create_tags(self):
tags={}
bold_font = font.Font(self.text, self.text.cget("font"))
bold_font.configure(weight=font.BOLD)
italic_font = font.Font(self.text, self.text.cget("font"))
italic_font.configure(slant=font.ITALIC)
bold_italic_font = font.Font(self.text, self.text.cget("font"))
bold_italic_font.configure(weight=font.BOLD, slant=font.ITALIC)
style = get_style_by_name("default")
for ttype, ndef in style:
# print(ttype, ndef)
tag_font = None
if ndef["bold"] and ndef["italic"]:
tag_font = bold_italic_font
elif ndef["bold"]:
tag_font = bold_font
elif ndef["italic"]:
tag_font = italic_font
if ndef["color"]:
foreground = "#%s" % ndef["color"]
else:
foreground = None
tags[ttype]=str(ttype)
self.text.tag_configure(tags[ttype], foreground=foreground, font=tag_font)
# self.text.tag_configure(str(ttype), foreground=foreground, font=tag_font)
return tags
示例13: process_request
def process_request(self, req):
style = req.args['style']
try:
style_cls = get_style_by_name(style)
except ValueError as e:
raise HTTPNotFound(e)
parts = style_cls.__module__.split('.')
filename = resource_filename('.'.join(parts[:-1]), parts[-1] + '.py')
mtime = datetime.fromtimestamp(os.path.getmtime(filename), localtz)
last_modified = http_date(mtime)
if last_modified == req.get_header('If-Modified-Since'):
req.send_response(304)
req.end_headers()
return
formatter = HtmlFormatter(style=style_cls)
content = u'\n\n'.join([
formatter.get_style_defs('div.code pre'),
formatter.get_style_defs('table.code td')
]).encode('utf-8')
req.send_response(200)
req.send_header('Content-Type', 'text/css; charset=utf-8')
req.send_header('Last-Modified', last_modified)
req.send_header('Content-Length', len(content))
req.write(content)
示例14: __init__
def __init__(self, style='default'):
""" The parameter *style* select the Pygments style.
Pygments style attributes are:
* bgcolor,
* bold,
* border,
* color,
* italic,
* mono,
* roman,
* sans,
* underline.
"""
pygments_style = get_style_by_name(style)
for token, style_attributes in pygments_style.list_styles():
text_format = QtGui.QTextCharFormat()
if style_attributes['bgcolor']:
text_format.setBackground(to_brush(style_attributes['bgcolor']))
if style_attributes['color']:
text_format.setForeground(to_brush(style_attributes['color']))
if style_attributes['bold']:
text_format.setFontWeight(QtGui.QFont.Bold)
if style_attributes['italic']:
text_format.setFontItalic(True)
self[token] = text_format
示例15: get_all_code_styles
def get_all_code_styles():
"""
Return a mapping from style names to their classes.
"""
result = dict((name, style_from_pygments_cls(get_style_by_name(name))) for name in get_all_styles())
result['win32'] = Style.from_dict(win32_code_style)
return result