@@ -909,17 +909,17 @@ linkOrImage :: PandocMonad m => MuseParser m (F Inlines)
909linkOrImage = try $ do
909linkOrImage = try $ do
910 inLink <- asks museInLink
910 inLink <- asks museInLink
911 guard $ not inLink
911 guard $ not inLink
912− local (\s -> s { museInLink = True }) (explicitLink <|> image <|> link)
912+ local (\s -> s { museInLink = True }) (link "URL:" <|> image <|> link "")
914linkContent :: PandocMonad m => MuseParser m (F Inlines)
914linkContent :: PandocMonad m => MuseParser m (F Inlines)
915linkContent = trimInlinesF . mconcat
915linkContent = trimInlinesF . mconcat
916 <$ char '['
916 <$ char '['
917 <*> manyTill inline (char ']')
917 <*> manyTill inline (char ']')
919−-- | Parse a link starting with @URL:@
919+-- | Parse a link starting with (possibly null) prefix
920−explicitLink :: PandocMonad m => MuseParser m (F Inlines)
920+link :: PandocMonad m => String -> MuseParser m (F Inlines)
921−explicitLink = try $ do
921+link prefix = try $ do
922− string "[[URL:"
922+ string $ "[[" ++ prefix
923 url <- manyTill anyChar $ char ']'
923 url <- manyTill anyChar $ char ']'
924 content <- option (pure $ B.str url) linkContent
924 content <- option (pure $ B.str url) linkContent
@@ -952,11 +952,3 @@ image = try $ do
952 <*> optionMaybe (many1 digit)
952 <*> optionMaybe (many1 digit)
953 <* many spaceChar
953 <* many spaceChar
954 <*> optionMaybe (oneOf "rlf")
954 <*> optionMaybe (oneOf "rlf")
956−link :: PandocMonad m => MuseParser m (F Inlines)
959− url <- manyTill anyChar $ char ']'
960− content <- optionMaybe linkContent
962− return $ B.link url "" <$> fromMaybe (return $ B.str url) content