X-Git-Url: https://harishankar.org/repos/?p=biaweb_qt.git;a=blobdiff_plain;f=highlighter.py;h=e963a7f7c8068e02df69dd2f4865a780463a6911;hp=95cfa90c09c83567a0eb671ad89ac95264feb993;hb=b517d55320f54925d862aca9dedb363b6d3b156d;hpb=a17e899ab18f129ecc6e894e8b2ddc3322aef6f8 diff --git a/highlighter.py b/highlighter.py index 95cfa90..e963a7f 100644 --- a/highlighter.py +++ b/highlighter.py @@ -9,16 +9,30 @@ class SimpleHtmlHighlighter (PyQt4.QtGui.QSyntaxHighlighter): def highlightBlock (self, text): # define the character highlight formats + + # for tags charfmt1 = PyQt4.QtGui.QTextCharFormat () charfmt1.setFontWeight (PyQt4.QtGui.QFont.Bold) charfmt1.setForeground (PyQt4.QtCore.Qt.blue) + # for strings charfmt2 = PyQt4.QtGui.QTextCharFormat () charfmt2.setForeground (PyQt4.QtCore.Qt.darkGreen) + # for html entities + charfmt3 = PyQt4.QtGui.QTextCharFormat () + charfmt3.setForeground (PyQt4.QtCore.Qt.magenta) + + # for template variables - ${temp_var} + charfmt4 = PyQt4.QtGui.QTextCharFormat () + charfmt4.setForeground (PyQt4.QtCore.Qt.darkGray) + charfmt4.setFontItalic (True) + # matching regular expressions htmltagexps = [ (PyQt4.QtCore.QRegExp ("<[^<>]+>"), charfmt1), - (PyQt4.QtCore.QRegExp ("\"[^\"]+\""), charfmt2) + (PyQt4.QtCore.QRegExp ("\"[^\"]+\""), charfmt2), + (PyQt4.QtCore.QRegExp ("&[^;]+;"), charfmt3), + (PyQt4.QtCore.QRegExp ("\$\{[^\}]+\}"), charfmt4) ] # run through the list of regular expressions to highlight