diff --git a/herbalizer.cabal b/herbalizer.cabal
--- a/herbalizer.cabal
+++ b/herbalizer.cabal
@@ -1,5 +1,5 @@
 Name: herbalizer
-Version: 0.4.8
+Version: 0.4.9
 
 Synopsis: HAML to ERB translator
 Description:
diff --git a/src/Main.hs b/src/Main.hs
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -49,7 +49,7 @@
   return b
 
 expression :: IParser Expression
-expression = docType <|> comment <|> hamlFilter <|> startPlainText <|> rubyBlock <|> rubyExp <|> tag <|>  genericExpression
+expression = (try escapeHtmlExpr <|> docType) <|> comment <|> hamlFilter <|> startPlainText <|> rubyBlock <|> rubyExp <|> tag <|>  genericExpression
   
 rubyBlock = do
     char '-'
@@ -62,6 +62,11 @@
     -- e.g. "- localvar = Time.now"
     else return (RubyStartBlock (k ++ rest) False)
   where midBlockKeywords = ["else", "elsif", "rescue", "ensure", "when", "end"]
+
+escapeHtmlExpr = do
+  char '!'
+  line <- ((:) <$> char '=' >> spaces >> manyTill anyChar newline <* spaces)
+  return $ RubyExp $ "raw(" ++ line ++ ")"
 
 rubyExp = do
   line <- ((:) <$> char '=' >> spaces >> manyTill anyChar newline <* spaces)
