git.iko.soy/typeable/pandoc
on master help sign in
Added Ext_autolink_urls.
commitbae39e77a82a911b5a861970a6680fbd0cfd5357 authorJohn MacFarlane <jgm@berkeley.edu> dateThu 27 Sep 2012, 13:43 (14 years ago) parent15a8192
3 files changed+14
README+4 src/Text/Pandoc/Options.hs+1 src/Text/Pandoc/Readers/Markdown.hs+9
README+4
@@ -2254,6 +2254,10 @@ Note that the pandoc document model does not support
22542254abbreviations, so if this extension is enabled, abbreviation keys are
22552255simply skipped (as opposed to being parsed as paragraphs).
22562256
2257+**Extension: `autolink_urls`**\
2258+Makes all absolute URLs into links, even when not surrounded by
2259+pointy braces `<...>`.
2260+
22572261Producing slide shows with Pandoc
22582262=================================
22592263
src/Text/Pandoc/Options.hs+1
@@ -73,6 +73,7 @@ data Extension =
7373 -- iff container has attribute 'markdown'
7474 | Ext_escaped_line_breaks -- ^ Treat a backslash at EOL as linebreak
7575 | Ext_monospace_autolinks -- ^ Put autolink text in monospace font
76+ | Ext_autolink_urls -- ^ Make all absolute URLs into links
7677 | Ext_fancy_lists -- ^ Enable fancy list numbers and delimiters
7778 | Ext_startnum -- ^ Make start number of ordered list significant
7879 | Ext_definition_lists -- ^ Definition lists as in pandoc, mmd, php
src/Text/Pandoc/Readers/Markdown.hs+9
@@ -1159,6 +1159,7 @@ table = try $ do
11591159
11601160inline :: Parser [Char] ParserState (F Inlines)
11611161inline = choice [ whitespace
1162+ , bareURL
11621163 , str
11631164 , endline
11641165 , code
@@ -1471,6 +1472,14 @@ referenceLink constructor (lab, raw) = do
14711472 Nothing -> (\x -> B.str "[" <> x <> B.str "]" <> B.str raw') <$> fallback
14721473 Just (src,tit) -> constructor src tit <$> lab
14731474
1475+bareURL :: Parser [Char] ParserState (F Inlines)
1476+bareURL = try $ do
1477+ guardEnabled Ext_autolink_urls
1478+ (orig, src) <- uri <|> emailAddress
1479+ (guardEnabled Ext_monospace_autolinks >>
1480+ return (return $ B.link src "" (B.codeWith ("",["url"],[]) orig)))
1481+ <|> return (return $ B.link src "" (B.str orig))
1482+
14741483autoLink :: Parser [Char] ParserState (F Inlines)
14751484autoLink = try $ do
14761485 char '<'