@@ -217,16 +217,15 @@ referenceKey = try $ do
217217 lab <- reference
218218 char ':'
219219 skipSpaces >> optional newline >> skipSpaces >> notFollowedBy (char '[')
220− let nl = char '\n' >> notFollowedBy blankline >> return ' '
221220 let sourceURL = liftM unwords $ many $ try $ do
222221 notFollowedBy' referenceTitle
223222 skipMany spaceChar
224− optional nl
223+ optional $ newline >> notFollowedBy blankline
225224 skipMany spaceChar
226225 notFollowedBy' reference
227− many1 (satisfy $ not . isBlank)
226+ many1 $ escapedChar' <|> satisfy (not . isBlank)
228227 let betweenAngles = try $ char '<' >>
229− manyTill (noneOf ">\n" <|> nl) (char '>')
228+ manyTill (escapedChar' <|> litChar) (char '>')
230229 src <- try betweenAngles <|> sourceURL
231230 tit <- option "" referenceTitle
232231 blanklines