diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,5 +1,9 @@
 # Revision history for skylighting and skylighting-core
 
+## 0.8.1.1 -- 2019-06-13
+
+  * Improved LaTeX escaping (#78).
+
 ## 0.8.1 -- 2019-06-04
 
   * Added support for stata (#74).
diff --git a/skylighting-core.cabal b/skylighting-core.cabal
--- a/skylighting-core.cabal
+++ b/skylighting-core.cabal
@@ -1,5 +1,5 @@
 name:                skylighting-core
-version:             0.8.1
+version:             0.8.1.1
 synopsis:            syntax highlighting library
 description:         Skylighting is a syntax highlighting library.
                      It derives its tokenizers from XML syntax
diff --git a/src/Skylighting/Format/LaTeX.hs b/src/Skylighting/Format/LaTeX.hs
--- a/src/Skylighting/Format/LaTeX.hs
+++ b/src/Skylighting/Format/LaTeX.hs
@@ -38,13 +38,22 @@
 
 escapeLaTeX :: Bool -> Text -> Text
 escapeLaTeX inline = Text.concatMap escapeLaTeXChar
-  where escapeLaTeXChar '\\' = "\\textbackslash{}"
-        escapeLaTeXChar '{'  = "\\{"
-        escapeLaTeXChar '}'  = "\\}"
-        escapeLaTeXChar '|'  = if inline
-                                  then "\\VerbBar{}" -- used in inline verbatim
-                                  else "|"
-        escapeLaTeXChar x    = Text.singleton x
+  where escapeLaTeXChar c =
+         case c of
+           '\\' -> "\\textbackslash{}"
+           '{'  -> "\\{"
+           '}'  -> "\\}"
+           '|' | inline -> "\\VerbBar{}" -- used in inline verbatim
+           '_'  -> "\\_"
+           '&'  -> "\\&"
+           '%'  -> "\\%"
+           '#'  -> "\\#"
+           '`'  -> "\\textasciigrave{}"
+           '\'' -> "\\textquotesingle{}"
+           '-'  -> "{-}" -- prevent ligatures
+           '~'  -> "\\textasciitilde{}"
+           '^'  -> "\\^{}"
+           _    -> Text.singleton c
 
 -- LaTeX
 
