Skip to content

pandoc 1.17.0.1

@jgm jgm released this

  • File scope is no longer used when there are no input files (i.e., when input comes from stdin). Previously file scope was triggered when the json reader was specified and input came from stdin, and this caused no output to be produced. (Fix due to Jesse Rosenthal; thanks to Fedor Sheremetyev for calling the bug to our attention.)
  • Improved documentation of templates (#2797).

Downloads

pandoc 1.17

@jgm jgm released this · 11 commits to master since this release

  • Added --file-scope option (Jesse Rosenthal). By default pandoc operates on multiple files by first concatenating them (around extra line breaks) and then processing the joined file. So it only parses a multi-file document at the document scope. This has the benefit that footnotes and links can be in different files, but for some purposes it is useful to parse the individual files first and then combine their outputs (e.g. when the files use footnotes or links with the same labels). The --file-scope option causes pandoc to parse the files first, and then combine the parsed output, instead of combining before parsing. --file-scope is selected automatically for binary input files (which cannot be concatenated) and for pandoc json.

  • Add TEI Writer (Chris Forster) and tei output format.

  • Added a general ByteStringReader with warnings, used by the docx reader (API change, Jesse Rosenthal).

  • Add readDocxWithWarnings (API change, Jesse Rosenthal).

  • Changed type of Shared.uniqueIdent's argument from [String] to Set String. This avoids performance problems in documents with many identically named headers (API change, #2671).

  • Removed tex_math_single_backslash from markdown_github options (#2707).

  • Make language extensions as well as full language names trigger syntax highlighting. For example, py will now work as well as python (jgm/highlighting-kate#83).

  • Added institute variable to latex, beamer templates (Fraser Tweedale, Josef Svenningsson).

  • Docx reader (Jesse Rosenthal):

    • Handle alternate content. Some word functions (especially graphics) give various choices for content so there can be backwards compatibility.
    • Don't turn numbered headers into lists.
    • Docx Reader: Add state to the parser, for warnings
    • Update feature checklist in source code.
    • Get rid of Modifiable typeclass.
    • Add tests for adjacent hyperlinks.
    • Add a "Link" modifier to Reducible. We want to make sure that links have their spaces removed, and are appropriately smushed together (#2689).
  • HTML reader:

    • Fixed behavior of base tag (#2777). If the base path does not end with slash, the last component will be replaced. E.g. base = http://example.com/foo combines with bar.html to give http://example.com/bar.html. If the href begins with a slash, the whole path of the base is replaced. E.g. base = http://example.com/foo/ combines with /bar.html to give http://example.com/bar.html.
    • Rewrote htmlInBalanced. This version avoids an exponential performance problem with <script> tags, and it should be faster in general (#2730).
    • Properly handle an empty cell in a simple table (#2718).
    • Handle multiple <meta> tags with same name. Put them in a list in the metadata so they are all preserved, rather than (as before) throwing out all but one..
  • Markdown reader:

    • Improved pipe table parsing (#2765).
    • Allow + separators in pipe table cells. We already allowed them in the header, but not in the body rows, for some reason. This gives compatibility with org-mode tables.
    • Don't cross line boundary parsing pipe table row. Previously an Emph element could be parsed across the newline at the end of the pipe table row.
    • Use htmlInBalanced for rawVerbatimBlock, for better performance (#2730).
    • Fixed bug with smart quotes around tex math.
  • LaTeX reader:

    • Handle interior $ characters in math (#2743). For example, $$\hbox{$i$}$$.
    • inlineCommand now gobbles an empty {} after any command (#2687). This gives better results when people write e.g. \TeX{} in Markdown.
    • Properly handle LaTeX "math" environment as inline math (#2171).
  • Textile reader: Support >, <, =, <> text alignment attributes. Closes #2674.

  • Org reader (Albert Krewinkel):

    • Prefix even empty figure names with "fig:" (#2643). The convention used by pandoc for figures is to mark them by prefixing the name with fig:. The org reader failed to do this if a figure had no name.
    • Refactor link-target processing (#2684).
  • ConTeXt writer: Fix whitespace at line beginning in line blocks (#2744). Thanks to @c-foster.

  • HTML writer: Don't include alignment attribute for default table columns. Previously these were given "left" alignment. Better to leave off alignment attributes altogether (#2694).

  • Markdown writer: Use hyphens for YAML metadata block bottom line, for better compatibility with other Markdown flavors (Henrik Tramberend).

  • LaTeX writer:

    • Use image identifier to create a label and hypertarget for figures (Mauro Bieg).
    • Avoid double toprule in headerless table with caption (#2742).
    • Clean up options parser (Jesse Rosenthal).
    • Treat memoir template with article option as article, instead of treating all memoir templates as books.
    • Allow more flexible table alignment (Henrik Tramberend, #2665). New default is not to include [c] option (which is the default anyway if no positioning is specified). Now LaTeX emplates can control the overall table alignment in a document by setting the longtable length variables LTleft and LTright. For example, \setlength\LTleft\parindent\setlength\LTright\fill will create left-aligned tables that respect paragraph indentation.
  • Docx writer: Handle image alt text (#2754, Mauro Bieg).

  • Org writer - pass through RawInline with format "org".

  • DokuWiki writer: use $$ for display math.

  • Custom writer: Pass attributes parameter to CaptionedImage (#2697).

  • Make protocol-relative URIs work again (#2737).

  • make_osx_package.sh: Use env variable for developer id certs.

  • Raise tagsoup lower bound to 0.13.7 to fix entity-related problems (#2734).

  • Allow zip-archive 0.3.

  • Allow aeson 0.11.

Downloads

pandoc 1.16.0.2

@jgm jgm released this · 121 commits to master since this release

  • Depend on deepseq rather than deepseq-generics (fpco/stackage#1096).

  • Fixed regression in latex smart quote parsing (#2645). In cases where a match was not found for a quote, everything from the open quote to the end of the paragraph was being dropped.

Downloads

pandoc 1.16.0.1

@jgm jgm released this · 127 commits to master since this release

  • Fixed regression with --latex-engine (#2618). In 1.16 --latex-engine raises an error if a full path is given.

  • Org reader: Fix function dropping subtrees tagged :noexport (Albert Krewinkel, #2628):

  • Markdown reader: renormalize table column widths if they exceed 100% (#2626).

  • Textile reader: don't allow block HTML tags in inline contexts. The reader previously did allow this, following redcloth, which happily parses

    Html blocks can be <div>inlined</div> as well.
    

    as

    <p>Html blocks can be <div>inlined</div> as well.</p>
    

    This is invalid HTML. The above sample now produces;

    <p>Html blocks can be</p>
    <div>
    <p>inlined</p>
    </div>
    <p>as well.</p>
    
  • Improved default template lookup for custom lua scripts (#2625). Previously, if you tried to do pandoc -s -t /path/to/lua/script.lua, pandoc would look for the template in ~/.pandoc/templates/default./path/to/lua/script.lua. With this change it will look in the more reasonable ~/.pandoc/templates/default.script.lua. This makes it possible to store default templates for custom writers.

  • RST, Markdown writers: Fixed rendering of grid tables with blank rows (#2615).

  • LaTeX writer: restore old treatment of Span (#2624). A Span is now rendered with surrounding {}, as it was before 1.16.

  • Entity handling fixes: improved handling of entities like &lang; that require a trailing semicolon. Allow uppercase x in numerical hexidecimal character references, working around a tagsoup bug.

  • stack.yaml - use lts-4.0, but with older aeson to avoid excessive memory use on compile. With aeson 0.10 we were getting an out of memory error on a 2GB Ubuntu 64-bit VM.

  • Improved deb package creation script. Made DPKGVER work. Renamed COMMIT to TREE. You should now be able to do TREE=1.16.0.1 DPKGVER=2 make deb.

Downloads

pandoc 1.16

@jgm jgm released this · 174 commits to master since this release

pandoc (1.16)

  • Added Attr field to Link and Image (Mauro Bieg, #261, API change).

    • Added syntax for link and image attributes to pandoc's Markdown.
    • Updated readers and writers to use link and image attributes when appropriate.
    • Support image attributes in Docx, Textile, RST readers.
  • Renamed link attribute extensions. The old link_attributes is now mmd_link_attributes, and link_attributes now enables the new pandoc-style link and image attributes (API change). Note: this change could break some existing workflows.

  • Implemented SoftBreak and new --wrap option (#1701, API change). Added threefold wrapping option.

    • Command line option: deprecated --no-wrap, added --wrap=[auto|none|preserve]
    • Added WrapOption, exported from Text.Pandoc.Options
    • Changed type of writerWrapText in WriterOptions from Bool to WrapOption.
    • Modified Text.Pandoc.Shared functions to allow SoftBreak.
    • Supported SoftBreak in readers and writers.
  • Text.Pandoc.Options: Added writerDpi to WriterOptions (API change, Mauro Bieg).

  • Added --dpi command-line option (Mauro Bieg).

  • Rationalized behavior of --no-tex-ligatures and --smart (#2541). This change makes --no-tex-ligatures affect the LaTeX reader as well as the LaTeX and ConTeXt writers. If it is used, the LaTeX reader will parse characters `, ', and - literally, rather than parsing ligatures for quotation marks and dashes. And the LaTeX writer will print unicode quotation mark and dash characters literally, rather than converting them to the standard ASCII ligatures. Note that --smart has no effect on the LaTeX reader. --smart is still the default for all input formats when LaTeX or ConTeXt is the output format, unless --no-tex-ligatures is used.

    Some examples to illustrate the logic:

    % echo "'hi'" | pandoc -t latex
    `hi'
    % echo "'hi'" | pandoc -t latex --no-tex-ligatures
    'hi'
    % echo "'hi'" | pandoc -t latex --no-tex-ligatures --smart
    ‘hi’
    % echo "'hi'" | pandoc -f latex --no-tex-ligatures
    <p>'hi'</p>
    % echo "'hi'" | pandoc -f latex
    <p>’hi’</p>
    
  • Removed deprecated options --offline and --html5.

  • Fixed language code for Czech (cs not cz) (#2597).

  • Implemented east_asian_line_breaks extension (#2586). In Text.Pandoc.Options, added Ext_east_asian_line_breaks constructor to Extension (API change). This extension is like ignore_line_breaks, but smarter -- it only ignores line breaks between two East Asian wide characters. This makes it better suited for writing with a mix of East Asian and non-East Asian scripts.

  • Added support for PDF creation via wkhtmltopdf. To use this: pandoc -t html5 -o result.pdf (and add --mathjax if you have math.) Margins can be set using the variables margin-top, margin-bottom, margin-left, margin-right. Other styling can be done through CSS.

  • Fixed cite key parsing regression (jgm/pandoc-citeproc#201). We were capturing final colons as in [@foo: bar]; the citation id was being parsed as @foo:.

  • ICML writer:

    • Fixed image syntax for local files (#2589).
    • Changed type of writeICML (Mauro Bieg). API change: It is now WriterOptions -> Pandoc -> IO String. Also handle new image attributes.
    • Intersperse line breaks instead of appending them to every ParagraphStyleRange (Mauro Bieg, #2501).
    • Add Cite style to citations (Mauro Bieg).
    • Added figure handling (#2590, Mauro Bieg).
    • Better handling of math. Instead of just printing the raw tex, we now try to fake it with unicode characters.
  • HTML writer: Include example class for example lists (#2524).

  • ODT/OpenDocument writer: improved image attributes (Mauro Bieg).

    • Support for percentage widths/heights
    • Use Attr instead of title to get dimensions from ODT walker to writeOpenDocument.
  • AsciiDoc writer:

  • Haddock writer: omit formatting inside links, which isn't supported by Haddock (#2515).

  • MediaWiki writer: Fixed spacing issues in table cells.

    • Start cell on new line unless it's a single Para or Plain (#2606).
    • For single Para or Plain, insert a space after the | to avoid problems when the text begins with a character like - (#2604).
  • Beamer writer: mark frame as fragile when it contains verbatim (#1613).

  • LaTeX writer:

    • Add support for GAP highlighting using listings (Raniere Silva).
    • Consider header-includes content as well as templates when determining whether to use csquotes (Andreas Lööw).
    • Create defaults for geometry using margin-left etc. If geometry has no value, but margin-left, margin-right, margin-top, and/or -margin-bottom are given, a default value for geometry is created from these. Note that these variables already affect PDF production via HTML5 with wkhtmltopdf.
  • ConTeXt writer: set default layout based on margin-left, etc. This sets up \setuplayout based on the variables margin-left, margin-right, margin-bottom, and margin-top, if no layout is given.

  • Docx writer: better handling of PDF images. Previously we tried to get the image size from the image even if an explicit size was specified. Since we still can't get image size for PDFs, this made it impossible to use PDF images in docx. Now we don't try to get the image size when a size is already explicitly specified.

  • Markdown writer: use raw HTML for link/image attributes when the link_attributes extension is unset and raw_html is set (#2554).

  • MediaWiki reader: interpret markup inside <tt>, <code> (#2607).

  • LaTeX reader:

    • Improved smart quote parsing (#2555). This fixes redering of unmatched quotes.
    • Use curly quotes for unmatched ` (#2555).
    • Allow blank space between braced arguments of commands (#2592).
  • Markdown reader:

    • Improved pipe table relative widths. Previously pipe table columns got relative widths (based on the header underscore lines) when the source of one of the rows was greater in width than the column width. This gave bad results in some cases where much of the width of the row was due to nonprinting material (e.g. link URLs). Now pandoc only looks at printable width (the width of a plain string version of the source), which should give better results. Thanks to John Muccigrosso for bringing up the issue.
    • Fixed parsing bug with macros. Previously macro definitions in indented code blocks were being parsed as macro definitions, not code.
  • Textile reader: skip over attribute in image source (#2515). We don't have a place yet for styles or sizes on images, but we can skip the attributes rather than incorrectly taking them to be part of the filename.

  • Docx reader: Handle dummy list items (Jesse Rosenthal). These come up when people create a list item and then delete the bullet. It doesn't refer to any real list item, and we used to ignore it.

  • CommonMark reader/writer rewritten to use latest cmark.

  • Fixed Emoji character definitions (#2523). There were many bugs in the definitions.

  • Text.Pandoc.CSS:

    • Added pickStylesToKVs function to extract multiple properties at once (API change, Mauro Bieg).
    • Parse CSS that doesn't contain the optional semicolon (Mauro Bieg).
  • trypandoc: sort drop-down lists.

  • Beamer template:

    • Made \euro conditional on presence of character. for xelatex and lualatex, as it is for pdflatex (Andrew Dunning).
    • Moved header-includes before setting of title (Thomas Hodgson), to match the LaTeX template (jgm/pandoc-templates#168).
    • Added section-titles variable (defaults to true) to enable/suppress section title pages in beamer slide shows (Thomas Hodgson).
    • Moved beamer themes after fonts, so that themes can change fonts. (Previously the fonts set were being clobbered by lmodern.sty.) (Thomas Hodgson).
  • Beamer/LaTeX template changes (Thomas Hodgson):
    • Added thanks variable
    • Use parskip.sty when indent isn't set (fall back to using setlength as before if parskip.sty isn't available).
    • Use biblio-style with biblatex.
    • Added biblatexoptions variable.
  • LaTeX template changes:

    • Added paper after $papersize$ variable in latex template. Thus you can say papersize: a4 and the latex will contain a4paper. This change may break some existing workflows; if you currently specify a4paper, you'll get a4paperpaper which is meaningless. However, the change seems worth it, as it will make the papersize variable work uniformly across ConTeXt, LaTeX, and html->pdf via wkhtmltopdf.
    • Only pass options to color package if colorlinks is set (Andrew Dunning).
    • Make definition of \euro conditional in xelatex/lualatex, as it is already for pdflatex (Andrew Dunning).
    • Removed setting of subject in PDF metadata. This used to be set to the subtitle, but really the subtitle need not give the subject. Also, subtitle can contain formatting, so we'd need, at least, a plain text version for this.
    • Moved header-includes before setting of \title, \author, etc. This allows these macros to be redefined.
    • Use \subtitle command for subtitle, instead of tacking it on to the title as before. We give a no-op fallback definition if it is not defined. This change should produce much better results in classes that support \subtitle. With the default article class, which does not define \subtitle, subtitles will no longer be printed unless the user defines \subtitle and redefines \maketitle.
    • Moved redefinitions of \paragraph and \subparagraph to before header-includes.
  • Context template:

    • Use simplefonts for font loading (Paolo Rodríguez). This is needed for things to work on ConTeXt stable from TeXLive 2015.
    • Revert use of \setuphead in title block (Andrew Dunning, Rik Kabel).
  • Update LaTeX/ConTeXt link colour usage (Andrew Dunning).

  • Fixed man template so disabling hyphenation actually works. The command needs to come after .TH.

  • Added 'navigation' variable to beamer template (#2543). Valid values are empty (the default), horizontal, vertical, and frame. Note that this changes the default behavior from horizontal to empty. Closes #2543.

  • Added toc to HTML slide format templates (Andrew Dunning), so that --toc creates a contents slide.

  • Added stack.full.yaml to build pandoc-citeproc as well.

  • Allow pipe tables with no body rows (#2556). Previously this raised a runtime error.

  • Shared: Improved fetchItem so that C:/Blah/Blah.jpg isn't treated as URL. The Haskell URI parsing routines will accept "C:" as a scheme, so we rule that out manually. This helps with --self-contained and absolute Windows paths.

  • Define a meta-json variable for all writers (#2019). This contains a JSON version of all the metadata, in the format selected for the writer. So, for example, to get just the YAML metadata, you can run pandoc with the following custom template: $meta-json$. The intent is to make it easier for static site generators and other tools to get at the metadata.

  • Document limitations of --self-contained (#2553).

  • Improved Citations section of README (#2551). Added information about link-citations and a link to the pandoc-citeproc man page.

  • ImageSize: use safeRead instead of readMaybe, which isn't in base < 4.6.

  • Allow .adoc file extension for AsciiDoc (Andrew Dunning).

  • Improved implicit pandoc-citeproc inclusion. The filter pandoc-citeproc is automatically used when --bibliography is specified on the command line, unless --natbib or --biblatex is used. However, previously this only worked if --bibliography was spelled out in full, and not if --biblio was used.

  • reveal.js: Interpret pauses correctly for all headers (#2530). Previously, when using headers below the slide level, pauses are left uninterpreted into pauses. In my opinion, unexpected behavior but intentional looking at the code.

  • Remove redundant center variable for reveal.js (Andrew Dunning).

  • Parsing: Add extractIdClass, modified type of KeyTable (Mauro Bieg, API change).

  • ImageSize: Added functions for converting between image dimensions (Mauro Bieg).

  • Use lts-3.18 in stack.yaml. This avoids Windows build issues with the HTTP library.

  • Bump version bounds for dependencies.

Downloads

  • 1.15.2.1

    reveal.js template: Fixed parallaxBackground options.
    `parallaxBackgroundHorizontal` and `parallaxBackgroundVertical` need
    integer values, not strings.  (Vaughn Iverson)

pandoc 1.15.2

@jgm jgm released this · 353 commits to master since this release

  • pandoc my.md -t context -o my.pdf will now create a PDF using ConTeXt rather than LaTeX (#2463).

  • Fixed omitted url(...) in CSS data-uri with --self-contained (#2489).

  • Added emoji Markdown extension, enabled by default in markdown_github (#2523). Added Ext_emoji to Extension in Text.Pandoc.Options (API change).

  • Text.Pandoc.Readers.HTML.parseTags: Fixed over-eager raw HTML inline parsing (#2469). Tightened up the inline HTML parser so it disallows TagWarnings.

  • Derive Generic instances for the types in Text.Pandoc.Options.

  • Org reader:

    • Fix paragraph/list interaction (Albert Krewinkel, #2464). Paragraphs can be followed by lists, even if there is no blank line between the two blocks. However, this should only be true if the paragraph is not within a list, were the preceding block should be parsed as a plain instead of paragraph (to allow for compact lists). Thanks to @rgaiacs for bringing this up.
    • Allow toggling header args (Albert Krewinkel, #2269). Org-mode allows to skip the argument of a code block header argument if it's toggling a value. Argument-less headers are now recognized, avoiding weird parsing errors.
    • Fix markup parsing in headers (Albert Krewinkel, #2504). Markup as the very first item in a header wasn't recognized. This was caused by an incorrect parser state: positions at which inline markup can start need to be marked explicitly by changing the parser state. This wasn't done for headers. The proper function to update the state is now called at the beginning of the header parser, fixing this issue.
    • Fix emphasis rules for smart parsing (Albert Krewinkel, #2513). Smart quotes, ellipses, and dashes should behave like normal quotes, single dashes, and dots with respect to text markup parsing.
    • Require whitespace around definition list markers (#2518). This rule was not checked before, resulting in bugs with footnotes and some link types.
  • Markdown reader:

    • Pipe tables with long lines now get relative cell widths (#2471). If a pipe table contains a line longer than the column width (as set by --columns or 80 by default), relative widths are computed based on the widths of the separator lines relative to the column width. This should solve persistent problems with long pipe tables in LaTeX/PDF output, and give more flexibility for determining relative column widths in other formats, too. For narrower pipe tables, column widths of 0 are used, telling pandoc not to specify widths explicitly in output formats that permit this.
    • Improved parser for mmd_title_block. We now allow blank metadata fields. These were explicitly disallowed before.
    • Citation keys can now contain ://, so URLs and DOIs can be used as citation keys (jgm/pandoc-citeproc#166).
  • Beamer template: fix incompatibility of section slides with natbib. Natbib (and presumably biblatex) bibliography commands create their own section. Since these are in frame environments, we have an incompatibility with the \AtBeginSection macro which creates a special frame when a new section occurs. (We can't have a frame inside another frame.) This change disables \AtBeginSection inside bibliography slides. Thinks to Yihui Xie for bringing the problem to my attention. This supersedes #145. See discussion there.

  • Textile reader: don't do smart punctuation unless explicitly asked (#2480). Note that although smart punctuation is part of the textile spec, it's not always wanted when converting from textile to, say, Markdown. So it seems better to make this an option.

  • LaTeX reader: Handle comment environment (Arata Mizuki). The comment environment is handled in a similar way to the verbatim environment, except that its content is discarded.

  • Docx reader: Follow relationships correctly in foot/endnotes (#2258, Jesse Rosenthal). This fixes a problem with links in notes.

  • LaTeX and ConTeXt writers: support lang attribute on divs and spans (mb21). For LaTeX, also collect lang and dir attributes on spans and divs to set the lang, otherlangs and dir variables if they aren’t set already. See #895.

  • LaTeX writer:

    • Use proper command for \textarabic (mb21).
    • Added de-CH-1901, fixed el-polyton in toPloyglossia (Nick Bart).
    • Use \hypertarget and \hyperlink for links. This works correctly to link to Div or Span elements. We now don't bother defining \label for Div or Span elements. Closes jgm/pandoc-citeproc#174.
    • Avoid footnotes in list of figures (#1506).
    • Properly handle footnotes in captions (#1506).
    • Add \protect to \hyperlink (#2490). Thanks to Hadrien Mary.
    • Set colorlinks if linkcolor, urlcolor, citecolor, or toccolor is set (#2508).
  • Textile writer: support start number in ordered lists (#2465).

  • OpenDocument writer: Allow customization of opendocument automatic styles. Automatic styles can now be inserted in the template, which now provides the enclosing <office:automatic-styles> tags (#2520).

  • Docx writer: insert space between footnote reference and note (#2527). This matches Word's default behavior.

  • EPUB writer: don't download linked media when data-external attribute set (#2473). By default pandoc downloads all linked media and includes it in the EPUB container. This can be disabled by setting data-external on the tags linking to media that should not be downloaded. Example:

    <audio controls="1">
     <source src="http://www.sixbarsjail.it/tmp/bach_toccata.mp3"
     type="audio/mpeg"></source>
    </audio>
    
  • HTML writer: use width on whole table if col widths sum to < 100%. Otherwise some browsers display the table with the columns separated far apart.

  • AsciiDoc template: Fix author and date; add keywords, abstract (Andrew Dunning).

  • HTML-based templates (Andrew Dunning):

    • Use en dash instead of hyphen between title prefix and title.
    • Add keywords to metadata.
    • Add lang, dir, quotes where missing.
    • Always make author and date display conditional.
    • Updated dzslides template from source.
  • Man template: make "generated by" comment conditional.

  • LaTeX, Beamer templates:

    • Add babel-otherlangs for language divs/spans; babel-newcommands, filled by commands that make babel understand the polyglossia-style language directives (mb21, #137).
    • Improved formatting of conditionals; $for$ is always provided to allow multiple options (Andrew Dunning, #141).
    • Use Ligatures=TeX rather than Mapping=tex-text with fontspec to improve support for LuaTeX (Andrew Dunning, #135).
    • Revise hyperref usage (Andrew Dunning, #139, #141):
      • use same options for all LaTeX engines;
      • add subtitle and keywords to PDF metadata;
      • do not override hyperref link coloring without user input, effectively making the hidelinks option the default (removed as a separate variable);
      • link colors can be enabled (using a slightly darker version of the old defaults) using a new colorlinks variable, automatically used by the LaTeX writer when custom colors are specified;
      • pdfborder={0 0 0} is automatically set by hyperref with colorlinks, and is only applied if colorlinks is disabled.
  • ConTeXt template (Andrew Dunning):

    • New variables for controlling styles: linkstyle, linkcolor, linkcontrastcolor, layout, pagenumbering, whitespace, indenting, interlinespace, headertext, footertext, mainfont, sansfont, monofont, mathfont, fontsize.
    • Default template no longer supports MkII.
    • Improve writing of title block (suppressing numbering of first page).
    • Add title subtitle, author, date, keywords to PDF metadata.
    • Support subtitle, abstract.
    • Support list of figures (lof), list of tables (lot).
    • Disable link styling by default.
    • Define styles for all section types.
    • Enable microtype.
    • Improved formatting of conditionals.
  • Beamer template: added code to prevent slide breaks inside paragraphs (#2422, thanks to Nick Bart). This will matter, in practice, only when allowframebreaks is used. It is especially helpful for bibliography slides.

  • OpenDocument template: Add <office:automatic-styles> tag around automatic styles. The writer now longer provides this (see #2520).

  • Restored Text.Pandoc.Compat.Monoid.

  • Do not export (<>) from custom Prelude. The Prelude now matches base 4.8 Prelude's API.

  • Don't use custom prelude with ghc 7.10. Use the custom prelude only for earlier versions. This change makes stack ghci and cabal repl work (#2503), at least with ghc 7.10.

  • Changed § to % in operators from Odt.Arrows.Utils (#2457). This prevents problems building haddocks with "C" locale.

  • Change default for old-locale flag to False.

  • Use stack in deb, osx, and Windows package generators.

  • Added Vagrantfile for building deb in vm. This should help in automating binary package creation. 'make package' will make the package. 'make package COMMIT=blah' will make the package from commit blah.

  • README:

    • Consistent capitalization for pandoc and Markdown.
    • Fixed auto_identifiers examples (Benoit Schweblin).
    • Improved documentation of template variables (Andrew Dunning).

Downloads

pandoc 1.15.1.1

@jgm jgm released this · 483 commits to master since this release

  • Text.Pandoc.Data: store paths in dataFiles using posix separators. This way we have uniform separators, whether on Windows or Linux. This should solve a problem where on some Windows versions the data files weren't being found (#2459).

Note: This release does nothing more than fix a problem with some Windows builds of 1.15.1. Linux and OSX users may continue to use pandoc 1.15.1, so binary packages for these platforms are not provided here.

Downloads

pandoc 1.15.1

@jgm jgm released this · 488 commits to master since this release

  • pandocVersion is now defined in Text.Pandoc.Shared and reexported from Text.Pandoc (Alex Vong). This allows writers to access it. (Alex Vong) (API change)

  • For markdown_mmd, add: implicit_figures, superscripts, subscripts (#2401).

  • Added odt as input format (MarLinn). Added new module Text.Pandoc.Reader.ODT (API change). Fully implemented features: Paragraphs, Headers, Basic styling, Unordered lists, Ordered lists, External Links, Internal Links, Footnotes, Endnotes, Blockquotes. Partly implemented features: Citations, Tables.

  • Markdown Reader:

    • Add basic tests for each header style (Ophir Lifshitz).
    • Add implicit header ref tests for headers with spaces (Ophir Lifshitz).
    • Skip spaces in headers (Ophir Lifshitz).
    • Handle 'id' and 'class' in parsing key/value attributes (#2396). # Header {id="myid" class="foo bar"} is now equivalent to # Header {#myid .foo .bar}.
    • Use '=' instead of '#' for atx-style headers in markdown+lhs. (Kristof Bastiaensen)
    • Pipe tables: allow indented columns. Previously the left-hand column could not start with 4 or more spaces indent. This was inconvenient for right-aligned left columns. Note that the first (header column) must still have 3 or fewer spaces indentation, or the table will be treated as an indented code block.
    • Fix regression: allow HTML comments containing --. Technically this isn't allowed in an HTML comment, but we've always allowed it, and so do most other implementations. It is handy if e.g. you want to put command line arguments in HTML comments.
  • LaTeX reader:

    • Don't eat excess whitespace after macros with only optional arguments (#2446).
    • Support longtable (#2411).
    • Implement \Cite (#2335).
    • Support abstract environment. The abstract populates an abstract metadata field.
    • Properly handle booktabs lines. Lines aren't part of the pandoc table model, so we just ignore them (#2307).
  • HTML reader:

    • Handle type attribute on ol, e.g. <ol type="i"> (#2313).
    • Updated for new automatic header attributes.
    • Add auto identifiers if not present on headers. This makes TOC linking work properly.
    • Detect font-variant with pickStyleAttrProps (Ophir Lifshitz).
    • Test <ol> type, class, and inline list-style(-type) CSS (Ophir Lifshitz).
    • Better handling of "section" elements (#2438). Previously <section> tags were just parsed as raw HTML blocks. With this change, section elements are parsed as Div elements with the class "section".
  • MediaWiki reader: handle unquoted table attributes (#2355).

  • DocBook reader:

    • Added proper support for DocBook xref elements (Frerich Raabe). Added dbContent field to reader state, so we can lookup cross refs.
    • Handle informalexample (#2319).
  • Docx Reader:

    • Create special punctuation test (Ophir Lifshitz).
    • Parse soft, no-break hyphen elements (Ophir Lifshitz).
    • Updated headers test (Ophir Lifshitz). Replaced styles.xml in headers.docx with pandoc's current styles.xml, which contains styles for Heading 1 through 6. Added Heading 4 through 7 to the test document. Note that Heading 7 is not parsed as a Heading because there is no Heading 7 style.
  • RST reader: better handling of indirect roles. Previously the parser failed on this kind of case

    .. role:: indirect(code)
    
    .. role:: py(indirect)
       :language: python
    
    :py:`hi`
    

    Now it correctly recognizes :py: as a code role.

  • Org reader:

    • Add auto identifiers if not present on headers (#2354, Juliusz Gonera).
    • Allow verse blocks to contain empty lines (#2402, Albert Krewinkel).
  • EPUB reader: stop mangling external URLs (#2284).

  • RST writer:

    • Don't insert \ when complex expression in matched pairs. E.g. [:sup:`3`] is okay; you don't need [:sup:`3`\ ].
    • Ensure that \ is inserted when needed before Cite and Span elements that begin with a "complex" element (jgm/pandoc-citeproc#157).
    • Normalize headers only in "standalone" mode (#2394).
  • Haddock writer: escape * and ^ (G. Bataille).

  • Markdown writer:

    • In TOC, add links to headers (#829).
    • Use unicode super/subscripts for digits in plain output (when the superscripts and subscripts extensions are not enabled).
  • Docx writer:

    • Moved invalid character stripping to formattedString. This avoids an inefficient generic traversal (#2356).
    • Use user data directory for reference.docx archive. This allows the test suite to work without installing pandoc first. It also brings the docx writer in line with the odt writer.
    • Tests: docx writer tests now use ../data for data directory. This allows tests to be run without installing first.
    • Tests: Use real jpg (not empty) for docx tests to avoid warning.
  • LaTeX writer:

    • Fixed detection of 'chapters' from template. If a documentclass isn't specified in metadata, but the template has a hardwired bookish documentclass, act as if --chapters was used. This was the default in earlier versions, but it has been broken for a little while.
    • Correctly recognize book documentclass in metadata (#2395).
    • Set language-related variables automatically, depending on the value of the lang field, which is now always assumed to be in BCP47 format (mb21, #1614, #2437).
    • Add \protect to \hyperdef in inline context. This way we don't get an error when this is used as a moveable argument (#2136).
    • Support all frame attributes in Beamer.
    • Percent-encode more special characters in URLs (#1640, #2377). The special characters are '<','>','|','"','{','}','[',']','^', '`'.
  • HTML writer:

    • Update KaTeX JS and CSS versions (Emily Eisenberg).
    • For dzslides, add role="note" for speaker notes (#1693).
    • Percent-encode more special characters in URLs (#1640, #2377). The special characters are '<','>','|','"','{','}','[',']','^', '`'.
    • Render Div with class section as <section> in HTML5.
  • EPUB writer:

    • In TOC, replace literal <br/> with space (#2105).
    • With --webtex, include image file rather than data: URI (#2363).
  • Native writer: format Div properly, with blocks separated.

  • Support bidirectional text output with XeLaTeX, ConTeXt and HTML (#2191, mb21).

  • Reference Docx:

    • Add missing Header 6 style (steel blue) (Ophir Lifshitz).
    • Correct outlineLvl for Header styles (Ophir Lifshitz).
  • Templates

    • Beamer: Add innertheme, outertheme variables (Guilhem Bonnefille, #121). Add space after colon in figure caption. Integrate recent font and language updates from LaTeX template; allow use of mainfont variable for changing the slide text in XeTeX and LuaTeX (Andrew Dunning, #131).
    • LaTeX: Add mainfontoptions, sansfontoptions, monofontoptions, mathfontoptions, fontfamilyoptions (Andrew Dunning, #122). Support handling of bidirectional text (mb21, #120). Improve reliability of superscripts/subscripts under XeTeX and prevent letters and numbers from appearing on a different baseline by removing use of the realscripts package (via xltxtra). To restore use of OpenType characters for these features under XeTeX or LuaTeX, add \usepackage{realscripts} to header-includes (Andrew Dunning, #130). Remove redundant reference to xunicode (Andrew Dunning, #130). Add fontenc, indent, subparagraph variables (Andrew Dunning). Allow use of hidelinks variable for hyperref package (Hugo Roy, #113). Prevent package clash with tufte-latex and other classes that include hyperref or color (Xavier Olive, #115).
    • ConTeXt: Support handling of bidirectional text (mb21, #120).
    • LaTeX and ConTeXt: Use more specific language variables. Instead of directly using lang, we now use babel-lang and polyglossia-lang and context-lang. These variables are set by the writers to the necessary values, based on the lang variable (which now always takes a value in BCP47 format). (mb21, #114, #129).
    • HTML: Support handling of bidirectional text (mb21, #120). Move HTML5 shiv after CSS and fix URL (Andrew Dunning). Add dir attribute in html5 (Andrew Dunning).
    • reveal.js: Add controls, progress variables (Grégoire Pineau, #127). Add width, height variables (Anrew Dunning). Update template from 3.1 source (Andrew Dunning). All configuration options are now available as variables, but are only be included if set (reveal.js uses defaults otherwise).
    • man: Added comment stating that the page is autogenerated by pandoc, giving version. Added adjusting and hyphenate variables (Alex Vong, #123).
  • epub.css: added selectors for nested emphasis (Pablo Rodriguez).

  • MediaBag: ensure that / is always used as path separator.

  • sample.lua: define CaptionedImage, add newline at end (#2393).

  • Added --bash-completion option. This generates a bash completion script. To use: eval "$(pandoc --bash-completion)".

  • Text.Pandoc.Error: Define Typeable and Exception instances for PandocError (#2386).

  • Text.Pandoc.Parsing: toKey: strip off outer brackets. This makes keys with extra space at the beginning and end work: e.g.

    [foo]: bar
    
    [ foo ]
    

    will now be a link to bar (it wasn't before).

  • Text.Pandoc: disable auto_identifiers for epub. The epub writer inserts its own auto identifiers; this is more complex due to splitting into "chapter" files.

  • Renamed Text.Pandoc.Compat.Locale -> Text.Pandoc.Compat.Time. It now reexports Data.Time.

  • Use custom Prelude to avoid compiler warnings.

    • The (non-exported) prelude is in prelude/Prelude.hs.
    • It exports Monoid and Applicative, like base 4.8 prelude, but works with older base versions.
    • It exports (<>) for mappend.
    • It hides 'catch' on older base versions.
  • Added a stack.ymal and stack install instructions to INSTALL.

  • Clarified what is "out of scope" in README and CONTRIBUTING.md.

  • Added note to CONTRIBUTING.md about ghc versions and travis.

  • Clarify docs on block quotes. The space after > is optional (#2346).

  • Removed obsolete reference to default.csl (#2372).

  • List all styles in manual for --reference-docx (Chris Black)

  • Don't capitalize header links in man page.

  • Added section on repl to CONTRIBUTING.md.

  • README: Added space after backslash in image example (#2329).

  • Document details of citation locator terms (Nick Bart).

  • Fixed some internal links in README (#2309).

  • Improve CSL documentation, variables documentations, links, and cross-references in README. (Andrew Dunning)

  • Fix build failure with --flags=-https (Sergei Trofimovich).

  • Use newManager instead of withManager in recent http-client. This avoids a deprecation warning.

  • Allow building with latest versions of http-types, HUnit, criterion, syb, aeson.

  • Updated benchmark program for new criterion API.

  • Setup.hs: rewrite so as not to use process, directory, filepath. Using anything outside base is dangerous, since older versions of ghc may link against two different versions.

  • Added appveyor (Windows continuous integration) builds.

  • New .travis.yml. Autgenerated using make_travis_yml.hs. This script has been modified in a few ways, e.g. to add GHCOPTS. make .travis.yml regenerates it based on the tested-with field of the cabal file.

Where's the Windows package? See pandoc 1.15.1.1.

Downloads

Something went wrong with that request. Please try again.