@@ -1282,29 +1282,33 @@ inlineToLaTeX SoftBreak = do
12821282 WrapNone -> return space
12831283 WrapPreserve -> return cr
12841284inlineToLaTeX Space = return space
1285−inlineToLaTeX (Link _ txt (src,_))
1286− | Just ('#', ident) <- T.uncons src
1287− = do
1288− contents <- inlineListToLaTeX txt
1289− lab <- toLabel ident
1290− return $ text "\\protect\\hyperlink" <> braces (literal lab) <> braces contents
1291− | otherwise =
1292− case txt of
1293− [Str x] | unEscapeString (T.unpack x) == unEscapeString (T.unpack src) -> -- autolink
1294− do modify $ \s -> s{ stUrl = True }
1295− src' <- stringToLaTeX URLString (escapeURI src)
1296− return $ literal $ "\\url{" <> src' <> "}"
1297− [Str x] | Just rest <- T.stripPrefix "mailto:" src,
1298− unEscapeString (T.unpack x) == unEscapeString (T.unpack rest) -> -- email autolink
1299− do modify $ \s -> s{ stUrl = True }
1300− src' <- stringToLaTeX URLString (escapeURI src)
1301− contents <- inlineListToLaTeX txt
1302− return $ "\\href" <> braces (literal src') <>
1303− braces ("\\nolinkurl" <> braces contents)
1304− _ -> do contents <- inlineListToLaTeX txt
1305− src' <- stringToLaTeX URLString (escapeURI src)
1306− return $ literal ("\\href{" <> src' <> "}{") <>
1307− contents <> char '}'
1285+inlineToLaTeX (Link (id',_,_) txt (src,_)) =
1286+ (case T.uncons src of
1287+ Just ('#', ident) -> do
1288+ contents <- inlineListToLaTeX txt
1289+ lab <- toLabel ident
1290+ return $ text "\\protect\\hyperlink" <> braces (literal lab) <> braces contents
1291+ _ -> case txt of
1292+ [Str x] | unEscapeString (T.unpack x) == unEscapeString (T.unpack src) -> -- autolink
1293+ do modify $ \s -> s{ stUrl = True }
1294+ src' <- stringToLaTeX URLString (escapeURI src)
1295+ return $ literal $ "\\url{" <> src' <> "}"
1296+ [Str x] | Just rest <- T.stripPrefix "mailto:" src,
1297+ unEscapeString (T.unpack x) == unEscapeString (T.unpack rest) -> -- email autolink
1298+ do modify $ \s -> s{ stUrl = True }
1299+ src' <- stringToLaTeX URLString (escapeURI src)
1300+ contents <- inlineListToLaTeX txt
1301+ return $ "\\href" <> braces (literal src') <>
1302+ braces ("\\nolinkurl" <> braces contents)
1303+ _ -> do contents <- inlineListToLaTeX txt
1304+ src' <- stringToLaTeX URLString (escapeURI src)
1305+ return $ literal ("\\href{" <> src' <> "}{") <>
1306+ contents <> char '}')
1307+ >>= (if T.null id'
1308+ then return
1309+ else \x -> do
1310+ linkAnchor <- hypertarget False id' x
1311+ return ("\\protect" <> linkAnchor))
13081312inlineToLaTeX il@(Image _ _ (src, _))
13091313 | Just _ <- T.stripPrefix "data:" src = do
13101314 report $ InlineNotRendered il