Add support for latex mintinline (#4365)

This commit is contained in:
Marc Schreiber 2018-08-18 05:57:36 +02:00 committed by John MacFarlane
parent 822a071bb2
commit 175da00295
2 changed files with 33 additions and 0 deletions

View file

@ -1024,6 +1024,16 @@ dolstinline :: PandocMonad m => LP m Inlines
dolstinline = do
options <- option [] keyvals
let classes = maybeToList $ lookup "language" options >>= fromListingsLanguage
doinlinecode classes
domintinline :: PandocMonad m => LP m Inlines
domintinline = do
skipopts
cls <- toksToString <$> braced
doinlinecode [cls]
doinlinecode :: PandocMonad m => [String] -> LP m Inlines
doinlinecode classes = do
Tok _ Symbol t <- anySymbol
marker <- case T.uncons t of
Just (c, ts) | T.null ts -> return c
@ -1655,6 +1665,7 @@ inlineCommands = M.union inlineLanguageCommands $ M.fromList
, ("footnote", skipopts >> note <$> grouped block)
, ("verb", doverb)
, ("lstinline", dolstinline)
, ("mintinline", domintinline)
, ("Verb", doverb)
, ("url", ((unescapeURL . T.unpack . untokenize) <$> bracedUrl) >>= \url ->
pure (link url "" (str url)))

View file

@ -21,3 +21,25 @@ I want to explain the interface of \lstinline[language=Java]{public class MyClas
[Para [Str "I",Space,Str "want",Space,Str "to",Space,Str "explain",Space,Str "the",Space,Str "interface",Space,Str "of",Space,Code ("",["java"],[]) "public class MyClass",Str "."]]
```
```
% pandoc -f latex -t html
I want to explain the interface of \mintinline{java}{public class MyClass}.
^D
<p>I want to explain the interface of <code class="sourceCode java"><span class="kw">public</span> <span class="kw">class</span> MyClass</code>.</p>
```
```
% pandoc -f latex -t html
I want to explain the interface of \mintinline{java}|public class MyClass|.
^D
<p>I want to explain the interface of <code class="sourceCode java"><span class="kw">public</span> <span class="kw">class</span> MyClass</code>.</p>
```
```
% pandoc -f latex -t native
I want to explain the interface of \mintinline[linenos]{java}{public class MyClass}.
^D
[Para [Str "I",Space,Str "want",Space,Str "to",Space,Str "explain",Space,Str "the",Space,Str "interface",Space,Str "of",Space,Code ("",["java"],[]) "public class MyClass",Str "."]]
```