diff --git a/ehs.cabal b/ehs.cabal
--- a/ehs.cabal
+++ b/ehs.cabal
@@ -1,5 +1,5 @@
 name:                ehs
-version:             0.1.0.0
+version:             0.1.0.1
 synopsis:            embedded Haskell by using quasiquotes.
 description:         embedded Haskell by using quasiquotes.
 license:             MIT
@@ -13,6 +13,9 @@
 stability:           experimental
 build-type:          Simple
 cabal-version:       >=1.10
+Source-Repository head
+  type: git
+  location: http://github.com/minpou/ehs.git
 
 library
   ghc-options:         -O2
diff --git a/src/Ehs/Internal.hs b/src/Ehs/Internal.hs
--- a/src/Ehs/Internal.hs
+++ b/src/Ehs/Internal.hs
@@ -92,20 +92,20 @@
 
 parseBind :: Parser Ehs
 parseBind = do
-  string "<%"
+  try $ string "<%"
   p <- manyTill anyChar $ try (string "<-")
   e <- manyTill anyChar $ try (string "%>")
   pat <- case parsePat p of
     Right pat -> return pat
-    Left  err -> fail $ "<%= %>: " ++ err
+    Left  err -> fail $ "<% %>: " ++ err
   exp <- case parseExp e of
     Right exp -> return exp
-    Left  err -> fail $ "<%= %>: " ++ err
+    Left  err -> fail $ "<% %>: " ++ err
   optional newline
   return $ Bind pat exp
 
 parsePlain :: Parser Ehs
-parsePlain = liftM Plain $ many1Till anyChar $ lookAhead $ void (string "<%") <|> eof
+parsePlain = liftM Plain $ many1Till anyChar $ lookAhead $ void (try (string "<%")) <|> eof
 
 many1Till :: (Stream s m t) => ParsecT s u m a -> ParsecT s u m end -> ParsecT s u m [a]
 many1Till p end = scan
