mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Merge pull request #2 from un-pogaz/template_highlighter
Sligh improvement to syntax key word mode and small regex fix
This commit is contained in:
commit
7929687138
@ -89,7 +89,7 @@ class TemplateHighlighter(QSyntaxHighlighter):
|
|||||||
r"|\$+#?[a-zA-Z]\w*",
|
r"|\$+#?[a-zA-Z]\w*",
|
||||||
"identifier")
|
"identifier")
|
||||||
|
|
||||||
a(r"^\bprogram\b:", "keyword")
|
a(r"^program:", "keymode")
|
||||||
a(
|
a(
|
||||||
"|".join([r"\b%s\b" % keyword for keyword in self.KEYWORDS_GPM]),
|
"|".join([r"\b%s\b" % keyword for keyword in self.KEYWORDS_GPM]),
|
||||||
"keyword")
|
"keyword")
|
||||||
@ -102,7 +102,7 @@ class TemplateHighlighter(QSyntaxHighlighter):
|
|||||||
|
|
||||||
a(r"""(?<!:)'[^']*'|"[^"]*\"""", "string")
|
a(r"""(?<!:)'[^']*'|"[^"]*\"""", "string")
|
||||||
else:
|
else:
|
||||||
a(r"^\bpython\b:", "keyword")
|
a(r"^python:", "keymode")
|
||||||
|
|
||||||
a(
|
a(
|
||||||
"|".join([r"\b%s\b" % keyword for keyword in self.KEYWORDS_PYTHON]),
|
"|".join([r"\b%s\b" % keyword for keyword in self.KEYWORDS_PYTHON]),
|
||||||
@ -111,14 +111,14 @@ class TemplateHighlighter(QSyntaxHighlighter):
|
|||||||
"|".join([r"\b%s\b" % builtin for builtin in self.BUILTINS_PYTHON]),
|
"|".join([r"\b%s\b" % builtin for builtin in self.BUILTINS_PYTHON]),
|
||||||
"builtin")
|
"builtin")
|
||||||
a(
|
a(
|
||||||
"|".join([r"\b%s\b" % constant
|
"|".join([r"\b%s\b" % constant for constant in self.CONSTANTS_PYTHON]),
|
||||||
for constant in self.CONSTANTS_PYTHON]), "constant")
|
"constant")
|
||||||
|
|
||||||
a(r"\bPyQt6\b|\bqt.core\b|\bQt?[A-Z][a-z]\w+\b", "pyqt")
|
a(r"\bPyQt6\b|\bqt.core\b|\bQt?[A-Z][a-z]\w+\b", "pyqt")
|
||||||
a(r"@\w+(\.\w+)?\b", "decorator")
|
a(r"@\w+(\.\w+)?\b", "decorator")
|
||||||
|
|
||||||
a(r"""(?:'[^']*?'|"[^"]*?")""", "string")
|
a(r"""('|").*?\1""", "string")
|
||||||
stringRe = r"""((:?"|'){3}).*?\1"""
|
stringRe = r"""((?:"|'){3}).*?\1"""
|
||||||
a(stringRe, "string")
|
a(stringRe, "string")
|
||||||
self.stringRe = re.compile(stringRe)
|
self.stringRe = re.compile(stringRe)
|
||||||
self.tripleSingleRe = re.compile(r"""'''(?!")""")
|
self.tripleSingleRe = re.compile(r"""'''(?!")""")
|
||||||
@ -216,14 +216,11 @@ class TemplateHighlighter(QSyntaxHighlighter):
|
|||||||
pp = self.find_paren(bn, i)
|
pp = self.find_paren(bn, i)
|
||||||
if pp and pp.highlight:
|
if pp and pp.highlight:
|
||||||
self.setFormat(i, length, self.Formats[format_])
|
self.setFormat(i, length, self.Formats[format_])
|
||||||
elif format_ == 'keyword':
|
elif format_ == 'keymode':
|
||||||
if bn > 0 and i == 0:
|
if bn > 0 and i == 0:
|
||||||
if text[i:i+length] == ('python:' if self.for_python else 'program:'):
|
continue
|
||||||
continue
|
self.setFormat(i, length, self.Formats['keyword'])
|
||||||
print('bn', bn, format_, text[i:i+length])
|
|
||||||
self.setFormat(i, length, self.Formats[format_])
|
|
||||||
else:
|
else:
|
||||||
print('bn', bn, format_, text[i:i+length])
|
|
||||||
self.setFormat(i, length, self.Formats[format_])
|
self.setFormat(i, length, self.Formats[format_])
|
||||||
|
|
||||||
self.setCurrentBlockState(NORMAL)
|
self.setCurrentBlockState(NORMAL)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user