aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Readers/LaTeX.hs
AgeCommit message (Collapse)AuthorFilesLines
2018-05-15rawLaTeXBlock: don't expand macros in macro definitions!John MacFarlane1-11/+11
Closes #4653. Note that this only affected LaTeX in markdown. Added regression test.
2018-05-08LaTeX reader: handle `$` in `/text{..}` inside math.John MacFarlane1-7/+22
This fixes the main problem in #4576. There is still an issue about `\SI`, but that's a separate issue.
2018-04-25LaTeX reader: fixed previous commit.John MacFarlane1-3/+3
2018-04-25LaTeX reader: Improve handling of raw LaTeX (for markdown etc.).John MacFarlane1-31/+32
Previously there were some bugs in how macros were handled. Closes #4589, #4594.
2018-04-25LaTeX reader: support `\MakeUppercase`, `\MakeLowercase'.John MacFarlane1-1/+17
Also `\MakeTextUppercase`, `\MakeTextLowercase` from textcase and `\uppercase`, `\lowercase`. We don't mimic exactly the quirky semantic differences between these commands, but just uppercase/lowercase regular strings within them. We leave commands and code alone. Closes #4595.
2018-04-05LaTEX reader: properly resolve section numbers with \ref and chapters.John MacFarlane1-1/+7
Closes #4529.
2018-04-02LaTeX reader: parse sloppypar environment (#4517)Marc Schreiber1-0/+1
2018-03-18Use NoImplicitPrelude and explicitly import Prelude.John MacFarlane1-0/+2
This seems to be necessary if we are to use our custom Prelude with ghci. Closes #4464.
2018-03-17Add support to parse unit string of \SI command (closes #4296).Marc Schreiber1-1/+14
2018-03-02LaTeX reader: Fix regression in package options including underscore.John MacFarlane1-1/+1
Closes #4424.
2018-02-26LaTeX reader: make --trace work.John MacFarlane1-2/+6
2018-02-17LaTeX reader: Fixed comments inside citations. Closes #4374.John MacFarlane1-3/+3
2018-01-19hlint code improvements.John MacFarlane1-10/+10
2018-01-19LaTeX reader: fixed parsing of tabular* environment.John MacFarlane1-1/+1
This was just a typo in the source. Closes #4279.
2018-01-14LaTeX reader: Advance source position at end of stream.John MacFarlane1-1/+1
2018-01-13LaTeX reader: pass through macro defs in rawLaTeXBlock...John MacFarlane1-4/+2
even if the `latex_macros` extension is set. This reverts to earlier behavior and is probably safer on the whole, since some macros only modify things in included packages, which pandoc's macro expansion can't modify. Closes #4246.
2018-01-13LaTeX reader: fixed pos calculation in tokenizing escaped space.John MacFarlane1-3/+6
2018-01-13LaTeX reader: allow macro definitions inside macros.John MacFarlane1-6/+9
Previously we went into an infinite loop with ``` \newcommand{\noop}[1]{#1} \noop{\newcommand{\foo}[1]{#1}} \foo{hi} ``` See #4253.
2018-01-05Update copyright notices to include 2018Albert Krewinkel1-2/+2
2017-12-30LaTeX reader: Simplified a check for raw tex command.John MacFarlane1-2/+2
2017-12-28LaTeX reader: be more tolerant of `&` character.John MacFarlane1-1/+1
This allows us to parse unknown tabular environments as raw LaTeX. Closes #4208.
2017-12-26LaTeX reader: support `\foreignlanguage` from babel.John MacFarlane1-0/+30
2017-12-22`latex_macros` extension changes.John MacFarlane1-2/+4
Don't pass through macro definitions themselves when `latex_macros` is set. The macros have already been applied. If `latex_macros` is enabled, then `rawLaTeXBlock` in Text.Pandoc.Readers.LaTeX will succeed in parsing a macro definition, and will update pandoc's internal macro map accordingly, but the empty string will be returned. Together with earlier changes, this closes #4179.
2017-12-22LaTeX reader: use applyMacros in rawLaTeXBlock, rawLaTeXInline.John MacFarlane1-2/+5
2017-12-22LaTeX reader: Refactored inlineCommand.John MacFarlane1-24/+11
2017-12-21LaTeX reader: Fixed subtle bug in tokenizer.John MacFarlane1-2/+3
Material following `^^` was dropped if it wasn't a character escape. This only affected invalid LaTeX, so we didn't see it in the wild, but it appeared in a QuickCheck test failure https://travis-ci.org/jgm/pandoc/jobs/319812224
2017-12-15LaTeX reader: export tokenize, untokenize.John MacFarlane1-1/+3
Mainly so they can be tested.
2017-12-15Fixed regression in LateX tokenization.John MacFarlane1-2/+2
This mainly affects the Markdown reader when parsing raw LaTeX with escaped spaces. Closes #4159.
2017-12-08LaTeX reader: fix \ before newline.John MacFarlane1-3/+14
This should be a nonbreaking space, as long as it's not followed by a blank line. This has been fixed at the tokenizer level. Closes #4134.
2017-11-29Support beamer `\alert` in LaTeX reader. Closes #4091.John MacFarlane1-0/+1
2017-11-13LaTeX reader: allow optional arguments on `\footnote`.John MacFarlane1-2/+2
Closes #4062.
2017-11-12Fix comment that confuses haddock.John MacFarlane1-1/+1
2017-11-12LaTeX reader: support column specs like `*{2}{r}`.John MacFarlane1-3/+13
This is equivalent to `rr`. We now expand it like a macro. Closes #4056.
2017-11-12LaTeX reader: allow optional args for parbox.John MacFarlane1-1/+1
See #4056.
2017-10-31LaTeX reader: handle `%` comment right after command.John MacFarlane1-1/+1
For example \emph% {hi}
2017-10-30LaTeX reader: insert space when needed in macro expansion.John MacFarlane1-1/+8
Sometimes we need to insert a space after a control sequence to prevent it merging with a following letter. Closes #4007.
2017-10-30Allow unbraced arguments for macros.John MacFarlane1-8/+8
See #4007.
2017-10-30Allow body of macro definition to be unbraced.John MacFarlane1-7/+10
e.g. \newcommand\arrow\to See #4007.
2017-10-29More hlint fixes.John MacFarlane1-2/+2
2017-10-27hlint suggestions.John MacFarlane1-34/+34
2017-10-27Automatic reformating by stylish-haskell.John MacFarlane1-59/+57
2017-10-22LaTeX Reader: support \lettrinemb211-0/+1
2017-10-22LaTeX Reader: use opt function consistentlymb211-3/+3
2017-10-19LaTeX reader: be more forgiving in parsing command options.John MacFarlane1-2/+2
This was needed, for example, to make some minted options work.
2017-10-19LaTeX reader: Strip off quotes in `\include` filenames.John MacFarlane1-1/+2
2017-10-19LaTeX reader: support `\expandafter`.John MacFarlane1-6/+19
Closes #3983.
2017-10-19LaTeX reader: handle `\DeclareRobustCommand`.John MacFarlane1-2/+3
Currently it's just treated as a synonym for `\newcommand`. Handles the second case mentioned in #3983.
2017-10-17Latex reader: Skip spaces in image optionsBen Firshman1-0/+2
2017-10-16Improved handling of include files in LaTeX reader.John MacFarlane1-57/+77
Previously `\include` wouldn't work if the included file contained, e.g., a begin without a matching end. We've changed the Tok type so that it stores a full SourcePos, rather than just a line and column. So tokens keeep track of the file they came from. This allows us to use a simpler method for includes, which doesn't require parsing the included document as a whole. Closes #3971.
2017-10-08LaTeX reader: don't treat "..." as Quoted.John MacFarlane1-2/+0
This caused quotes to be omitted in `\texttt` contexts. Closes #3958. However, a better fix would be to modify the