@@ -32,8 +32,7 @@ import Control.Monad (void, mzero, mplus, guard)
3232import Control.Monad.Except (throwError)
3333import Text.Pandoc.Class
3434 (getResourcePath, readFileFromDirs, PandocMonad(..), report)
35−import Data.Char (isLower, toLower, toUpper, chr,
36− isAscii, isAlphaNum)
35+import Data.Char (isLower, toLower, toUpper, chr, isAscii, isAlphaNum)
3736import Data.Default (Default)
3837import qualified Data.Map as M
3938import Data.List (intercalate)
@@ -488,7 +487,9 @@ lexConditional mname = do
488487 else expression
489488 skipMany spacetab
490489 st <- getState -- save state, so we can reset it
491− ifPart <- lexGroup <|> ((try (char '\\' >> newline)) >> manToken)
490+ ifPart <- do
491+ optional $ try $ char '\\' >> newline
492+ lexGroup
492493 <|> do modifyState $ \s -> s{ afterConditional = True }
493494 t <- manToken
494495 modifyState $ \s -> s{ afterConditional = False }