aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2017-08-20LaTeX reader: allow `]` inside group in option brackets.John MacFarlane1-3/+2
Closes #3857.
2017-08-20Protect OVERLAPS pragma with CPP.John MacFarlane1-0/+4
2017-08-20Use OverlappingInstances instead of OVERLAPS for ghc 7.8.4.John MacFarlane1-0/+4
2017-08-20Removed redundant import.John MacFarlane1-1/+0
2017-08-19Simplify instances in Class by parameterizing on MonadTrans.John MacFarlane1-67/+21
2017-08-19Markdown reader: use CommonMark rules for list item nesting.John MacFarlane8-117/+178
Closes #3511. Previously pandoc used the four-space rule: continuation paragraphs, sublists, and other block level content had to be indented 4 spaces. Now the indentation required is determined by the first line of the list item: to be included in the list item, blocks must be indented to the level of the first non-space content after the list marker. Exception: if are 5 or more spaces after the list marker, then the content is interpreted as an indented code block, and continuation paragraphs must be indented two spaces beyond the end of the list marker. See the CommonMark spec for more details and examples. Documents that adhere to the four-space rule should, in most cases, be parsed the same way by the new rules. Here are some examples of texts that will be parsed differently: - a - b will be parsed as a list item with a sublist; under the four-space rule, it would be a list with two items. - a code Here we have an indented code block under the list item, even though it is only indented six spaces from the margin, because it is four spaces past the point where a continuation paragraph could begin. With the four-space rule, this would be a regular paragraph rather than a code block. - a code Here the code block will start with two spaces, whereas under the four-space rule, it would start with `code`. With the four-space rule, indented code under a list item always must be indented eight spaces from the margin, while the new rules require only that it be indented four spaces from the beginning of the first non-space text after the list marker (here, `a`). This change was motivated by a slew of bug reports from people who expected lists to work differently (#3125, #2367, #2575, #2210, #1990, #1137, #744, #172, #137, #128) and by the growing prevalance of CommonMark (now used by GitHub, for example). Users who want to use the old rules can select the `four_space_rule` extension. * Added `four_space_rule` extension. * Added `Ext_four_space_rule` to `Extensions`. * `Parsing` now exports `gobbleAtMostSpaces`, and the type of `gobbleSpaces` has been changed so that a `ReaderOptions` parameter is not needed.
2017-08-18Markdown reader: fixed parsing of fenced code after list...John MacFarlane2-1/+17
...when there is no intervening blank line. Closes #3733.
2017-08-18Strip executables in linux package.John MacFarlane2-0/+4
2017-08-18make_macos_package.sh: use strip to reduce executable size.John MacFarlane1-0/+3
2017-08-18Markdown reader: parse `-@roe` as suppress-author citation.John MacFarlane1-2/+4
Previously only `[-@roe]` (with brackets) was recognized as suppress-author, and `-@roe` was treated the same as `@roe`. Closes jgm/pandoc-citeproc#237.
2017-08-18LaTeX reader: implement \newtoggle, \iftoggle, \toggletrue|falseJohn MacFarlane3-5/+82
from etoolbox. Closes #3853.
2017-08-17RST reader/writer: support unknown interpreted text roles...John MacFarlane4-6/+23
...by parsing them as Span with "role" attributes. This way they can be manipulated in the AST. Closes #3407.
2017-08-17HTML reader: support column alignments.John MacFarlane3-13/+83
These can be set either with a `width` attribute or with `text-width` in a `style` attribute. Closes #1881.
2017-08-17LaTeX reader: support \lq, \rq.John MacFarlane1-0/+2
2017-08-17slidy uses https instead of http (#3848)ickc3-3/+3
grep -rl 'http://www.w3.org/Talks/Tools/Slidy2' . | xargs sed -i 's/http:\/\/www\.w3\.org\/Talks\/Tools\/Slidy2/https:\/\/www\.w3\.org\/Talks\/Tools\/Slidy2/g'
2017-08-17LaTeX reader: support \textquoteleft|right, \textquotedblleft|right.John MacFarlane1-0/+4
Closes #3849.
2017-08-16LaTeX reader: rudimentary support for `\hyperlink`.John MacFarlane1-0/+4
2017-08-16LaTeX reader: use Link instead of Span for `\ref`.John MacFarlane2-11/+12
This makes more sense semantically and avoids unnecessary Span [Link] nestings when references are resolved.
2017-08-16Revision to binary format output to stdout:John MacFarlane2-6/+18
We now allow default output to stdout when it can be determined that the output is being piped. (On Windows, as mentioned before, this can't be determined.) Using '-o -' forces output to stdout regardless.
2017-08-16LaTeX reader: add Support for `glossaries` and `acronym` package (#3589)schrieveslaach2-0/+84
Acronyms are not resolved by the reader, but acronym and glossary information is put into attributes on Spans so that they can be processed in filters.
2017-08-16Fix import in PDF.John MacFarlane1-0/+4
2017-08-16Fixed command test #2994 on Windows.John MacFarlane1-1/+1
2017-08-16Change behavior with binary format output to stdout.John MacFarlane2-23/+16
Previously, for binary formats, output to stdout was disabled unless we could detect that the output was being piped (and not sent to the terminal). Unfortunately, such detection is not possible on Windows, leaving windows users no way to pipe binary output. So we have changed the behavior in the following way: * If the -o option is not used, binary output is never sent to stdout by default; instead, an error is raised. * IF '-o -' is used, binary output is sent to stdout, regardless of whether it is being piped. This works on Windows too.
2017-08-16Ensure hslua is build for 32 bits on windows i386Albert Krewinkel1-1/+4
This prevents some otherwise hard to find and hard miscalculations in lua filters.
2017-08-16Update to hslua-0.8.0Albert Krewinkel6-7/+23
hslua no longer provides lua stack instances for Int and Double, the necessary instances are added to the Custom writer and the lua filtering system.
2017-08-15Remove initial check for pdf creating program.John MacFarlane2-9/+27
Instead, just try running it and raise the exception if it isn't found at that point. This improves things for users of Cygwin on Windows, where the executable won't be found by `findExecutable` unless `.exe` is added. The same exception is raised as before, but at a later point. Closes #3819.
2017-08-15Docx writer: fixed a regression (infinite loop on certain lists).John MacFarlane1-2/+2
Bug was introduced by commit a868b238f253423281b2648896f184e7cdc05014.
2017-08-14Implement multicolumn support for slide formats.John MacFarlane17-3/+133
The structure expected is: <div class="columns"> <div class="column" width="40%"> contents... </div> <div class="column" width="60%"> contents... </div> </div> Support has been added for beamer and all HTML slide formats. Closes #1710. Note: later we could add a more elegant way to create this structure in Markdown than to use raw HTML div elements. This would come for free with a "native div syntax" (#168). Or we could devise something specific to slides
2017-08-14Use latest commit for pandoc-citeproc.John MacFarlane1-1/+1
2017-08-14Update tests for changes to LaTeX template.John MacFarlane4-8/+16
2017-08-14Test fixes so we can find data files.John MacFarlane3-7/+7
In old tests & command tests, we now set the environment variable pandoc_datadir. In lua tests, we set the datadir explicitly.
2017-08-14Fix hyperref options clash (#3847)Andrew Dunning1-5/+7
Avoids an options clash when loading a package (e.g. `tufte-latex`) that uses `hyperref` settings different from those in the template (introduced in <https://github.com/jgm/pandoc-templates/commit/feffd7c64abab863abd3f6458d1c445d6bfe7fc4>).
2017-08-14Added example of setting date with lua filter.John MacFarlane1-0/+9
2017-08-14Changed command test for #2994 so it actually tests the writer.John MacFarlane3-2/+4
2017-08-13Fixed command tests to set local path.John MacFarlane1-5/+5
Previously we just tacked on a directory to the command line, but that didn't work when we e.g. used a pipe for round tripping, with two invocations of pandoc.
2017-08-13Better handle complex \def macros as raw latex.John MacFarlane1-9/+11
2017-08-13LaTeX reader: Allow @ as a letter in control sequences.John MacFarlane1-2/+8
@ is commonly used in macros using `\makeatletter`. Ideally we'd make the tokenizer sensitive to `\makeatletter` and `\makeatother`, but until then this seems a good change.
2017-08-13LaTeX reader: fix `\let\a=0` case, with single character token.John MacFarlane1-13/+18
2017-08-13Resolve references to section numbers in LaTeX reader.John MacFarlane1-3/+17
2017-08-13LaTeX reader: track header numbers and correlate with labels.John MacFarlane1-22/+49
2017-08-13Put content of \ref, \label commands into span… (#3639)schrieveslaach2-3/+71
* Put content of `\ref` and `\label` commands into Span elements so they can be used in filters. * Add support for `\eqref`
2017-08-13CommonMark writer: prefer pipe tables to HTML tables...John MacFarlane2-3/+13
...even if it means losing relative column width information. See #3734.
2017-08-13Markdown writer: Use pipe tables if `raw_html` disabled...John MacFarlane2-2/+49
and `pipe_tables` enabled, even if the table has relative width information. Closes #3734.
2017-08-13Added some Functor constraints needed for ghc 7.8.John MacFarlane1-2/+2
2017-08-13Delete Text.Pandoc.Lua.SharedInstancesAlbert Krewinkel6-59/+11
Stack instances for common data types are now provides by hslua. The instance for Either was useful only for a very specific case; the function that was using the `ToLuaStack Either` instance was rewritten to work without it. Closes: #3805
2017-08-13Text.Pandoc.Lua: cleanup element walking codeAlbert Krewinkel1-28/+20
WalkM is general enough to work in any monad, not just IO. Also get rid of the LuaException type, sufficient to use the one defined in hslua.
2017-08-13Text.Pandoc.Lua: Optimize performance by using raw table accessAlbert Krewinkel2-17/+27
Raw table accessing functions never call back into haskell, which allows the compiler to use more aggressive optimizations. This improves lua filter performance considerably (⪆5% speedup).
2017-08-13Use hslua >= 0.7, update Lua codeAlbert Krewinkel12-637/+478
2017-08-12Docx writer: pass through comments.John MacFarlane4-8/+55
We assume that comments are defined as parsed by the docx reader: I want <span class="comment-start" id="0" author="Jesse Rosenthal" date="2016-05-09T16:13:00Z">I left a comment.</span>some text to have a comment <span class="comment-end" id="0"></span>on it. We assume also that the id attributes are unique and properly matched between comment-start and comment-end. Closes #2994.
2017-08-12Escape MetaString values (as added with --metadata flag).John MacFarlane2-6/+21
Previously they would be transmitted to the template without any escaping. Note that `--M title='*foo*'` yields a different result from --- title: *foo* --- In the latter case, we have emphasis; in the former case, just a string with literal asterisks (which will be escaped in formats, like Markdown, that require it). Closes #3792.