diff --git a/ParseSyntaxFiles.hs b/ParseSyntaxFiles.hs
--- a/ParseSyntaxFiles.hs
+++ b/ParseSyntaxFiles.hs
@@ -247,7 +247,8 @@
       lineParser = text   $ "parseSourceLine :: String -> State SyntaxState SourceLine\n\
                             \parseSourceLine = mkParseSourceLine parseExpressionInternal pEndLine"
       endLineParser = text "pEndLine = do" $$
-                      (nest 2 $ text "context <- currentContext" $$
+                      (nest 2 $ text "updateState $ \\st -> st{ synStPrevNonspace = False }" $$
+                                text "context <- currentContext" $$
                                 text "case context of" $$
                                 (nest 2 $ (vcat $ map (\cont -> text (show $ contName cont) <> text " -> " <>
                                             switchContext (contLineEndContext cont) (<> text " >> ") <>
diff --git a/Text/Highlighting/Kate/Syntax/Actionscript.hs b/Text/Highlighting/Kate/Syntax/Actionscript.hs
--- a/Text/Highlighting/Kate/Syntax/Actionscript.hs
+++ b/Text/Highlighting/Kate/Syntax/Actionscript.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("ActionScript 2.0",["Normal"])], synStLanguage = "ActionScript 2.0", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Ada.hs b/Text/Highlighting/Kate/Syntax/Ada.hs
--- a/Text/Highlighting/Kate/Syntax/Ada.hs
+++ b/Text/Highlighting/Kate/Syntax/Ada.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Ada",["Default"])], synStLanguage = "Ada", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Default" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Alert.hs b/Text/Highlighting/Kate/Syntax/Alert.hs
--- a/Text/Highlighting/Kate/Syntax/Alert.hs
+++ b/Text/Highlighting/Kate/Syntax/Alert.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Alerts",["Normal Text"])], synStLanguage = "Alerts", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> (popContext) >> pEndLine
diff --git a/Text/Highlighting/Kate/Syntax/Alert_indent.hs b/Text/Highlighting/Kate/Syntax/Alert_indent.hs
--- a/Text/Highlighting/Kate/Syntax/Alert_indent.hs
+++ b/Text/Highlighting/Kate/Syntax/Alert_indent.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Alerts_indent",["Normal Text"])], synStLanguage = "Alerts_indent", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> (popContext) >> pEndLine
diff --git a/Text/Highlighting/Kate/Syntax/Apache.hs b/Text/Highlighting/Kate/Syntax/Apache.hs
--- a/Text/Highlighting/Kate/Syntax/Apache.hs
+++ b/Text/Highlighting/Kate/Syntax/Apache.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Apache Configuration",["apache"])], synStLanguage = "Apache Configuration", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "apache" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Asn1.hs b/Text/Highlighting/Kate/Syntax/Asn1.hs
--- a/Text/Highlighting/Kate/Syntax/Asn1.hs
+++ b/Text/Highlighting/Kate/Syntax/Asn1.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("ASN.1",["Normal Text"])], synStLanguage = "ASN.1", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Asp.hs b/Text/Highlighting/Kate/Syntax/Asp.hs
--- a/Text/Highlighting/Kate/Syntax/Asp.hs
+++ b/Text/Highlighting/Kate/Syntax/Asp.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("ASP",["nosource"])], synStLanguage = "ASP", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "nosource" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Awk.hs b/Text/Highlighting/Kate/Syntax/Awk.hs
--- a/Text/Highlighting/Kate/Syntax/Awk.hs
+++ b/Text/Highlighting/Kate/Syntax/Awk.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("AWK",["Base"])], synStLanguage = "AWK", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Base" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Bash.hs b/Text/Highlighting/Kate/Syntax/Bash.hs
--- a/Text/Highlighting/Kate/Syntax/Bash.hs
+++ b/Text/Highlighting/Kate/Syntax/Bash.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Bash",["Start"])], synStLanguage = "Bash", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Bibtex.hs b/Text/Highlighting/Kate/Syntax/Bibtex.hs
--- a/Text/Highlighting/Kate/Syntax/Bibtex.hs
+++ b/Text/Highlighting/Kate/Syntax/Bibtex.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("BibTeX",["Normal"])], synStLanguage = "BibTeX", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Boo.hs b/Text/Highlighting/Kate/Syntax/Boo.hs
--- a/Text/Highlighting/Kate/Syntax/Boo.hs
+++ b/Text/Highlighting/Kate/Syntax/Boo.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Boo",["Normal"])], synStLanguage = "Boo", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/C.hs b/Text/Highlighting/Kate/Syntax/C.hs
--- a/Text/Highlighting/Kate/Syntax/C.hs
+++ b/Text/Highlighting/Kate/Syntax/C.hs
@@ -45,6 +45,7 @@
 startingState = SyntaxState {synStContexts = fromList [("C",["Normal"])], synStLanguage = "C", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Changelog.hs b/Text/Highlighting/Kate/Syntax/Changelog.hs
--- a/Text/Highlighting/Kate/Syntax/Changelog.hs
+++ b/Text/Highlighting/Kate/Syntax/Changelog.hs
@@ -42,6 +42,7 @@
 startingState = SyntaxState {synStContexts = fromList [("ChangeLog",["Normal"])], synStLanguage = "ChangeLog", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Clojure.hs b/Text/Highlighting/Kate/Syntax/Clojure.hs
--- a/Text/Highlighting/Kate/Syntax/Clojure.hs
+++ b/Text/Highlighting/Kate/Syntax/Clojure.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Clojure",["Normal"])], synStLanguage = "Clojure", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Cmake.hs b/Text/Highlighting/Kate/Syntax/Cmake.hs
--- a/Text/Highlighting/Kate/Syntax/Cmake.hs
+++ b/Text/Highlighting/Kate/Syntax/Cmake.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("CMake",["Normal Text"])], synStLanguage = "CMake", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Coffeescript.hs b/Text/Highlighting/Kate/Syntax/Coffeescript.hs
--- a/Text/Highlighting/Kate/Syntax/Coffeescript.hs
+++ b/Text/Highlighting/Kate/Syntax/Coffeescript.hs
@@ -45,6 +45,7 @@
 startingState = SyntaxState {synStContexts = fromList [("CofeeScript",["Normal"])], synStLanguage = "CofeeScript", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Coldfusion.hs b/Text/Highlighting/Kate/Syntax/Coldfusion.hs
--- a/Text/Highlighting/Kate/Syntax/Coldfusion.hs
+++ b/Text/Highlighting/Kate/Syntax/Coldfusion.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("ColdFusion",["Normal Text"])], synStLanguage = "ColdFusion", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Commonlisp.hs b/Text/Highlighting/Kate/Syntax/Commonlisp.hs
--- a/Text/Highlighting/Kate/Syntax/Commonlisp.hs
+++ b/Text/Highlighting/Kate/Syntax/Commonlisp.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Common Lisp",["Normal"])], synStLanguage = "Common Lisp", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Cpp.hs b/Text/Highlighting/Kate/Syntax/Cpp.hs
--- a/Text/Highlighting/Kate/Syntax/Cpp.hs
+++ b/Text/Highlighting/Kate/Syntax/Cpp.hs
@@ -45,6 +45,7 @@
 startingState = SyntaxState {synStContexts = fromList [("C++",["Normal"])], synStLanguage = "C++", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Cs.hs b/Text/Highlighting/Kate/Syntax/Cs.hs
--- a/Text/Highlighting/Kate/Syntax/Cs.hs
+++ b/Text/Highlighting/Kate/Syntax/Cs.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("C#",["Normal"])], synStLanguage = "C#", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Css.hs b/Text/Highlighting/Kate/Syntax/Css.hs
--- a/Text/Highlighting/Kate/Syntax/Css.hs
+++ b/Text/Highlighting/Kate/Syntax/Css.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("CSS",["Base"])], synStLanguage = "CSS", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Base" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/D.hs b/Text/Highlighting/Kate/Syntax/D.hs
--- a/Text/Highlighting/Kate/Syntax/D.hs
+++ b/Text/Highlighting/Kate/Syntax/D.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("D",["normal"])], synStLanguage = "D", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Diff.hs b/Text/Highlighting/Kate/Syntax/Diff.hs
--- a/Text/Highlighting/Kate/Syntax/Diff.hs
+++ b/Text/Highlighting/Kate/Syntax/Diff.hs
@@ -42,6 +42,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Diff",["Normal"])], synStLanguage = "Diff", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Djangotemplate.hs b/Text/Highlighting/Kate/Syntax/Djangotemplate.hs
--- a/Text/Highlighting/Kate/Syntax/Djangotemplate.hs
+++ b/Text/Highlighting/Kate/Syntax/Djangotemplate.hs
@@ -46,6 +46,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Django HTML Template",["Start"])], synStLanguage = "Django HTML Template", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Doxygen.hs b/Text/Highlighting/Kate/Syntax/Doxygen.hs
--- a/Text/Highlighting/Kate/Syntax/Doxygen.hs
+++ b/Text/Highlighting/Kate/Syntax/Doxygen.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Doxygen",["Normal"])], synStLanguage = "Doxygen", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Dtd.hs b/Text/Highlighting/Kate/Syntax/Dtd.hs
--- a/Text/Highlighting/Kate/Syntax/Dtd.hs
+++ b/Text/Highlighting/Kate/Syntax/Dtd.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("DTD",["Normal"])], synStLanguage = "DTD", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Eiffel.hs b/Text/Highlighting/Kate/Syntax/Eiffel.hs
--- a/Text/Highlighting/Kate/Syntax/Eiffel.hs
+++ b/Text/Highlighting/Kate/Syntax/Eiffel.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Eiffel",["Normal"])], synStLanguage = "Eiffel", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Email.hs b/Text/Highlighting/Kate/Syntax/Email.hs
--- a/Text/Highlighting/Kate/Syntax/Email.hs
+++ b/Text/Highlighting/Kate/Syntax/Email.hs
@@ -42,6 +42,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Email",["headder"])], synStLanguage = "Email", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = False, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "headder" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Erlang.hs b/Text/Highlighting/Kate/Syntax/Erlang.hs
--- a/Text/Highlighting/Kate/Syntax/Erlang.hs
+++ b/Text/Highlighting/Kate/Syntax/Erlang.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Erlang",["Normal Text"])], synStLanguage = "Erlang", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> (popContext) >> pEndLine
diff --git a/Text/Highlighting/Kate/Syntax/Fortran.hs b/Text/Highlighting/Kate/Syntax/Fortran.hs
--- a/Text/Highlighting/Kate/Syntax/Fortran.hs
+++ b/Text/Highlighting/Kate/Syntax/Fortran.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Fortran",["default"])], synStLanguage = "Fortran", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = False, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "default" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Fsharp.hs b/Text/Highlighting/Kate/Syntax/Fsharp.hs
--- a/Text/Highlighting/Kate/Syntax/Fsharp.hs
+++ b/Text/Highlighting/Kate/Syntax/Fsharp.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("FSharp",["Normal"])], synStLanguage = "FSharp", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Gnuassembler.hs b/Text/Highlighting/Kate/Syntax/Gnuassembler.hs
--- a/Text/Highlighting/Kate/Syntax/Gnuassembler.hs
+++ b/Text/Highlighting/Kate/Syntax/Gnuassembler.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("GNU Assembler",["Normal"])], synStLanguage = "GNU Assembler", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Go.hs b/Text/Highlighting/Kate/Syntax/Go.hs
--- a/Text/Highlighting/Kate/Syntax/Go.hs
+++ b/Text/Highlighting/Kate/Syntax/Go.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Go",["normal"])], synStLanguage = "Go", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Haskell.hs b/Text/Highlighting/Kate/Syntax/Haskell.hs
--- a/Text/Highlighting/Kate/Syntax/Haskell.hs
+++ b/Text/Highlighting/Kate/Syntax/Haskell.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Haskell",["code"])], synStLanguage = "Haskell", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "code" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Haxe.hs b/Text/Highlighting/Kate/Syntax/Haxe.hs
--- a/Text/Highlighting/Kate/Syntax/Haxe.hs
+++ b/Text/Highlighting/Kate/Syntax/Haxe.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Haxe",["normal"])], synStLanguage = "Haxe", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Html.hs b/Text/Highlighting/Kate/Syntax/Html.hs
--- a/Text/Highlighting/Kate/Syntax/Html.hs
+++ b/Text/Highlighting/Kate/Syntax/Html.hs
@@ -45,6 +45,7 @@
 startingState = SyntaxState {synStContexts = fromList [("HTML",["Start"])], synStLanguage = "HTML", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Ini.hs b/Text/Highlighting/Kate/Syntax/Ini.hs
--- a/Text/Highlighting/Kate/Syntax/Ini.hs
+++ b/Text/Highlighting/Kate/Syntax/Ini.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("INI Files",["ini"])], synStLanguage = "INI Files", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "ini" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Java.hs b/Text/Highlighting/Kate/Syntax/Java.hs
--- a/Text/Highlighting/Kate/Syntax/Java.hs
+++ b/Text/Highlighting/Kate/Syntax/Java.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Java",["Normal"])], synStLanguage = "Java", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Javadoc.hs b/Text/Highlighting/Kate/Syntax/Javadoc.hs
--- a/Text/Highlighting/Kate/Syntax/Javadoc.hs
+++ b/Text/Highlighting/Kate/Syntax/Javadoc.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Javadoc",["Start"])], synStLanguage = "Javadoc", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Javascript.hs b/Text/Highlighting/Kate/Syntax/Javascript.hs
--- a/Text/Highlighting/Kate/Syntax/Javascript.hs
+++ b/Text/Highlighting/Kate/Syntax/Javascript.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("JavaScript",["Normal"])], synStLanguage = "JavaScript", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Json.hs b/Text/Highlighting/Kate/Syntax/Json.hs
--- a/Text/Highlighting/Kate/Syntax/Json.hs
+++ b/Text/Highlighting/Kate/Syntax/Json.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("JSON",["Normal"])], synStLanguage = "JSON", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Jsp.hs b/Text/Highlighting/Kate/Syntax/Jsp.hs
--- a/Text/Highlighting/Kate/Syntax/Jsp.hs
+++ b/Text/Highlighting/Kate/Syntax/Jsp.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("JSP",["Normal"])], synStLanguage = "JSP", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = False, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Latex.hs b/Text/Highlighting/Kate/Syntax/Latex.hs
--- a/Text/Highlighting/Kate/Syntax/Latex.hs
+++ b/Text/Highlighting/Kate/Syntax/Latex.hs
@@ -42,6 +42,7 @@
 startingState = SyntaxState {synStContexts = fromList [("LaTeX",["Normal Text"])], synStLanguage = "LaTeX", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Lex.hs b/Text/Highlighting/Kate/Syntax/Lex.hs
--- a/Text/Highlighting/Kate/Syntax/Lex.hs
+++ b/Text/Highlighting/Kate/Syntax/Lex.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Lex/Flex",["Pre Start"])], synStLanguage = "Lex/Flex", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Pre Start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/LiterateHaskell.hs b/Text/Highlighting/Kate/Syntax/LiterateHaskell.hs
--- a/Text/Highlighting/Kate/Syntax/LiterateHaskell.hs
+++ b/Text/Highlighting/Kate/Syntax/LiterateHaskell.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Literate Haskell",["text"])], synStLanguage = "Literate Haskell", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "text" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Lua.hs b/Text/Highlighting/Kate/Syntax/Lua.hs
--- a/Text/Highlighting/Kate/Syntax/Lua.hs
+++ b/Text/Highlighting/Kate/Syntax/Lua.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Lua",["Base"])], synStLanguage = "Lua", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Base" -> pushContext "Normal" >> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Makefile.hs b/Text/Highlighting/Kate/Syntax/Makefile.hs
--- a/Text/Highlighting/Kate/Syntax/Makefile.hs
+++ b/Text/Highlighting/Kate/Syntax/Makefile.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Makefile",["Normal"])], synStLanguage = "Makefile", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Mandoc.hs b/Text/Highlighting/Kate/Syntax/Mandoc.hs
--- a/Text/Highlighting/Kate/Syntax/Mandoc.hs
+++ b/Text/Highlighting/Kate/Syntax/Mandoc.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Troff Mandoc",["Normal"])], synStLanguage = "Troff Mandoc", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Matlab.hs b/Text/Highlighting/Kate/Syntax/Matlab.hs
--- a/Text/Highlighting/Kate/Syntax/Matlab.hs
+++ b/Text/Highlighting/Kate/Syntax/Matlab.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Matlab",["_normal"])], synStLanguage = "Matlab", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "_normal" -> (popContext) >> pEndLine
diff --git a/Text/Highlighting/Kate/Syntax/Maxima.hs b/Text/Highlighting/Kate/Syntax/Maxima.hs
--- a/Text/Highlighting/Kate/Syntax/Maxima.hs
+++ b/Text/Highlighting/Kate/Syntax/Maxima.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Maxima",["Normal Text"])], synStLanguage = "Maxima", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> (popContext) >> pEndLine
diff --git a/Text/Highlighting/Kate/Syntax/Metafont.hs b/Text/Highlighting/Kate/Syntax/Metafont.hs
--- a/Text/Highlighting/Kate/Syntax/Metafont.hs
+++ b/Text/Highlighting/Kate/Syntax/Metafont.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Metapost/Metafont",["Normal Text"])], synStLanguage = "Metapost/Metafont", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Mips.hs b/Text/Highlighting/Kate/Syntax/Mips.hs
--- a/Text/Highlighting/Kate/Syntax/Mips.hs
+++ b/Text/Highlighting/Kate/Syntax/Mips.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("MIPS Assembler",["normal"])], synStLanguage = "MIPS Assembler", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Modula2.hs b/Text/Highlighting/Kate/Syntax/Modula2.hs
--- a/Text/Highlighting/Kate/Syntax/Modula2.hs
+++ b/Text/Highlighting/Kate/Syntax/Modula2.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Modula-2",["Normal"])], synStLanguage = "Modula-2", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Modula3.hs b/Text/Highlighting/Kate/Syntax/Modula3.hs
--- a/Text/Highlighting/Kate/Syntax/Modula3.hs
+++ b/Text/Highlighting/Kate/Syntax/Modula3.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Modula-3",["Normal"])], synStLanguage = "Modula-3", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Monobasic.hs b/Text/Highlighting/Kate/Syntax/Monobasic.hs
--- a/Text/Highlighting/Kate/Syntax/Monobasic.hs
+++ b/Text/Highlighting/Kate/Syntax/Monobasic.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("MonoBasic",["Normal"])], synStLanguage = "MonoBasic", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Nasm.hs b/Text/Highlighting/Kate/Syntax/Nasm.hs
--- a/Text/Highlighting/Kate/Syntax/Nasm.hs
+++ b/Text/Highlighting/Kate/Syntax/Nasm.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Intel x86 (NASM)",["Normal"])], synStLanguage = "Intel x86 (NASM)", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Noweb.hs b/Text/Highlighting/Kate/Syntax/Noweb.hs
--- a/Text/Highlighting/Kate/Syntax/Noweb.hs
+++ b/Text/Highlighting/Kate/Syntax/Noweb.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("noweb",["RawDocumentation"])], synStLanguage = "noweb", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "RawDocumentation" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Objectivec.hs b/Text/Highlighting/Kate/Syntax/Objectivec.hs
--- a/Text/Highlighting/Kate/Syntax/Objectivec.hs
+++ b/Text/Highlighting/Kate/Syntax/Objectivec.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Objective-C",["Default"])], synStLanguage = "Objective-C", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Default" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Objectivecpp.hs b/Text/Highlighting/Kate/Syntax/Objectivecpp.hs
--- a/Text/Highlighting/Kate/Syntax/Objectivecpp.hs
+++ b/Text/Highlighting/Kate/Syntax/Objectivecpp.hs
@@ -45,6 +45,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Objective-C++",["Default"])], synStLanguage = "Objective-C++", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Default" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Ocaml.hs b/Text/Highlighting/Kate/Syntax/Ocaml.hs
--- a/Text/Highlighting/Kate/Syntax/Ocaml.hs
+++ b/Text/Highlighting/Kate/Syntax/Ocaml.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Objective Caml",["Normal"])], synStLanguage = "Objective Caml", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Octave.hs b/Text/Highlighting/Kate/Syntax/Octave.hs
--- a/Text/Highlighting/Kate/Syntax/Octave.hs
+++ b/Text/Highlighting/Kate/Syntax/Octave.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Octave",["_normal"])], synStLanguage = "Octave", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "_normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Pascal.hs b/Text/Highlighting/Kate/Syntax/Pascal.hs
--- a/Text/Highlighting/Kate/Syntax/Pascal.hs
+++ b/Text/Highlighting/Kate/Syntax/Pascal.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Pascal",["Normal"])], synStLanguage = "Pascal", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Perl.hs b/Text/Highlighting/Kate/Syntax/Perl.hs
--- a/Text/Highlighting/Kate/Syntax/Perl.hs
+++ b/Text/Highlighting/Kate/Syntax/Perl.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Perl",["normal"])], synStLanguage = "Perl", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Php.hs b/Text/Highlighting/Kate/Syntax/Php.hs
--- a/Text/Highlighting/Kate/Syntax/Php.hs
+++ b/Text/Highlighting/Kate/Syntax/Php.hs
@@ -49,6 +49,7 @@
 startingState = SyntaxState {synStContexts = fromList [("PHP/PHP",["start"])], synStLanguage = "PHP/PHP", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Pike.hs b/Text/Highlighting/Kate/Syntax/Pike.hs
--- a/Text/Highlighting/Kate/Syntax/Pike.hs
+++ b/Text/Highlighting/Kate/Syntax/Pike.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Pike",["Normal"])], synStLanguage = "Pike", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Postscript.hs b/Text/Highlighting/Kate/Syntax/Postscript.hs
--- a/Text/Highlighting/Kate/Syntax/Postscript.hs
+++ b/Text/Highlighting/Kate/Syntax/Postscript.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("PostScript",["Normal"])], synStLanguage = "PostScript", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Prolog.hs b/Text/Highlighting/Kate/Syntax/Prolog.hs
--- a/Text/Highlighting/Kate/Syntax/Prolog.hs
+++ b/Text/Highlighting/Kate/Syntax/Prolog.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Prolog",["normal"])], synStLanguage = "Prolog", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Python.hs b/Text/Highlighting/Kate/Syntax/Python.hs
--- a/Text/Highlighting/Kate/Syntax/Python.hs
+++ b/Text/Highlighting/Kate/Syntax/Python.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Python",["Normal"])], synStLanguage = "Python", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/R.hs b/Text/Highlighting/Kate/Syntax/R.hs
--- a/Text/Highlighting/Kate/Syntax/R.hs
+++ b/Text/Highlighting/Kate/Syntax/R.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("R Script",["level0"])], synStLanguage = "R Script", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "level0" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Relaxngcompact.hs b/Text/Highlighting/Kate/Syntax/Relaxngcompact.hs
--- a/Text/Highlighting/Kate/Syntax/Relaxngcompact.hs
+++ b/Text/Highlighting/Kate/Syntax/Relaxngcompact.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("RelaxNG-Compact",["Normal Text"])], synStLanguage = "RelaxNG-Compact", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Rhtml.hs b/Text/Highlighting/Kate/Syntax/Rhtml.hs
--- a/Text/Highlighting/Kate/Syntax/Rhtml.hs
+++ b/Text/Highlighting/Kate/Syntax/Rhtml.hs
@@ -46,6 +46,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Ruby/Rails/RHTML",["Start"])], synStLanguage = "Ruby/Rails/RHTML", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Ruby.hs b/Text/Highlighting/Kate/Syntax/Ruby.hs
--- a/Text/Highlighting/Kate/Syntax/Ruby.hs
+++ b/Text/Highlighting/Kate/Syntax/Ruby.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Ruby",["Normal"])], synStLanguage = "Ruby", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Scala.hs b/Text/Highlighting/Kate/Syntax/Scala.hs
--- a/Text/Highlighting/Kate/Syntax/Scala.hs
+++ b/Text/Highlighting/Kate/Syntax/Scala.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Scala",["Normal"])], synStLanguage = "Scala", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Scheme.hs b/Text/Highlighting/Kate/Syntax/Scheme.hs
--- a/Text/Highlighting/Kate/Syntax/Scheme.hs
+++ b/Text/Highlighting/Kate/Syntax/Scheme.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Scheme",["Level0"])], synStLanguage = "Scheme", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Level0" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Sci.hs b/Text/Highlighting/Kate/Syntax/Sci.hs
--- a/Text/Highlighting/Kate/Syntax/Sci.hs
+++ b/Text/Highlighting/Kate/Syntax/Sci.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("scilab",["main"])], synStLanguage = "scilab", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "main" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Sed.hs b/Text/Highlighting/Kate/Syntax/Sed.hs
--- a/Text/Highlighting/Kate/Syntax/Sed.hs
+++ b/Text/Highlighting/Kate/Syntax/Sed.hs
@@ -42,6 +42,7 @@
 startingState = SyntaxState {synStContexts = fromList [("sed",["BeginningOfLine"])], synStLanguage = "sed", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "BeginningOfLine" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Sgml.hs b/Text/Highlighting/Kate/Syntax/Sgml.hs
--- a/Text/Highlighting/Kate/Syntax/Sgml.hs
+++ b/Text/Highlighting/Kate/Syntax/Sgml.hs
@@ -42,6 +42,7 @@
 startingState = SyntaxState {synStContexts = fromList [("SGML",["Normal Text"])], synStLanguage = "SGML", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Sql.hs b/Text/Highlighting/Kate/Syntax/Sql.hs
--- a/Text/Highlighting/Kate/Syntax/Sql.hs
+++ b/Text/Highlighting/Kate/Syntax/Sql.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("SQL",["Normal"])], synStLanguage = "SQL", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = False, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/SqlMysql.hs b/Text/Highlighting/Kate/Syntax/SqlMysql.hs
--- a/Text/Highlighting/Kate/Syntax/SqlMysql.hs
+++ b/Text/Highlighting/Kate/Syntax/SqlMysql.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("SQL (MySQL)",["Normal"])], synStLanguage = "SQL (MySQL)", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = False, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/SqlPostgresql.hs b/Text/Highlighting/Kate/Syntax/SqlPostgresql.hs
--- a/Text/Highlighting/Kate/Syntax/SqlPostgresql.hs
+++ b/Text/Highlighting/Kate/Syntax/SqlPostgresql.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("SQL (PostgreSQL)",["Normal"])], synStLanguage = "SQL (PostgreSQL)", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = False, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Tcl.hs b/Text/Highlighting/Kate/Syntax/Tcl.hs
--- a/Text/Highlighting/Kate/Syntax/Tcl.hs
+++ b/Text/Highlighting/Kate/Syntax/Tcl.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Tcl/Tk",["Base"])], synStLanguage = "Tcl/Tk", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Base" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Texinfo.hs b/Text/Highlighting/Kate/Syntax/Texinfo.hs
--- a/Text/Highlighting/Kate/Syntax/Texinfo.hs
+++ b/Text/Highlighting/Kate/Syntax/Texinfo.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Texinfo",["Normal Text"])], synStLanguage = "Texinfo", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal Text" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Verilog.hs b/Text/Highlighting/Kate/Syntax/Verilog.hs
--- a/Text/Highlighting/Kate/Syntax/Verilog.hs
+++ b/Text/Highlighting/Kate/Syntax/Verilog.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Verilog",["Normal"])], synStLanguage = "Verilog", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Normal" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Vhdl.hs b/Text/Highlighting/Kate/Syntax/Vhdl.hs
--- a/Text/Highlighting/Kate/Syntax/Vhdl.hs
+++ b/Text/Highlighting/Kate/Syntax/Vhdl.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("VHDL",["start"])], synStLanguage = "VHDL", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Xml.hs b/Text/Highlighting/Kate/Syntax/Xml.hs
--- a/Text/Highlighting/Kate/Syntax/Xml.hs
+++ b/Text/Highlighting/Kate/Syntax/Xml.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("XML",["Start"])], synStLanguage = "XML", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Xorg.hs b/Text/Highlighting/Kate/Syntax/Xorg.hs
--- a/Text/Highlighting/Kate/Syntax/Xorg.hs
+++ b/Text/Highlighting/Kate/Syntax/Xorg.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("x.org Configuration",["xorg"])], synStLanguage = "x.org Configuration", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "xorg" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Xslt.hs b/Text/Highlighting/Kate/Syntax/Xslt.hs
--- a/Text/Highlighting/Kate/Syntax/Xslt.hs
+++ b/Text/Highlighting/Kate/Syntax/Xslt.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("xslt",["normalText"])], synStLanguage = "xslt", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = False, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "normalText" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Xul.hs b/Text/Highlighting/Kate/Syntax/Xul.hs
--- a/Text/Highlighting/Kate/Syntax/Xul.hs
+++ b/Text/Highlighting/Kate/Syntax/Xul.hs
@@ -44,6 +44,7 @@
 startingState = SyntaxState {synStContexts = fromList [("XUL",["Start"])], synStLanguage = "XUL", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Yacc.hs b/Text/Highlighting/Kate/Syntax/Yacc.hs
--- a/Text/Highlighting/Kate/Syntax/Yacc.hs
+++ b/Text/Highlighting/Kate/Syntax/Yacc.hs
@@ -43,6 +43,7 @@
 startingState = SyntaxState {synStContexts = fromList [("Yacc/Bison",["Pre Start"])], synStLanguage = "Yacc/Bison", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "Pre Start" -> return ()
diff --git a/Text/Highlighting/Kate/Syntax/Yaml.hs b/Text/Highlighting/Kate/Syntax/Yaml.hs
--- a/Text/Highlighting/Kate/Syntax/Yaml.hs
+++ b/Text/Highlighting/Kate/Syntax/Yaml.hs
@@ -42,6 +42,7 @@
 startingState = SyntaxState {synStContexts = fromList [("YAML",["normal"])], synStLanguage = "YAML", synStLineNumber = 0, synStPrevChar = '\n', synStPrevNonspace = False, synStCaseSensitive = True, synStKeywordCaseSensitive = True, synStCaptures = []}
 
 pEndLine = do
+  updateState $ \st -> st{ synStPrevNonspace = False }
   context <- currentContext
   case context of
     "normal" -> return ()
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,4 +1,10 @@
-highlighting-kate 0.5.0.3 (12 Feb 2012)
+highlighting-kate 0.5.0.5 (14 Feb 2012)
+
+  * Update 'synStPrevNonspace' at end of line.
+    This fixes a bug affecting every lexer that uses the 'first
+    nonspace' property.  (e.g. bash)
+
+highlighting-kate 0.5.0.4 (12 Feb 2012)
 
   * Fixed typo in version bounds for pcre-light.
 
diff --git a/highlighting-kate.cabal b/highlighting-kate.cabal
--- a/highlighting-kate.cabal
+++ b/highlighting-kate.cabal
@@ -1,5 +1,5 @@
 Name:                highlighting-kate
-Version:             0.5.0.4
+Version:             0.5.0.5
 Cabal-Version:       >= 1.6
 Build-Type:          Simple
 Category:            Text
@@ -52,7 +52,6 @@
                      xml/diff.xml
                      xml/djangotemplate.xml
                      xml/doxygen.xml
-                     xml/doxygenlua.xml.bkp
                      xml/dtd.xml
                      xml/eiffel.xml
                      xml/email.xml
@@ -76,7 +75,6 @@
                      xml/lex.xml
                      xml/literate-haskell.xml
                      xml/lua.xml
-                     xml/lua.xml.bkp
                      xml/makefile.xml
                      xml/mandoc.xml
                      xml/matlab.xml
diff --git a/xml/doxygenlua.xml.bkp b/xml/doxygenlua.xml.bkp
deleted file mode 100644
--- a/xml/doxygenlua.xml.bkp
+++ /dev/null
@@ -1,481 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE language SYSTEM "language.dtd"
-[
-        <!ENTITY wordsep "([][,?;()]|\.$|\.?\s)">     <!-- things that end a TagWord -->
-]>
-<!--
-  Version 1.01 by Bruno Massa
-
-  Based on the original Doxygen Highlighter version 1.0 from
-  Copyright 2004 Dominik Haumann (dhdev@gmx.de)
-  Copyright 2007 Matthew Woehlke (mw_triad@users.sourceforge.net)
-
- **********************************************************************
- * This library is free software; you can redistribute it and/or      *
- * modify it under the terms of the GNU Lesser General Public         *
- * License as published by the Free Software Foundation; either       *
- * version 2 of the License, or (at your option) any later version.   *
- *                                                                    *
- * This library is distributed in the hope that it will be useful,    *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of     *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU  *
- * Lesser General Public License for more details.                    *
- *                                                                    *
- * You should have received a copy of the GNU Lesser General Public   *
- * License along with this library; if not, write to the              *
- * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,   *
- * Boston, MA  02110-1301, USA.                                       *
- **********************************************************************
- -->
-<language name="DoxygenLua" version="1.01" kateversion="2.4" section="Markup" extensions="*.dox;*.doxygen" mimetype="text/x-doxygen" author="Bruno Massa (brmassa@gmail.com)" license="LGPL">
-  <highlighting>
-    <!-- note: all tags may begin with a \ or @ char
-         so if you add/change tags you have to do it twice -->
-    <list name="TagOnly">
-      <item> \arg </item>
-      <item> \attention </item>
-      <item> \author </item>
-      <item> \callgraph </item>
-      <item> \code </item>
-      <item> \dot </item>
-      <item> \else </item>
-      <item> \endcode </item>
-      <item> \endcond </item>
-      <item> \enddot </item>
-      <item> \endhtmlonly </item>
-      <item> \endif </item>
-      <item> \endlatexonly </item>
-      <item> \endlink </item>
-      <item> \endmanonly </item>
-      <item> \endverbatim </item>
-      <item> \endxmlonly </item>
-      <item> \f[ </item>
-      <item> \f] </item>
-      <item> \f$ </item>
-      <item> \hideinitializer </item>
-      <item> \htmlonly </item>
-      <item> \interface </item>
-      <item> \internal </item>
-      <item> \invariant </item>
-      <item> \~ </item>
-      <item> \@ </item>
-      <item> \$ </item>
-      <item> \\ </item>
-      <item> \# </item>
-      <item> \latexonly </item>
-      <item> \li </item>
-      <item> \manonly </item>
-      <item> \n </item>
-      <item> \nosubgrouping </item>
-      <item> \note </item>
-      <item> \only </item>
-      <item> \post </item>
-      <item> \pre </item>
-      <item> \remarks </item>
-      <item> \return </item>
-      <item> \returns </item>
-      <item> \sa </item>
-      <item> \see </item>
-      <item> \showinitializer </item>
-      <item> \since </item>
-      <item> \test </item>
-      <item> \todo </item>
-      <item> \verbatim </item>
-      <item> \warning </item>
-      <item> \xmlonly </item>
-
-      <item> @arg </item>
-      <item> @attention </item>
-      <item> @author </item>
-      <item> @callgraph </item>
-      <item> @code </item>
-      <item> @dot </item>
-      <item> @else </item>
-      <item> @endcode </item>
-      <item> @endcond </item>
-      <item> @enddot </item>
-      <item> @endhtmlonly </item>
-      <item> @endif </item>
-      <item> @endlatexonly </item>
-      <item> @endlink </item>
-      <item> @endmanonly </item>
-      <item> @endverbatim </item>
-      <item> @endxmlonly </item>
-      <item> @f[ </item>
-      <item> @f] </item>
-      <item> @f$ </item>
-      <item> @hideinitializer </item>
-      <item> @htmlonly </item>
-      <item> @interface </item>
-      <item> @internal </item>
-      <item> @invariant </item>
-      <item> @~ </item>
-      <item> @@ </item>
-      <item> @$ </item>
-      <item> @\ </item>
-      <item> @# </item>
-      <item> @latexonly </item>
-      <item> @li </item>
-      <item> @manonly </item>
-      <item> @n </item>
-      <item> @nosubgrouping </item>
-      <item> @note </item>
-      <item> @only </item>
-      <item> @post </item>
-      <item> @pre </item>
-      <item> @remarks </item>
-      <item> @return </item>
-      <item> @returns </item>
-      <item> @sa </item>
-      <item> @see </item>
-      <item> @showinitializer </item>
-      <item> @since </item>
-      <item> @test </item>
-      <item> @todo </item>
-      <item> @verbatim </item>
-      <item> @warning </item>
-      <item> @xmlonly </item>
-    </list>
-
-    <list name="TagWord">
-      <item> \addtogroup </item>
-      <item> \a </item>
-      <item> \anchor </item>
-      <item> \b </item>
-      <item> \c </item>
-      <item> \class </item>
-      <item> \cond </item>
-      <item> \copydoc </item>
-      <item> \def </item>
-      <item> \dontinclude </item>
-      <item> \dotfile </item>
-      <item> \e </item>
-      <item> \elseif </item>
-      <item> \em </item>
-      <item> \enum </item>
-      <item> \example </item>
-      <item> \exception </item>
-      <item> \exceptions </item>
-      <item> \file </item>
-      <item> \htmlinclude </item>
-      <item> \if </item>
-      <item> \ifnot </item>
-      <item> \include </item>
-      <item> \link </item>
-      <item> \namespace </item>
-      <item> \p </item>
-      <item> \package </item>
-      <item> \ref </item>
-      <item> \relatesalso </item>
-      <item> \relates </item>
-      <item> \retval </item>
-      <item> \throw </item>
-      <item> \throws </item>
-      <item> \verbinclude </item>
-      <item> \version </item>
-      <item> \xrefitem </item>
-
-      <item> @addtogroup </item>
-      <item> @a </item>
-      <item> @anchor </item>
-      <item> @b </item>
-      <item> @c </item>
-      <item> @class </item>
-      <item> @cond </item>
-      <item> @copydoc </item>
-      <item> @def </item>
-      <item> @dontinclude </item>
-      <item> @dotfile </item>
-      <item> @e </item>
-      <item> @elseif </item>
-      <item> @em </item>
-      <item> @enum </item>
-      <item> @example </item>
-      <item> @exception </item>
-      <item> @exceptions </item>
-      <item> @file </item>
-      <item> @htmlinclude </item>
-      <item> @if </item>
-      <item> @ifnot </item>
-      <item> @include </item>
-      <item> @link </item>
-      <item> @namespace </item>
-      <item> @p </item>
-      <item> @package </item>
-      <item> @ref </item>
-      <item> @relatesalso </item>
-      <item> @relates </item>
-      <item> @retval </item>
-      <item> @throw </item>
-      <item> @throws </item>
-      <item> @verbinclude </item>
-      <item> @version </item>
-      <item> @xrefitem </item>
-    </list>
-    <list name="TagParam">
-      <item> \param </item>
-
-      <item> @param </item>
-    </list>
-    <list name="TagWordWord">
-      <item> \image </item>
-
-      <item> @image </item>
-    </list>
-    <list name="TagWordString">
-      <item> \defgroup </item>
-      <item> \page </item>
-      <item> \paragraph </item>
-      <item> \section </item>
-      <item> \struct </item>
-      <item> \subsection </item>
-      <item> \subsubsection </item>
-      <item> \union </item>
-      <item> \weakgroup </item>
-
-      <item> @defgroup </item>
-      <item> @page </item>
-      <item> @paragraph </item>
-      <item> @section </item>
-      <item> @struct </item>
-      <item> @subsection </item>
-      <item> @subsubsection </item>
-      <item> @union </item>
-      <item> @weakgroup </item>
-    </list>
-    <list name="TagString">
-      <item> \addindex </item>
-      <item> \brief </item>
-      <item> \bug </item>
-      <item> \date </item>
-      <item> \deprecated </item>
-      <item> \fn </item>
-      <item> \ingroup </item>
-      <item> \line </item>
-      <item> \mainpage </item>
-      <item> \name </item>
-      <item> \overload </item>
-      <item> \par </item>
-      <item> \short </item>
-      <item> \skip </item>
-      <item> \skipline </item>
-      <item> \typedef </item>
-      <item> \until </item>
-      <item> \var </item>
-
-      <item> @addindex </item>
-      <item> @brief </item>
-      <item> @bug </item>
-      <item> @date </item>
-      <item> @deprecated </item>
-      <item> @fn </item>
-      <item> @ingroup </item>
-      <item> @line </item>
-      <item> @mainpage </item>
-      <item> @name </item>
-      <item> @overload </item>
-      <item> @par </item>
-      <item> @short </item>
-      <item> @skip </item>
-      <item> @skipline </item>
-      <item> @typedef </item>
-      <item> @until </item>
-      <item> @var </item>
-    </list>
-    <contexts>
-    <!-- different formats:
-      @tag                     : TagOnly
-      @tag rest_of_line        : TagString
-      @tag <word>              : TagWord
-      @tag <word> <word>       : TagWordWord
-      @tag <word> rest_of_line : TagWordString
-    -->
-      <context attribute="Normal Text" lineEndContext="#stay" name="Normal">
-        <RegExpr      attribute="Comment" context="BlockComment" beginRegion="BlockComment"  String="--\[(=*)\[" dynamic="true" />
-        <StringDetect attribute="Comment" context="LineComment" String="--"/>
-      </context>
-      <context attribute="Comment" lineEndContext="#pop" name="LineComment">
-        <DetectSpaces />
-        <IncludeRules context="##Alerts" />
-        <keyword attribute="Tags" context="#stay" String="TagOnly" />
-        <keyword attribute="Tags" context="SL_TagWord" String="TagWord" />
-        <keyword attribute="Tags" context="SL_TagParam" String="TagParam" />
-        <keyword attribute="Tags" context="SL_TagWordWord" String="TagWordWord" />
-        <keyword attribute="Tags" context="SL_TagString" String="TagString" />
-        <keyword attribute="Tags" context="SL_TagWordString" String="TagWordString" />
-        <DetectIdentifier />
-        <StringDetect attribute="HTML Comment" context="SL_htmlcomment" String="&lt;!--" />
-        <Detect2Chars attribute="Comment" context="#stay" char="&lt;" char1="&lt;" />
-        <RegExpr attribute="HTML Tag" context="SL_htmltag" String="&lt;\s*\/?\s*[a-zA-Z_:][a-zA-Z0-9._:-]*" />
-      </context>
-      <context attribute="Comment" lineEndContext="#stay" name="BlockComment" dynamic="true" >
-        <DetectSpaces />
-        <RegExpr      attribute="Comment" context="#pop" endRegion="BlockComment" String="\]%1\]" dynamic="true" />
-        <IncludeRules context="##Alerts" />
-        <Detect2Chars attribute="Region" context="#stay" char="@" char1="{" />
-        <Detect2Chars attribute="Region" context="#stay" char="@" char1="}" />
-        <keyword attribute="Tags" context="#stay" String="TagOnly" />
-        <keyword attribute="Tags" context="ML_TagWord" String="TagWord" />
-        <keyword attribute="Tags" context="ML_TagParam" String="TagParam" />
-        <keyword attribute="Tags" context="ML_TagWordWord" String="TagWordWord" />
-        <keyword attribute="Tags" context="ML_TagString" String="TagString" />
-        <keyword attribute="Tags" context="ML_TagWordString" String="TagWordString" />
-        <DetectIdentifier />
-        <RegExpr attribute="Tags" context="#stay" String="\\(&lt;|&gt;)" />
-        <Detect2Chars attribute="Comment" context="#stay" char="&lt;" char1="&lt;" />
-        <RegExpr attribute="HTML Tag" context="ML_htmltag" String="&lt;\s*\/?\s*[a-zA-Z_:][a-zA-Z0-9._:-]*" />
-        <StringDetect attribute="HTML Comment" context="ML_htmlcomment" String="&lt;!--" />
-      </context>
-
-<!-- NOTE: all contexts beginning with ML_ are for multiline comments
-     The following contexts contain a Detect2Chars that looks for a */ sequence to end multiline comments. Singleline comments do not have this limitation - that's why all contexts are copy&pasted and the line <Detect2Chars ... */> is removed. <IncludeRules context="acontext"> could be used instead but it would make context switching much more complex and very hard to understand! (But use IncludeRules where the rules don't refer to another SL_*/ML_* context, to help maintainability.)
--->
-      <!-- tag contexts -->
-      <context attribute="Comment" lineEndContext="#pop" name="ML_TagWord">
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <IncludeRules context="SL_TagWord" />
-      </context>
-      <context attribute="Comment" lineEndContext="#pop" name="ML_TagParam">
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <DetectSpaces />
-        <StringDetect attribute="Tags" context="ML_Tag2ndWord" String="[in]" />
-        <StringDetect attribute="Tags" context="ML_Tag2ndWord" String="[out]" />
-        <StringDetect attribute="Tags" context="ML_Tag2ndWord" String="[in,out]" />
-        <RegExpr attribute="Word" context="#pop" String="\S(?=&wordsep;)" />
-        <RegExpr attribute="Word" context="#stay" String="\S" />
-      </context>
-      <context attribute="Comment" lineEndContext="#pop" name="ML_TagWordWord">
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <DetectSpaces />
-        <RegExpr attribute="Word" context="ML_Tag2ndWord" String="\S(?=&wordsep;)" />
-        <RegExpr attribute="Word" context="#stay" String="\S" />
-      </context>
-      <!-- TODO for kate 2.x, convert references to "#pop!ML_TagWord" -->
-      <context attribute="Comment" lineEndContext="#pop#pop" name="ML_Tag2ndWord">
-        <Detect2Chars attribute="Comment" context="#pop#pop" char="*" char1="/" lookAhead="true"/>
-        <IncludeRules context="SL_Tag2ndWord" />
-      </context>
-      <context attribute="Comment" lineEndContext="#pop" name="ML_TagString">
-        <DetectSpaces />
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <StringDetect attribute="HTML Comment" context="ML_htmlcomment" String="&lt;!--" />
-        <Detect2Chars attribute="Comment" context="#stay" char="&lt;" char1="&lt;" />
-        <RegExpr attribute="HTML Tag" context="ML_htmltag" String="&lt;\s*\/?\s*[a-zA-Z_:][a-zA-Z0-9._:-]*" />
-        <RegExpr attribute="Description" context="#stay" String="." />
-      </context>
-      <context attribute="Comment" lineEndContext="#pop" name="ML_TagWordString">
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <IncludeRules context="SL_TagWordString" />
-      </context>
-
-      <!-- html contexts -->
-      <context name="ML_htmltag" attribute="Identifier" lineEndContext="#stay">
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <Detect2Chars attribute="HTML Tag" context="#pop" char="/" char1="&gt;" />
-        <DetectChar attribute="HTML Tag" context="#pop" char="&gt;"/>
-        <RegExpr attribute="Identifier" context="ML_identifiers" String="\s*=\s*"/>
-      </context>
-      <context name="ML_htmlcomment" attribute="HTML Comment" lineEndContext="#stay">
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <IncludeRules context="##Alerts" />
-        <StringDetect attribute="HTML Comment" context="#pop" String="--&gt;" />
-      </context>
-      <context name="ML_identifiers" attribute="Identifier" lineEndContext="#stay">
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <RegExpr attribute="String" context="#pop" String="\s*#?[a-zA-Z0-9]*" />
-        <DetectChar attribute="Types" context="ML_types1" char="'" />
-        <DetectChar attribute="Types" context="ML_types2" char="&quot;" />
-      </context>
-      <context name="ML_types1" attribute="Types" lineEndContext="#stay">
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <DetectChar attribute="Types" context="#pop#pop" char="'" />
-      </context>
-      <context name="ML_types2" attribute="Types" lineEndContext="#stay">
-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true"/>
-        <DetectChar attribute="Types" context="#pop#pop" char="&quot;" />
-      </context>
-
-<!-- NOTE: all contexts beginning with SL_ are for singleline comments -->
-      <!-- tag contexts -->
-      <context attribute="Comment" lineEndContext="#pop" name="SL_TagWord">
-        <DetectSpaces />
-        <keyword attribute="Tags" context="#pop" String="TagWord" lookAhead="true"/>
-        <RegExpr attribute="Word" context="#pop" String="\S(?=&wordsep;)" />
-        <RegExpr attribute="Word" context="#stay" String="\S" />
-      </context>
-      <context attribute="Comment" lineEndContext="#pop" name="SL_TagParam">
-        <DetectSpaces />
-        <StringDetect attribute="Tags" context="SL_Tag2ndWord" String="[in]" />
-        <StringDetect attribute="Tags" context="SL_Tag2ndWord" String="[out]" />
-        <StringDetect attribute="Tags" context="SL_Tag2ndWord" String="[in,out]" />
-        <RegExpr attribute="Word" context="#pop" String="\S(?=&wordsep;)" />
-        <RegExpr attribute="Word" context="#stay" String="\S" />
-      </context>
-      <context attribute="Comment" lineEndContext="#pop" name="SL_TagWordWord">
-        <DetectSpaces />
-        <RegExpr attribute="Word" context="SL_Tag2ndWord" String="\S(?=&wordsep;)" />
-        <RegExpr attribute="Word" context="#stay" String="\S" />
-      </context>
-      <!-- TODO for kate 2.x, convert references to "#pop!SL_TagWord" -->
-      <context attribute="Comment" lineEndContext="#pop#pop" name="SL_Tag2ndWord">
-        <DetectSpaces />
-        <RegExpr attribute="Word" context="#pop#pop" String="\S(?=&wordsep;)" />
-        <RegExpr attribute="Word" context="#stay" String="\S" />
-      </context>
-      <context attribute="Comment" lineEndContext="#pop" name="SL_TagString">
-        <DetectSpaces />
-        <StringDetect attribute="HTML Comment" context="SL_htmlcomment" String="&lt;!--" />
-        <Detect2Chars attribute="Comment" context="#stay" char="&lt;" char1="&lt;" />
-        <RegExpr attribute="HTML Tag" context="SL_htmltag" String="&lt;\s*\/?\s*[a-zA-Z_:][a-zA-Z0-9._:-]*" />
-        <RegExpr attribute="Description" context="#stay" String="." />
-      </context>
-      <context attribute="Comment" lineEndContext="#pop" name="SL_TagWordString">
-        <DetectSpaces />
-        <RegExpr attribute="Word" context="#pop" String="\S(?=&wordsep;)" />
-        <RegExpr attribute="Word" context="#stay" String="\S" />
-      </context>
-
-      <!-- html contexts -->
-      <context name="SL_htmltag" attribute="Identifier" lineEndContext="#pop">
-        <Detect2Chars attribute="HTML Tag" context="#pop" char="/" char1="&gt;" />
-        <DetectChar attribute="HTML Tag" context="#pop" char="&gt;"/>
-        <RegExpr attribute="Identifier" context="SL_identifiers" String="\s*=\s*"/>
-      </context>
-      <context name="SL_htmlcomment" attribute="HTML Comment" lineEndContext="#pop">
-        <IncludeRules context="##Alerts" />
-        <StringDetect attribute="HTML Comment" context="#pop" String="--&gt;" />
-      </context>
-      <context name="SL_identifiers" attribute="Identifier" lineEndContext="#pop">
-        <RegExpr attribute="String" context="#pop" String="\s*#?[a-zA-Z0-9]*" />
-        <DetectChar attribute="Types" context="SL_types1" char="'" />
-        <DetectChar attribute="Types" context="SL_types2" char="&quot;" />
-      </context>
-      <context name="SL_types1" attribute="Types" lineEndContext="#pop">
-        <DetectChar attribute="Types" context="#pop#pop" char="'" />
-      </context>
-      <context name="SL_types2" attribute="Types" lineEndContext="#pop">
-        <DetectChar attribute="Types" context="#pop#pop" char="&quot;" />
-      </context>
-
-    </contexts>
-    <itemDatas>
-      <itemData name="Normal Text" defStyleNum="dsNormal" />
-      <itemData name="Tags"        defStyleNum="dsKeyword" color="#ca60ca" selColor="#ffffff" bold="1" italic="0" />
-      <itemData name="Word"        defStyleNum="dsKeyword" color="#0095ff" selColor="#ffffff" bold="1" italic="0" />
-      <itemData name="HTML Tag"    defStyleNum="dsKeyword"/>
-      <itemData name="Description" defStyleNum="dsString" />
-      <itemData name="Comment"     defStyleNum="dsComment"/>
-      <itemData name="Region"      defStyleNum="dsRegionMarker" />
-      <itemData name="Identifier"  defStyleNum="dsOthers" />
-      <itemData name="HTML Comment" defStyleNum="dsComment" />
-      <itemData name="Types"       defStyleNum="dsDataType" />
-    </itemDatas>
-  </highlighting>
-  <general>
-    <comments>
-      <comment name="singleLine" start="--" />
-      <comment name="multiLine" start="--[[" end="]]" />
-    </comments>
-    <keywords casesensitive="0" weakDeliminator="\$~" />
-  </general>
-</language>
diff --git a/xml/lua.xml.bkp b/xml/lua.xml.bkp
deleted file mode 100644
--- a/xml/lua.xml.bkp
+++ /dev/null
@@ -1,304 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE language SYSTEM "language.dtd">
-<!--
-    LUA (www.lua.org) syntax highlighting for Kate
-
-    CHANGES
-
-    [ Version 1.03 (2007-09-12) by Bruno Massa ]
-
-    - [=[ ]=] comment and string style is now working (thanks to Dominik and Sebastian)
-    - it uses DoxygenLua.xml to format the comments in a Doxygen style
-
-    [ Version 1.02 (2007-07-15) by Bruno Massa ]
-
-    - based on Lua 5.1
-    - highlight the Kepler function (cgilua, luasql, lfs, luazip)
-    - true, false and nil are highlighted in black
-    - table.foreach and foreachi are marked as alerts
-
-    [ Version 1.01 (2007-01-01) by Bruno Massa ]
-
-    - highlighting similar to PHP
-    - error detection on one-line strings and common mistakes from other languages like using "!=" "++"
-    - uppercase-only variables are highlighted as constants
-    - { } now is collapsable
-
-    [ Version 1.00 (2006-12-05) by Bruno Massa ]
-
-    - based on Lua 5.0.2 syntax
-    - strings "[[ ]]" and single quoted strings
-    - block comments
-    - function, if/elseif/else, do-end chunks, comment blocks, strings using [[ ]] collapsable
-    - nil, false and true consided pseudo-variables (displayed as numbers)
-    - NOTE, FIXME, TODO alerts added on comments
-    - improved highlighting
-
-    -->
-<language name="Lua" version="1.04" indenter="lua" kateversion="2.4" section="Scripts" extensions="*.lua" mimetype="text/x-lua">
-  <highlighting>
-    <list name="keywords">
-      <item> and </item>
-      <item> function </item>
-      <item> in </item>
-      <item> local </item>
-      <item> not </item>
-      <item> or </item>
-    </list>
-    <list name="control">
-      <item> break </item>
-      <item> do </item>
-      <item> else </item>
-      <item> elseif </item>
-      <item> end </item>
-      <item> for </item>
-      <item> if </item>
-      <item> repeat </item>
-      <item> return </item>
-      <item> then </item>
-      <item> until </item>
-      <item> while </item>
-    </list>
-    <list name="pseudo-variables">
-      <item> nil </item>
-      <item> false </item>
-      <item> true </item>
-    </list>
-    <list name="basefunc">
-      <item> string.byte </item>  <item> string.char </item>
-      <item> string.find </item>  <item> string.len </item>
-      <item> string.lower </item> <item> string.rep </item>
-      <item> string.sub </item>   <item> string.upper </item>
-      <item> string.format </item><item> string.gfind </item>
-      <item> string.gsub </item>  <item> table.concat </item>
-      <item> table.getn </item>   <item> table.sort </item>
-      <item> table.insert </item> <item> table.remove </item>
-      <item> table.setn </item>   <item> math.abs </item>
-      <item> math.sin </item>     <item> math.cos </item>
-      <item> math.tan </item>     <item> math.asin </item>
-      <item> math.acos </item>    <item> math.atan </item>
-      <item> math.atan2 </item>   <item> math.ceil </item>
-      <item> math.floor </item>   <item> math.mod </item>
-      <item> math.frexp </item>   <item> math.ldexp </item>
-      <item> math.squrt </item>   <item> math.min </item>
-      <item> math.max </item>     <item> math.log </item>
-      <item> math.log10 </item>   <item> math.exp </item>
-      <item> math.deg </item>     <item> math.rad </item>
-      <item> math.random </item>  <item> math.randomseed </item>
-      <item> io.close </item>     <item> io.flush </item>
-      <item> io.input </item>     <item> io.lines </item>
-      <item> io.open </item>      <item> io.output </item>
-      <item> io.read </item>      <item> io.stderr </item>
-      <item> io.stdin </item>     <item> io.stdout </item>
-      <item> io.tmpfile </item>   <item> io.write </item>
-      <item> os.clock </item>     <item> os.date </item>
-      <item> os.difftime </item>  <item> os.execute </item>
-      <item> os.exit </item>      <item> os.getenv </item>
-      <item> os.remove </item>    <item> os.rename </item>
-      <item> os.setlocale </item> <item> os.time </item>
-      <item> os.tmpname </item>   <item> debug.getinfo </item>
-      <item> debug.getlocal </item><item> debug.setlocal </item>
-      <item> debug.sethook </item><item> debug.gethook </item>
-      <item> assert </item>      <item> collectgarbage </item>
-      <item> dofile </item>      <item> error </item>
-      <item> next </item>        <item> print </item>
-      <item> rawget </item>      <item> rawset </item>
-      <item> tonumber </item>    <item> tostring </item>
-      <item> type </item>        <item> _ALERT </item>
-      <item> _ERRORMESSAGE </item><item> call </item>
-      <item> getmetatable </item><item> gcinfo </item>
-      <item> ipairs </item>      <item> loadfile </item>
-      <item> loadstring </item>  <item> pairs </item>
-      <item> pcall </item>       <item> require </item>
-      <item> LUA_PATH </item>    <item> setmetatable </item>
-      <item> _LOADED </item>     <item> _VERSION </item>
-      <item> gettagmethod </item><item> globals </item>
-      <item> newtag </item>      <item> setglobal </item>
-      <item> settag </item>      <item> settagmethod </item>
-      <item> setlinehook </item> <item> getglobals </item>
-      <item> copytagmethods </item><item> dostring </item>
-      <item> getglobal </item>   <item> tag </item>
-      <item> setglobals </item>  <item> unpack </item>
-      <item> exit </item>        <item> readfrom </item>
-      <item> writeto </item>     <item> appendto </item>
-      <item> read </item>        <item> write </item>
-      <item> getinfo </item>     <item> getlocal </item>
-      <item> setlocal </item>    <item> setcallhook </item>
-      <item> tinsert </item>     <item> tremove </item>
-      <item> flush </item>       <item> seek </item>
-      <item> setlocale </item>   <item> execute </item>
-      <item> remove </item>      <item> rename </item>
-      <item> tmpname </item>     <item> getenv </item>
-      <item> getn </item>        <item> sort </item>
-      <item> table.foreach </item> <item> table.foreachi </item>
-      <item> foreach </item>     <item> foreachi </item>
-      <item> abs </item>         <item> sin </item>
-      <item> cos </item>         <item> tan </item>
-      <item> asin </item>        <item> acos </item>
-      <item> atan </item>        <item> atan2 </item>
-      <item> ceil </item>        <item> floor </item>
-      <item> mod </item>         <item> frexp </item>
-      <item> ldexp </item>       <item> squrt </item>
-      <item> min </item>         <item> max </item>
-      <item> log </item>         <item> log10 </item>
-      <item> exp </item>         <item> deg </item>
-      <item> rad </item>         <item> random </item>
-      <item> randomseed </item>  <item> strlen </item>
-      <item> strsub </item>      <item> strlower </item>
-      <item> strupper </item>    <item> strchar </item>
-      <item> strrep </item>      <item> ascii </item>
-      <item> strbyte </item>     <item> format </item>
-      <item> strfind </item>     <item> gsub </item>
-      <item> openfile </item>    <item> closefile </item>
-      <item> date </item>        <item> clock </item>
-
-
-      <item> cgilua </item>                     <item> cgilua.lp.translate </item>
-      <item> cgilua.contentheader </item>       <item> cgilua.script_file </item>
-      <item> cgilua.header </item>              <item> cgilua.script_path </item>
-      <item> cgilua.htmlheader </item>          <item> cgilua.script_pdir </item>
-      <item> cgilua.redirect </item>            <item> cgilua.script_vdir </item>
-      <item> cgilua.mkabsoluteurl </item>       <item> cgilua.script_vpath </item>
-      <item> cgilua.mkurlpath </item>           <item> cgilua.servervariable </item>
-      <item> cgilua.put </item>                 <item> cgilua.urlpath </item>
-      <item> cgilua.handlelp </item>            <item> cgilua.errorlog </item>
-      <item> cgilua.lp.compile </item>          <item> cgilua.seterrorhandler </item>
-      <item> cgilua.lp.include </item>          <item> cgilua.seterroroutput </item>
-      <item> cgilua.lp.setcompatmode </item>    <item> cgilua.addclosefunction </item>
-      <item> cgilua.lp.setoutfunc </item>       <item> cgilua.addopenfunction </item>
-      <item> cgilua.addscripthandler </item>    <item> cgilua.addscripthandler </item>
-      <item> cgilua.buildprocesshandler </item> <item> cgilua.setmaxfilesize </item>
-      <item> cgilua.setmaxinput </item>         <item> cgilua.urlcode.encodetable </item>
-      <item> cgilua.urlcode.escape </item>      <item> cgilua.urlcode.parsequery </item>
-      <item> cgilua.urlcode.unescape </item>    <item> cgilua.urlcode.insertfield </item>
-      <item> cgilua.setoutfunc </item>          <item> cgilua.addopenfunction </item>
-      <item> cgilua.doif </item>                <item> cgilua.doscript </item>
-      <item> cgilua.pack </item>                <item> cgilua.splitpath </item>
-      <item> cgilua.cookies.get </item>         <item> cgilua.cookies.set </item>
-      <item> cgilua.cookies.sethtml </item>     <item> cgilua.cookies.delete </item>
-      <item> cgilua.serialize </item>           <item> cgilua.session.close </item>
-      <item> cgilua.session.data </item>        <item> cgilua.session.load </item>
-      <item> cgilua.session.new </item>         <item> cgilua.session.open </item>
-      <item> cgilua.session.save </item>        <item> cgilua.session.setsessiondir </item>
-      <item> cgilua.session.delete </item>      <item> cgilua.session </item>
-      <item> cgilua.cookies </item>
-
-      <item> numrows </item>                    <item> connect </item>
-      <item> close </item>                      <item> fetch </item>
-      <item> getcolnames </item>                <item> getcoltypes </item>
-      <item> commit </item>                     <item> rollback </item>
-      <item> setautocommit </item>
-
-      <item> lfs </item>                        <item> lfs.attributes </item>
-      <item> lfs.chdir </item>                  <item> lfs.currentdir </item>
-      <item> lfs.dir </item>                    <item> lfs.lock </item>
-      <item> lfs.mkdir </item>                  <item> lfs.rmdir </item>
-      <item> lfs.touch </item>                  <item> lfs.unlock </item>
-
-      <item> zip </item>                        <item> zip.open </item>
-      <item> zip.openfile </item>               <item> files </item>
-      <item> seek </item>                       <item> close </item>
-      <item> lines </item>
-
-
-    </list>
-    <list name="attention">
-      <item> TODO </item>
-      <item> FIXME </item>
-      <item> NOTE </item>
-    </list>
-    <list name="deprecated">
-      <item> table.foreach </item> <item> table.foreachi </item>
-      <item> foreach </item>       <item> foreachi </item>
-    </list>
-
-    <contexts>
-      <context name="Base" attribute="Comment" lineEndContext="Normal">
-        <RegExpr attribute="Comment" context="Normal" String="#!.*$" column="0" />
-        <RegExpr attribute="Comment" context="Normal" String="^.*$" lookAhead="true" />
-      </context>
-      <context name="Normal"        attribute="Normal Text" lineEndContext="#stay">
-        <IncludeRules context="##DoxygenLua" />
-        <keyword      attribute="Error"  context="#stay" String="deprecated" />
-        <DetectSpaces />
-        <RegExpr      attribute="Comment"  context="Block Comment" beginRegion="block comment"  String="--\[(=*)\[" dynamic="true" />
-        <Detect2Chars attribute="Comment"  context="Comment"       char="-" char1="-"/>
-        <RegExpr      attribute="Strings"  context="String_block"  String="\[(=*)\[" dynamic="true" />
-        <DetectChar   attribute="Strings"  context="String_single" char="'"/>
-        <DetectChar   attribute="Strings"  context="String_double" char="&quot;"/>
-        <keyword      attribute="BFunc"    context="#stay"         String="basefunc"/>
-
-        <RegExpr      attribute="Keyword"  context="#stay" beginRegion="chunk" String="\bfunction\b" />
-        <keyword      attribute="Keyword"  context="#stay" String="keywords" />
-        <keyword      attribute="Keyword"  context="#stay"  String="pseudo-variables" />
-        <RegExpr      attribute="Control"  context="#stay" endRegion="chunk"   beginRegion="chunk" String="\belse\b" />
-        <RegExpr      attribute="Control"  context="#stay" endRegion="chunk"   beginRegion="chunk" String="\belseif\b" />
-        <RegExpr      attribute="Control"  context="#stay" beginRegion="chunk" String="\bdo\b" />
-        <RegExpr      attribute="Control"  context="#stay" beginRegion="chunk" String="\bif\b" />
-        <RegExpr      attribute="Control"  context="#stay" endRegion="chunk"   String="\bend\b" />
-        <keyword      attribute="Control"  context="#stay" String="control" />
-
-        <DetectChar   attribute="Symbols"  context="#stay" beginRegion="table" char="{" />
-        <DetectChar   attribute="Symbols"  context="#stay" endRegion="table"   char="}" />
-
-        <RegExpr      attribute="Numbers"  context="#stay"  String="\b\d*\.?\d*(e|e\-|e\+)?\d+\b"/>
-        <RegExpr      attribute="Numbers"  context="#stay"  String="\b-?0[xX][0-9a-fA-F]+\b"/>
-
-        <RegExpr      attribute="Normal Text" context="#stay" String="\b[a-zA-Z_][a-zA-Z0-9_]*(?=\s*([({'&quot;]|\[\[))\b" />
-        <RegExpr      attribute="Constant" context="#stay" String="\b[A-Z_][A-Z0-9_]*\b" />
-        <RegExpr      attribute="Variable" context="#stay" String="\b[a-zA-Z_][a-zA-Z0-9_]*\b" />
-
-        <Detect2Chars attribute="Error"    context="#stay" char="!" char1="="/>
-        <Detect2Chars attribute="Error"    context="#stay" char="-" char1="="/>
-        <Detect2Chars attribute="Error"    context="#stay" char="+" char1="="/>
-        <Detect2Chars attribute="Error"    context="#stay" char="+" char1="+"/>
-        <Detect2Chars attribute="Error"    context="#stay" char="." char1="="/>
-        <AnyChar      attribute="Symbols"  context="#stay" String="[]().=~+-*/^&gt;&lt;#;" />
-      </context>
-      <context name="Comment"       attribute="Comment"     lineEndContext="#pop">
-        <Detect2Chars attribute="Alerts"   context="#stay" char="-" char1="-" />
-        <keyword      attribute="Alerts"   context="#stay" String="attention"/>
-      </context>
-      <context name="Block Comment" attribute="Comment"     lineEndContext="#stay" dynamic="true" >
-        <RegExpr attribute="Comment"  context="#pop"  endRegion="block comment" String="\]%1\]" dynamic="true" />
-        <Detect2Chars attribute="Alerts"   context="#stay" char="-" char1="-" />
-        <keyword      attribute="Alerts"   context="#stay" String="attention" />
-      </context>
-      <context name="String_single" attribute="Strings"     lineEndContext="Error">
-        <RegExpr      attribute="Symbols"  context="#stay" String="\\(a|b|f|n|r|t|v|\\|&quot;|\'|[|])" />
-        <DetectChar   attribute="Strings"  context="#pop"  char="'"/>
-      </context>
-      <context name="String_double" attribute="Strings"     lineEndContext="Error">
-        <RegExpr      attribute="Symbols"  context="#stay" String="\\[abfnrtv'&quot;\\\[\]]" />
-        <DetectChar   attribute="Strings"  context="#pop"  char="&quot;"/>
-      </context>
-      <context name="String_block"  attribute="Strings"     lineEndContext="#stay" dynamic="true">
-        <RegExpr      attribute="Symbols"  context="#stay" String="\\(a|b|f|n|r|t|v|\\|&quot;|\'|[|])" />
-        <RegExpr      attribute="Strings"  context="#pop"  String="\]%1\]" dynamic="true" />
-      </context>
-      <context name="Error"         attribute="Error"       lineEndContext="#stay">
-      </context>
-    </contexts>
-    <itemDatas>
-      <itemData name="Alerts"          defStyleNum="dsAlert" />
-      <itemData name="BFunc"           defStyleNum="dsFunction"/>
-      <itemData name="Comment"         defStyleNum="dsComment"/>
-      <itemData name="Constant"        defStyleNum="dsKeyword"/>
-      <itemData name="Control"         defStyleNum="dsKeyword" color="#A1A100" selColor="#ffffff" bold="0" italic="0"/>
-      <itemData name="Error"           defStyleNum="dsError"/>
-      <itemData name="Keyword"         defStyleNum="dsKeyword"/>
-      <itemData name="Normal Text"     defStyleNum="dsNormal"/>
-      <itemData name="Numbers"         defStyleNum="dsDecVal"/>
-      <itemData name="Strings"         defStyleNum="dsString"/>
-      <itemData name="Symbols"         defStyleNum="dsOthers"/>
-      <itemData name="Variable"        defStyleNum="dsKeyword" color="#5555FF" selColor="#ffffff" bold="0" italic="0" />
-    </itemDatas>
-  </highlighting>
-  <general>
-    <comments>
-      <comment name="singleLine" start="--" />
-      <comment name="multiLine" start="--[[" end="]]" />
-    </comments>
-    <keywords casesensitive="1" weakDeliminator="&#46;" additionalDeliminator="&quot;"/>
-  </general>
-</language>
