@@ -1011,11 +1011,19 @@ note = try $ do
10111011 Nothing -> fail "note not found"
10121012 Just contents -> return (Note contents)
10131013
1014+inlinesInBrackets = try $ do
1015+ char '['
1016+ results <- many $ count 1 (choice [link, referenceLink, image]) <|>
1017+ try (do{res <- inlinesInBrackets; return
1018+ ([Str "["] ++ res ++ [Str "]"])}) <|>
1019+ (do{notFollowedBy (char ']'); count 1 inline})
1020+ char ']'
1021+ return $ concat results
1022+
10141023inlineNote = try $ do
10151024 failIfStrict
10161025 char noteStart
1017− char labelStart
1018− contents <- manyTill inline (char labelEnd)
1026+ contents <- inlinesInBrackets
10191027 return (Note [Para contents])
10201028
10211029rawLaTeXInline' = do