@@ -1,5922 +0,0 @@
1−[pending release 1.12]
2−
3− [new features]
4−
5− * Added `opml` (OPML) as input and output format. The `_note` attribute,
6− used in OmniOutliner and supported by multimarkdown, is supported.
7− We treat the contents as markdown blocks under a section header.
8−
9− * Added `haddock` (Haddock markup) as input format (David Lazar).
10−
11− * Added `revealjs` output format, for reveal.js HTML 5 slide shows.
12− (Thanks to Jamie F. Olson for the initial patch.)
13− Nested vertical stacks are used for hierarchical structure.
14− Results for more than one level of nesting may be odd.
15−
16− * Custom writers can now be written in lua.
17−
18− pandoc -t data/sample.lua
19−
20− will load the script sample.lua and use it as a custom writer.
21− (For a sample, do `pandoc --print-default-data-file sample.lua`.)
22− Note that pandoc embeds a lua interpreter, so lua need not be
23− installed separately.
24−
25− * New `--filter/-F` option to make it easier to run "filters"
26− (Pandoc AST transformations that operate on JSON serializations).
27− Filters are always passed the name of the output format, so their
28− behavior can be tailored to it. The repository
29− <https://github.com/jgm/pandoc-filters-python> contains
30− a python module for writing pandoc filters in python, with
31− a number of examples.
32−
33− * Added `--metadata/-M` option.
34− This is like `--variable/-V`, but actually adds to metadata, not
35− just variables.
36−
37− * Added `--print-default-data-file` option, which allows printing
38− of any of pandoc's data files. (For example,
39− `pandoc --print-default-data-file reference.odt` will print
40− `reference.odt`.)
41−
42− * Added syntax for "pauses" in slide shows:
43−
44− This gives
45−
46− . . .
47−
48− a pause.
49−
50− * New markdown extensions:
51−
52− + `ignore_line_breaks`: causes intra-paragraph line breaks to be ignored,
53− rather than being treated as hard line breaks or spaces. This is useful
54− for some East Asian languages, where spaces aren't used between words,
55− but text is separated into lines for readability.
56− + `yaml_metadata_block`: Parse YAML metadata blocks. (Default.)
57− + `ascii_identifiers`: This will force `auto_identifiers` to use ASCII
58− only. (Default for `markdown_github`.) (#807)
59− + `lists_without_preceding_blankline`: Allow lists to start without
60− preceding blank space. (Default for `markdown_github`.) (#972)
61−
62− [behavior changes]
63−
64− * `--toc-level` no longer implies `--toc`.
65− Reason: EPUB users who don't want a visible TOC may still want
66− to set the TOC level for in the book navigation.
67−
68− * `--help` now prints in and out formats in alphabetical order, and
69− says something about PDF output (#720).
70−
71− * `--self-contained` now returns less verbose output (telling you
72− which URLs it is fetching, but not giving the full header). In
73− addition, there are better error messages when fetching a URL fails.
74−
75− * Better error reporting in some readers, due to changes in `readWith`:
76− the line in which the error occured is printed, with a caret pointing
77− to the column.
78−
79− * All slide formats now support incremental slide view for definition lists.
80−
81− * Parse `\(..\)` and `\[..\]` as math in MediaWiki reader.
82− Parse `:<math>...</math>` as display math. These notations are used with
83− the MathJax MediaWiki extension.
84−
85− * Man writer: The `title`, `section`, `header`, and `footer` can now
86− all be set individually in metadata. The `description` variable has been
87− removed. Quotes have been added so that spaces are allowed in the
88− title. If you have a title that begins
89−
90− COMMAND(1) footer here | header here
91−
92− pandoc will still parse it into a title, section, header, and
93− footer. But you can also specify these elements explicitly (#885).
94−
95− * Markdown writer
96−
97− + Allow simple tables to be printed as grid tables,
98− if other table options are disabled. This means you can do
99− `pandoc -t markdown-pipe_tables-simple_tables-multiline_tables`
100− and all tables will render as grid tables.
101− + Support YAML title block (render fields in alphabetical order
102− to make output predictable).
103−
104− [API changes]
105−
106− * `Format` is now a newtype, not an alias for String.
107− Equality comparisons are case-insensitive.
108−
109− * Added `Text.Pandoc.Process`, exporting `pipeProcess`.
110− This is a souped-up version of `readProcessWithErrorcode` that
111− uses lazy bytestrings instead of strings and allows setting
112− environment variables. (Used in `Text.Pandoc.PDF`.)
113−
114− * New module `Text.Pandoc.Readers.OPML`.
115−
116− * New module `Text.Pandoc.Writers.OPML`.
117−
118− * New module `Text.Pandoc.Readers.Haddock` (David Lazar).
119− This is based on Haddock's own lexer/parser.
120−
121− * New module `Text.Pandoc.Writers.Custom`.
122−
123− * In `Text.Pandoc.Shared`, `openURL` and `fetchItem` now return an
124− Either, for better error handling.
125−
126− * Made `stringify` polymorphic in `Text.Pandoc.Shared`.
127−
128− * Removed `stripTags` from `Text.Pandoc.XML`.
129−
130− * `Text.Pandoc.Templates`:
131−
132− + Simplified `Template` type to a newtype.
133− + Removed `Empty`.
134− + Changed type of `renderTemplate`: it now takes a JSON context
135− and a compiled template.
136− + Export `compileTemplate`.
137− + Export `renderTemplate'` that takes a string instead of a compiled
138− template.
139− + Export `varListToJSON`.
140−
141− * `Text.Pandoc.PDF` exports `makePDF` instead of `tex2pdf`.
142−
143− [bug fixes]
144−
145− * In markdown, don't autolink a bare URI that is followed by `</a>`
146− (#937).
147−
148− * `Text.Pandoc.Shared`
149−
150− + `openURL` now follows redirects (#701), properly handles `data:`
151− URIs, and prints diagnostic output to stderr rather than stdout.
152− + `readDefaultDataFile`: normalize the paths. This fixes bugs in
153− `--self-contained` on pandoc compiled with `embed_data_files` (#833).
154− + Fixed `readDefaultDataFile` so it works on Windows.
155− + Better error messages for `readDefaultDataFile`. Instead of
156− listing the last path tried, which can confuse people who are
157− using `--self-contained`, so now we just list the data file name.
158− + URL-escape pipe characters. Even though these are legal, `Network.URI`
159− doesn't regard them as legal in URLs. So we escape them first (#535).
160−
161− * Mathjax in HTML slide shows: include explicit "Typeset" call.
162− This seems to be needed for some formats (e.g. slideous) and won't
163− hurt in others (#966).
164−
165− * `Text.Pandoc.PDF`
166−
167− + On Windows, create temdir in working directory, since the system
168− temp directory path may contain tildes, which can cause
169− problems in LaTeX (#777).
170− + Put temporary output directory in `TEXINPUTS` (see #917).
171−
172− * Produce automatic header identifiers in parsing textile, RST,
173− and LaTeX, unless `auto_identifiers` extension is disabled (#967).
174−
175− * `Text.Pandoc.SelfContained`: Strip off fragment, query of relative URL
176− before treating as a filename. This fixes `--self-contained` when used
177− with CSS files that include web fonts using the method described here:
178− <http://paulirish.com/2009/bulletproof-font-face-implementation-syntax/>
179− (#739). Handle `src` in `embed`, `audio`, `source`, `input` tags.
180−
181− * `Text.Pandoc.Parsing`: `uri` parser no longer treats punctuation before
182− percent-encoding, or a `+` character, as final punctuation.
183−
184− * `Text.Pandoc.ImageSize`: Handle EPS (#903). This change will make
185− EPS images properly sized on conversion to Word.
186−
187− * Slidy: Use slidy.js rather than slidy.js.gz.
188− Reason: some browsers have trouble with the gzipped js file,
189− at least on the local file system (#795).
190−
191− * Textile reader:
192−
193− + Correctly handle entities.
194− + Improved handling of `<pre>` blocks (#927). Remove internal HTML tags
195− in code blocks, rather than printing them verbatim. Parse attributes
196− on `<pre>` tag for code blocks.
197−
198− * HTML reader: Handle non-simple tables (#893). Column widths are read from
199− `col` tags if present, otherwise divided equally.
200−
201− * LaTeX reader
202−
203− + Support alltt environment (#892).
204− + Support `\textasciitilde`, `\textasciicircum` (#810).
205− + Treat `\textsl` as emphasized text reader (#850).
206− + Skip positional options after `\begin{figure}`.
207− + Support `\v{}` for hacek (#926).
208− + Don't add spurious ", " to citation suffixes.
209− This is added when needed in `Text.Pandoc.Biblio` anyway.
210− + Allow spaces in alignment spec in tables, e.g. `{ l r c }`.
211− + Improved support for accented characters (thanks to Scott Morrison).
212− + Parse label after section command and set id (#951).
213−
214− * RST reader:
215−
216− + Don't insert paragraphs where docutils doesn't.
217− `rst2html` doesn't add `<p>` tags to list items (even when they are
218− separated by blank lines) unless there are multiple paragraphs in the
219− list. This commit changes the RST reader to conform more closely to
220− what docutils does (#880).
221− + Improved metadata. Treat initial field list as metadata when
222− standalone specified. Previously ALL fields "title", "author",
223− "date" in field lists were treated as metadata, even if not at
224− the beginning. Use `subtitle` metadata field for subtitle.
225− + Fixed 'authors' metadata parsing in reST. Semicolons separate
226− different authors.
227−
228− * MediaWiki reader
229−
230− + Allow space before table rows.
231− + Fixed regression for `<ref>URL</ref>`.
232− `<` is no longer allowed in URLs, according to the uri parser
233− in `Text.Pandoc.Parsing`. Added a test case.
234− + Correctly handle indented preformatted text without preceding
235− or following blank line.
236− + Fixed `|` links inside table cells. Improved attribute parsing.
237− + Skip attributes on table rows. Previously we just crashed if
238− rows had attributes, now we ignore them.
239− + Ignore attributes on headers.
240− + Allow `Image:` for images (#971).
241−
242− * LaTeX writer
243−
244− + Don't use ligatures in escaping inline code.
245− + Fixed footnote numbers in LaTeX/PDF tables. This fixes a bug
246− wherein notes were numbered incorrectly in tables (#827).
247− + Always create labels for sections. Previously the labels were only
248− created when there were links to the section in the document (#871).
249− + Stop escaping `|` in LaTeX math.
250− This caused problems with array environments (#891).
251− + Change `\` to `/` in paths. `/` works even on Windows in LaTeX.
252− `\` will cause major problems if unescaped.
253− + Write id for code block to label attribute in LaTeX when listings
254− is used (thanks to Florian Eitel).
255− + Scale LaTeX tables so they don't exceed columnwidth.
256− + Avoid problem with footnotes in unnumbered headers (#940).
257−
258− * Beamer writer: when creating beamer slides, add `allowframebreaks` option
259− to the slide if it is one of the header classes. It is recommended
260− that your bibliography slide have this attribute:
261−
262− # References {.allowframebreaks}
263−
264− This causes multiple slides to be created if necessary, depending
265− on the length of the bibliography.
266−
267− * ConTeXt writer: Properly handle tables without captions. The old output
268− only worked in MkII. This should work in MkIV as well (#837).
269−
270− * MediaWiki writer: Use native mediawiki tables instead of HTML (#720).
271−
272− * HTML writer:
273−
274− + Fixed `--no-highlight` (Alexander Kondratskiy).
275− + Don't convert to lowercase in email obfuscation (#839).
276−
277− * AsciiDoc writer:
278−
279− + Support `--atx-headers` (Max Rydahl Andersen).
280− + Don't print empty identifier blocks `([[]])` on headers (Max
281− Rydahl Andersen).
282−
283− * ODT writer:
284−
285− + Fixing wrong numbered-list indentation in open document format
286− (Alexander Kondratskiy) (#369).
287− + `reference.odt`: Added pandoc as "generator" in `meta.xml`.
288− + Minor changes for ODF 1.2 conformance (#939). We leave the
289− nonconforming `contextual-spacing` attribute, which is provided by
290− LibreOffice itself and seems well supported.
291−
292− * Docx writer:
293−
294− + Fixed rendering of display math in lists.
295− In 1.11 and 1.11.1, display math in lists rendered as a new list
296− item. Now it always appears centered, just as outside of lists,
297− and in proper display math style, no matter how far indented the
298− containing list item is (#784).
299− + Use `w:br` with `w:type` `textWrapping` for linebreaks.
300− Previously we used `w:cr` (#873).
301− + Use Compact style for Plain block elements, to
302− differentiate between tight and loose lists (#775).
303− + Ignore most components of `reference.docx`.
304− We take the `word/styles.xml`, `docProps/app.xml`,
305− `word/theme/theme1.xml`, and `word/fontTable.xml` from
306− `reference.docx`, ignoring everything else. This should help
307− with the corruption problems caused when different versions of
308− Word resave the reference.docx and reorganize things.
309− + Made `--no-highlight` work properly.
310−
311− * EPUB writer
312−
313− + Don't add `dc:creator` tags if present in EPUB metadata.
314− + Add `id="toc-title"` to `h1` in `nav.xhtml` (#799).
315− + Don't put blank title page in reading sequence.
316− Set `linear="no"` if no title block. Addresses #797.
317− + Download webtex images and include as data URLs.
318− This allows you to use `--webtex` in creating EPUBs.
319− Math with `--webtex` is automatically made self-contained.
320− + In `data/epub.css`, removed highlighting styles (which
321− are no longer needed, since styles are added by the HTML
322− writer according to `--highlighting-style`). Simplified
323− margin fields.
324− + If resource not found, skip it, as in Docx writer (#916).
325−
326− * RTF writer:
327−
328− + Properly handle characters above the 0000-FFFF range.
329− Uses surrogate pairs. Thanks to Hiromi Ishii for the patch.
330− + Fixed regression with RTF table of contents.
331− + Only autolink absolute URIs. This fixes a regression, #830.
332−
333− * Markdown writer:
334−
335− + Only autolink absolute URIs. This fixes a regression, #830.
336− + Don't wrap attributes in fenced code blocks.
337− + Write full metadata in MMD style title blocks.
338− + Put multiple authors on separate lines in pandoc titleblock.
339− Also, don't wrap long author entries, as new lines get treated
340− as new authors.
341−
342− * `Text.Pandoc.Templates`:
343−
344− + Fixed bug retrieving default template for markdown variants.
345− + Templates can now contain "record lookups" in variables;
346− for example, `author.institution` will retrieve the `institution`
347− field of the `author` variable.
348− + More consistent behavior of `$for$`. When `foo` is not a list,
349− `$for(foo)$...$endfor$` should behave like $if(foo)$...$endif$.
350− So if `foo` resolves to "", no output should be produced.
351− See pandoc-templates#39.
352−
353− [template changes]
354−
355− * DocBook: Use DocBook 4.5 doctype.
356−
357− * Org: '#+TITLE:' is inserted before the title.
358− Previously the writer did this.
359−
360− * LaTeX: Changes to make mathfont work with xelatex.
361− We need the mathspec library, not just fontspec, for this.
362− We also need to set options for setmathfont (#734).
363−
364− * LaTeX: Use `tex-ansi` mapping for `monofont`.
365− This ensures that straight quotes appear as straight, rather than
366− being treated as curly. See #889.
367−
368− * Made `\includegraphics` more flexible in LaTeX template.
369− Now it can be used with options, if needed. Thanks to Bernhard Weichel.
370−
371− * LaTeX/Beamer: Added `classoption` variable.
372− This is intended for class options like `oneside`; it may
373− be repeated with different options. (Thanks to Oliver Matthews.)
374−
375− * Beamer: Added `fonttheme` variable. (Thanks to Luis Osa.)
376−
377− * LaTeX: Added `biblio-style` variable (#920).
378−
379− * DZSlides: title attribute on title section.
380−
381− * HTML5: add meta tag to allow scaling by user (Erik Evenson)
382−
383− [under-the-hood improvements]
384−
385− * Markdown reader:Improved strong/emph parsing, using the strategy of
386− <https://github.com/jgm/Markdown>. The new parsing algorithm requires
387− no backtracking, and no keeping track of nesting levels. It will give
388− different results in some edge cases, but these should not affect normal
389− uses.
390−
391− * Added `Text.Pandoc.Compat.Monoid`.
392− This allows pandoc to compile with `base` < 4.5, where `Data.Monoid`
393− doesn't export `<>`. Thanks to Dirk Ullirch for the patch.
394−
395− * Added `Text.Pandoc.Compat.TagSoupEntity`.
396− This allows pandoc to compile with `tagsoup` 0.13.x.
397− Thanks to Dirk Ullrich for the patch.
398−
399− * Most of `Text.Pandoc.Readers.TeXMath` has been moved to the
400− `texmath` module (0.6.4). (This allows `pandoc-citeproc` to
401− handle simple math in bibliography fields.)
402−
403− * Added `Text.Pandoc.Writers.Shared` for shared functions used
404− only in writers. `metaToJSON` is used in writers to create a
405− JSON object for use in the templates from the pandoc metadata
406− and variables. `getField`, `setField`, and `defField` are
407− for working with JSON template contexts.
408−
409− * Added `Text.Pandoc.Asciify` utility module.
410− This exports functions to create ASCII-only versions of identifiers.
411−
412− * `Text.Pandoc.UTF8`: use strict bytestrings in reading. The use of lazy
413− bytestrings seemed to cause problems using pandoc on 64-bit Windows
414− 7/8 (#874).
415−
416− * Factored out `registerHeader` from markdown reader, added to
417− `Text.Pandoc.Parsing`.
418−
419− * Removed `blaze_html_0_5` flag, require `blaze-html` >= 0.5.
420− Reason: < 0.5 does not provide a monoid instance for Attribute,
421− which is now needed by the HTML writer (#803).
422−
423− * Added `http-conduit` flag, which allows fetching https resources.
424− It also brings in a large number of dependencies (`http-conduit`
425− and its dependencies), which is why for now it is an optional flag
426− (#820).
427−
428− * Added CONTRIBUTING.md.
429−
430− * Improved INSTALL instructions.
431−
432− * `make-windows-installer.bat`: Removed explicit paths for executables.
433−
434− * `aeson` is now used instead of `json` for JSON.
435−
436− * Set default stack size to 16M. This is needed for some large
437− conversions, esp. if pandoc is compiled with 64-bit ghc.
438−
439− * Various small documentation improvements.
440− Thanks to achalddave and drothlis for patches.
441−
442− * Removed comment that chokes recent versions of CPP (#933).
443−
444− * Removed support for GHC version < 7.2, since pandoc-types now
445− requires at least GHC 7.2 for GHC generics.
446−
447−
448−------------------
449−
450− * citeproc support has been removed from core pandoc (API changes).
451−
452− + The `--bibliography`, `--csl`, and `--citation-abbreviation` options are
453− now implemented as follows:
454− --bibliography FILE => --metadata bibliography=FILE --filter pandoc-citeproc
455− --csl FILE => --metadata csl=FILE
456− --citation-abbreviations FILE => --metadata csl-abbreviations=FILE
457− + Markdown and LaTeX citations as still parsed, but an external
458− filter, `pandoc-citeproc`, is now needed to process
459− them against a bibliography and CSL stylesheet. The bibliography
460− and stylesheet should be specified in the document's YAML metadata
461− (`bibliography` and `csl` fields), and the filter called with
462− `pandoc --filter pandoc-citeproc`.
463− + The `Text.Pandoc.Biblio` module has been removed, and the Markdown
464− and LaTeX readers no longer process citations. Users of the
465− pandoc library who want citation support will need to use
466− `Text.CSL.Pandoc` from `pandoc-citations`.
467− + All bibliography-related fields have been removed from
468− `ReaderOptions` and `WriterOptions`: `writerBiblioFiles`,
469− `readerReferences`, `readerCitationStyle`.
470− + Note that a Cite element is now created in parsing markdown whether
471− or not there is a matching reference (indeed, pandoc has no way of
472− knowing, since the `--bibliography` option has been removed).
473− By default citations will print as `???`.
474− + The `pandoc-citeproc` script will put the bibliography at the
475− end of the document, as before. However, it will be put inside a Div
476− element with class "references", allowing users some control
477− over the styling of references. A final header, if any, will
478− be included in the Div.
479− * The markdown writer will not print a bibliography if the
480− `citations` extension is enabled. (If the citations are formatted
481− as markdown citations, it is redundant to have a bibliography,
482− since one will be generated automatically.)
483−
484− * Use new flexible metadata type.
485−
486− + Depend on `pandoc-types` 1.12. This changes the type of
487− `Meta` to allow structured metadata. (API change: existing
488− code that pattern-matches on `Meta` will have to be revised.)
489− + Revised readers and writers to use the new `Meta` type.
490− + Variables completely shadow metadata.
491− If many variables with the same name are set, a list is created.
492−
493− * New generic block container (`Div`) and inline container
494− (`Span`) elements have been added. These can take attributes.
495− They will render in HTML, Textile, MediaWiki, Org, RST and
496− and Markdown (with `markdown_in_html` extension) as HTML `<div>`
497− and `<span>` elements; in other formats they will simply pass through
498− their contents. But they can be targeted by scripts.
499−
500− * `Text.Pandoc`
501−
502− + Make `toJsonFilter` an alias for `toJSONFilter` from `Text.Pandoc.JSON`.
503− + Removed `ToJsonFilter` typeclass. `ToJSONFilter` from
504− `Text.Pandoc.JSON` should be used instead. (Compiling against
505− pandoc-types instead of pandoc will also produce smaller executables.)
506− * Removed the deprecated `jsonFilter` function.
507− + Added `readJSON`, `writeJSON` to the API (#817).
508−
509− [ TODO - systematic documentation of pandoc-types API changes,
510− including .JSON, .Walk and changes to .Definition, .Builder.
511− Include the new Format newtype, and the new Span and Div
512− elements.]
513−
514− * Added `Text.Pandoc.Walk` (in `pandoc-types`), which exports
515− hand-written tree-walking functions that are orders of magnitude
516− faster than the SYB functions from `Text.Pandoc.Generic`.
517− These functions are now used where possible in pandoc's code.
518− Added `Tests.Walk` to verify that `walk` and `query` match
519− the generic traversals `bottomUp` and `queryWith`.
520− (API change.)
521−
522−
523−
524− * `Text.Pandoc.Biblio`
525−
526− + Override citeproc-hs's `endWithPunct`.
527− The new version correctly sees a sentence ending in '.)' as ending
528− with punctuation. This fixes a bug which led such sentences to receive
529− an extra period at the end: '.).'. Thanks to Steve Petersen for
530− reporting.
531− + Don't interfere with Notes that aren't citation notes.
532− This fixes a bug in which notes not generated from citations were
533− being altered (e.g. first letter capitalized) (#898).
534− + Only capitalize footnote citations when they have a prefix.
535− + Changes in suffix parsing. A suffix beginning with a digit gets 'p'
536− inserted before it before passing to citeproc-hs, so that bare numbers
537− are treated as page numbers by default. A suffix not beginning with
538− punctuation has a space added at the beginning (rather than a comma and
539− space, as was done before for not-author-in-text citations).
540− The result of these changes (and the last commit) is that
541− `\citep[23]{item1}` in LaTeX will be interpreted properly,
542− with '23' treated as a locator of type 'page'.
543−
544− * New module `Text.Pandoc.JSON` in pandoc-types.
545−
546− + This provides `ToJSON` and `FromJSON` instances for the basic
547− pandoc types. They use GHC generics and should be faster than the
548− old JSON serialization using `Data.Aeson.Generic`.
549−
550−
551− * Markdown reader
552−
553− + Properly handle blank line at beginning of input (#882).
554− + Fixed bug in unmatched reference links. The input
555− `[*infile*] [*outfile*]` was getting improperly parsed:
556− "infile" was emphasized, but "*outfile*" was literal (#883).
557− + Check for blank lines first in blocks. (And skip them. This
558− might speed things up in some cases.)
559− + Allow internal `+` in citation identifiers (#856).
560− + Allow `.` or `)` after `#` in ATX headers if no `fancy_lists`.
561− + Do not generate blank title, author, or date metadata elements.
562− Leave these out entirely if they aren't present.
563− + Allow backtick code blocks not to be preceded by blank line (#975).
564−
565− * Markdown reader
566−
567− + Added support for YAML metadata blocks, which can come anywhere
568− in the document (not just at the beginning). A document can contain
569− multiple YAML metadata blocks.
570− + HTML span and div tags are parsed as pandoc Span and Div elements.
571−
572−
573−
574−
575−
576− * `Text.Pandoc.PDF`
577−
578− + `makePDF` walks the pandoc AST and checks for the existence of
579− images in the local directory. If they are not found, it attempts
580− to find them, either in the directory containing the first source
581− file, or at an absolute URL, or at a URL relative to the base URL
582− of the first command line argument (#917).
583− + If compiling with `pdflatex` yields an encoding error, offer
584− the suggestion to use `--latex-engine=xelatex`.
585−
586−
587− * `Text.Pandoc.Parsing`
588−
589− + Generalized state type on `readWith` (API change).
590− + Specialize readWith to `String` input. (API change).
591− + In `ParserState`, replace `stateTitle`, `stateAuthors`, `stateDate`
592− with `stateMeta` and `stateMeta'`.
593−
594− * `Text.Pandoc.Options`
595− * Added `Ext_lists_without_preceding_blankline` to
596− `Extension` in `Options`. Added this option to
597− `githubMarkdownExtensions`.
598− + Implemented `Ext_ascii_identifiers`.
599− + Ext_ignore_line_breaks.
600− + Added `Ext_yaml_metadata_block`. (API change.)
601− + Added `Ext_ascii_identifiers`. (API change.)
602− This will force `Ext_auto_identifiers` to use ASCII only.
603− Set as default for github markdown.
604− + Changed `writerSourceDir` to `writerSourceURL` and changed
605− the type to a `Maybe`. Previously we used to store the directory
606− of the first input file, even if it was local, and used this as a
607− base directory for finding images in ODT, EPUB, Docx, and PDF.
608− This has been confusing to many users. It seems better to look for
609− images relative to the current working directory, even if the first
610− file argument is in another directory. `writerSourceURL` is set
611− to 'Just url' when the first command-line argument is an absolute
612− URL. (So, relative links will be resolved in relation to the first
613− page.) Otherwise, 'Nothing'. The ODT, EPUB, Docx, and PDF
614− writers have been modified accordingly. Note that this change may
615− break some existing workflows. If you have been assuming that
616− relative links will be interpreted relative to the directory of
617− the first file argument, you'll need to make that the current
618− directory before running pandoc. API change (#942).
619−
620−pandoc (1.11.1)
621−
622− * Markdown reader:
623−
624− + Fixed regression in which parentheses were lost in link URLs.
625− Added tests. Closes #786.
626− + Better handling of unmatched double quotes in `--smart` mode.
627− These occur frequently in fiction, since it is customary not to
628− close quotes in dialogue if the speaker does not change between
629− paragraphs. The unmatched quotes now get turned into literal
630− left double quotes. (No `Quoted` inline is generated, however.)
631− Closes #99 (again).
632−
633− * HTML writer: Fixed numbering mismatch between TOC and sections.
634− `--number-offset` now affects TOC numbering as well
635− as section numbering, as it should have all along. Closes #789.
636−
637− * Markdown writer: Reverted 1.11 change that caused citations to be rendered
638− as markdown citations, even if `--bibliography` was specified, unless
639− `citation` extension is disabled. Now, formatted citations are always
640− printed if `--bibliography` was specified. If you want to reformat
641− markdown keeping pandoc markdown citations intact, don't use
642− `--bibliography`. Note that citations parsed from LaTeX documents will
643− be rendered as pandoc markdown citations when `--bibliography` is not
644− specified.
645−
646− * ODT writer: Fixed regression leading to corrupt ODTs.
647− This was due to a change in the `Show` instance for
648− `Text.Pandoc.Pretty.Doc`. Closes #780.
649−
650− * Fixed spacing bugs involving code block attributes in
651− RST reader and Markdown writer. Closes #763.
652−
653− * Windows package: Various improvements due to Fyodor Sheremetyev.
654−
655− + Automatically set installation path (Program Files or Local App Data).
656− + Set system PATH environment variable when installing for all users.
657− + Pandoc can installed for all users using the following command.
658− `msiexec /i pandoc-1.11.msi ALLUSERS=1`.
659−
660− * Bumped QuickCheck version bound.
661−
662−pandoc (1.11)
663−
664− * Added `--number-offset` option. (See README for description.)
665−
666− * Added `--default-image-extension` option. (See README for description.)
667−
668− * `--number-sections` behavior change: headers with class `unnumbered`
669− will not be numbered.
670−
671− * `--version` now reports the default data directory.
672−
673− * `Text.Pandoc.Parsing` is no longer exposed. (API change.)
674−
675− * `Text.Pandoc.Highlighting` is no longer exposed. (API change.)
676−
677− * `Text.Pandoc.Shared`: Changed type of `Element`. `Sec` now includes
678− a field for `Attr` rather than just `String`. (API change.)
679−
680− * Added `markdown_github` as input format. This was an accidental
681− omission in 1.10.
682−
683− * Added `readerDefaultImageExtension` field to `ReaderOptions`. (API
684− change.)
685−
686− * Added `writerNumberOffset` field in `WriterOptions`. (API change.)
687−
688− * Beamer template:
689−
690− + Fixed captions with longtable. Thanks to Joost Kremers.
691− + Provide `\Oldincludegraphics` as in LaTeX template (Benjamin Bannier).
692−
693− * LaTeX template:
694−
695− + Load microtype after fonts. Microtype needs to know
696− what fonts are being used. Thanks to dfc for the patch.
697− + Set `secnumdepth` to 5 if `--number-sections` specified.
698− This yields behavior equivalent to the other writers, numbering
699− level 4 and 5 headers too. Closes #753.
700−
701− * HTML reader:
702−
703− + Handle `<colgroup>` tag.
704− + Preserve all header attributes.
705−
706− * LaTeX reader:
707−
708− + Parse `\hrule` as `HorizontalRule`. Closes #746.
709− + Parse starred variants of `\section` etc. as headers with
710− attribute `unnumbered`.
711− + Read optional attributes in `lstlisting` and `Verbatim` environments.
712− We convert these to pandoc standard names, e.g. `numberLines`
713− for `numbers=left`, `startFrom=100` from `firstnumber=100`.
714− + Handle language attribute for lstlistings.
715− + Better support for Verbatim and minted environments. Closes #763.
716−
717− * Markdown reader:
718−
719− + `-` in an attribute context = `.unnumbered`. The point of this
720− is to provide a way to specify unnumbered headers in non-English
721− documents.
722− + Fixed bug parsing key/value attributes. Parsing failed if you
723− had an unquoted attribute immediately before the final '}'.
724− + Make backslash escape work in attributes.
725− + Fix title block parsing. Now if `mmd_title_blocks` is specified,
726− pandoc will parse a MMD title block if it sees one, even if
727− `pandoc_title_blocks` is enabled.
728− + Refactoring: `litChar` now includes entities, so we don't need
729− to use `fromEntities` e.g. on titles.
730− + Allow spaces around borders in pipe tables. Closes #772.
731− + Allow all punctuation in angle-bracket autolinks. Previously
732− things like `----` were disallowed, because the uri parser
733− treated them as trailing punctuation. Closes #768.
734− + Make `implicit_header_references` work properly when
735− headers are given explicit identifiers.
736− + Check for tables before line blocks. Otherwise some pipe
737− tables get treated as line blocks.
738− + Allow `&` in emails (for entities).
739− + Properly handle entities in titles and links. A markdown link
740− `<http://göogle.com>` should be a link to `http://göogle.com`.
741− Closes #723.
742−
743− * Textile reader:
744−
745− + Handle attributes on headers.
746−
747− * LaTeX reader:
748−
749− + Add `fig:` as title for images with captions.
750− This is needed for them to be rendered as figures. Closes #766.
751− + Never emit an empty paragraph. See #761.
752− + Handle `\caption` for images in figures. Closes #766.
753− + Parse `\section*`, etc. as unnumbered sections.
754−
755− * HTML writer:
756−
757− + Support header attributes. The attributes go on
758− the enclosing `section` or `div` tag if `--section-divs` is specified.
759− + Fixed a regression (only now noticed) in html+lhs output.
760− Previously the bird tracks were being omitted.
761−
762− * LaTeX writer:
763−
764− + Omit lists with no items to avoid LaTeX errors.
765− + Support line numbering with `--listings`.
766− If `numberLines` class is present, we add `numbers=left`;
767− if `startFrom` is present, we add `firstnumber=`. (#763)
768−
769− * ConTeXt writer:
770−
771− + Removed `\placecontent`. This produced a duplicate toc,
772− in conjunction with `\placelist`.
773− + Use `\title`, `\subject` etc. for headers with
774− `unnumbered` class.
775−
776− * Textile writer:
777−
778− + Support header attributes.
779−
780− * Markdown writer:
781−
782− + Use grid tables when needed, and if enabled. Closes #740.
783− + Render citations as pandoc-markdown citations.
784− Previously citations were rendered as citeproc-formatted citations
785− by default. Now we render them as pandoc citations, e.g. `[@item1]`,
786− unless the `citations` extension is disabled.
787− If you still want formatted citations in your markdown output,
788− use `pandoc -t markdown-citations`.
789−
790− * RST writer:
791−
792− + Support `:number-lines:` in code blocks.
793−
794− * Docx writer:
795−
796− + Better treatment of display math. Display math inside a
797− paragraph is now put in a separate paragraph, so it will render
798− properly (centered and without extra blank lines around it).
799− Partially addresses #742.
800− + Content types and document rels xml files are now created from
801− scratch, rather than being taken over from `reference.docx`.
802− This fixes problems that arise when you edit the `reference.docx`
803− with Word.
804− + We also now encode mime types for each individual image rather
805− than using defaults. This should allow us to handle a wider
806− range of image types (including PDF). Closes #414.
807− + Changed style names in `reference docx`.
808− `FootnoteReference` -> `FootnoteRef`, `Hyperlink` -> `Link`.
809− The old names got changed by Word when the `reference.docx` was
810− edited. Closes #414.
811−
812− * EPUB writer:
813−
814− + Fix section numbering. Previously the numbering restarted from 1
815− in each chapter (with `--number-sections`), though the numbers in
816− the table of contents were correct.
817− + Headers with "unnumbered" attribute are not numbered. (Nor do they
818− cause an increment in running numbering.) Section numbers now work
819− properly, even when there is material before the first numbered section.
820− + Include HTML TOC, even in epub2. The TOC is included in `<spine>`,
821− but `linear` is set to `no` unless the `--toc` option is specified.
822− Include `<guide>` element in OPF. This should allow the TOC to
823− be useable in Kindles when converted with kindlegen. Closes #773.
824−
825− * `Text.Pandoc.Parsing`: Optimized `oneOfStringsCI`.
826− This dramatically reduces the speed penalty that comes from enabling the
827− `autolink_bare_uris` extension. The penalty is still substantial (in one
828− test, from 0.33s to 0.44s), but nowhere near what it used to be.
829− The RST reader is also much faster now, as it autodetects URIs.
830−
831− * `Text.Pandoc.Shared`: `hierarchicalize` will not number section
832− with class "unnumbered". Unnumbered sections get `[]` for their
833− section number.
834−
835− * `Text.Pandoc.Pretty`:
836−
837− + Fixed `chomp` so it works inside `Prefixed` elements.
838− + Changed `Show` instance so it is better for debugging.
839−
840− * `Text.Pandoc.ImageSize`: Added `Pdf` to `ImageType`.
841−
842− * `Text.Pandoc.UTF8`: Strip off BOM if present. Closes #743.
843−
844− * Windows installer improvements:
845−
846− + The installer is now signed with a certificate (thanks to
847− Fyodor Sheremetyev).
848− + WiX is used instead of InnoSetup. The installer is now a
849− standard msi file.
850− + The version number is now auto-detected, and need not be
851− updated separately.
852−
853− * OSX installer improvements:
854−
855− + The package and pandoc executable are now signed with a
856− certificate (thanks to Fyodor Sheremetyev).
857− + RTF version of license is used.
858− + Use full path for sysctl in `InstallationCheck` script (jonahbull).
859− Closes #580.
860−
861− * Converted COPYING to markdown.
862−
863− * pandoc.cabal: Require latest versions of highlighting-kate,
864− texmath, citeproc-hs, zip-archive.
865−
866−pandoc (1.10.1)
867−
868− * Markdown reader: various optimizations, leading to a
869− significant performance boost.
870−
871− * RST reader: Allow anonymous form of inline links:
872− `` `hello <url>`__ `` Closes #724.
873−
874− * Mediawiki reader: Don't require newlines after tables.
875− Thanks to jrunningen for the patch. Closes #733.
876−
877− * Fixed LaTeX macro parsing. Now LaTeX macro definitions are preserved
878− when output is LaTeX, and applied when it is another format.
879− Partially addresses #730.
880−
881− * Markdown and RST readers: Added parser to `block` that skips blank
882− lines. This fixes a subtle regression involving grid tables with
883− empty cells. Also added test for grid table with empty cells.
884− Closes #732.
885−
886− * RST writer: Use `.. code:: language` for code blocks with language.
887− Closes #721.
888−
889− * DocBook writer: Fixed output for hard line breaks, adding a newline
890− between `<literallayout>` tags.
891−
892− * Markdown writer: Use an autolink when link text matches url.
893− Previously we also checked for a null title, but this
894− test fails for links produced by citeproc-hs in bibliographies.
895− So, if the link has a title, it will be lost on conversion
896− to an autolink, but that seems okay.
897−
898− * Markdown writer: Set title, author, date variables as before.
899− These are no longer used in the default template, since we use
900− titleblock, but we set them anyway for those who use custom templates.
901−
902− * LaTeX writer: Avoid extra space at start/end of table cell.
903− Thanks to Nick Bart for the suggestion of using @{}.
904−
905− * `Text.Pandoc.Parsing`:
906−
907− + More efficient version of `anyLine`.
908− + Type of `macro` has changed; the parser now returns `Blocks`
909− instead of `Block`.
910−
911− * Relaxed old-time version bound, allowing 1.0.*.
912−
913− * Removed obsolete `hsmarkdown` script. Those who need `hsmarkdown`
914− should create a symlink as described in the README.
915−
916−pandoc (1.10.0.5)
917−
918− * Markdown reader: Try `lhsCodeBlock` before `rawTeXBlock`. Otherwise
919− `\begin{code}...\end{code}` isn't handled properly in markdown+lhs.
920− Thanks to Daniel Miot for noticing the bug and suggesting the fix.
921−
922− * Markdown reader: Fixed bug with headerless grid tables.
923− The 1.10 code assumed that each table header cell contains exactly one
924− block. That failed for headerless tables (0) and also for tables with
925− multiple blocks in a header cell. The code is fixed and tests provided.
926− Thanks to Andrew Lee for pointing out the bug.
927−
928− * Markdown reader: Fixed regressions in fenced code blocks. Closes #722.
929−
930− + Tilde code fences can again take a bare language string
931− (`~~~ haskell`), not just curly-bracketed attributes
932− (`~~~ {.haskell}`).
933− + Backtick code blocks can take the curly-bracketed attributes.
934− + Backtick code blocks don't *require* a language.
935− + Consolidated code for the two kinds of fenced code blocks.
936−
937− * LaTeX template: Use `\urlstyle{same}` to avoid monospace URLs.
938−
939− * Markdown writer: Use proportional font for email autolinks with
940− obfuscation. Closes #714.
941−
942− * Corrected name of `blank_before_blockquote` in README. Closes #718.
943−
944− * `Text.Pandoc.Shared`: Fixed bug in `uri` parser.
945− The bug prevented an autolink at the end of a string (e.g.
946− at the end of a line block line) from counting as a link. Closes #711.
947−
948− * Use the `hsb2hs` preprocessor instead of TH for embed_data_files.
949− This should work on Windows, unlike the TH solution with
950− file-embed.
951−
952− * Eliminated use of TH in test suite.
953−
954− * Added `Text.Pandoc.Data` (non-exported) to hold the association
955− list of embedded data files, if the `embed_data_files` flag is selected.
956− This isolates the code that needs special treatment with file-embed or
957− `hsb2hs`.
958−
959− * Changes to `make-windows-installer.bat`.
960−
961− + Exit batch file if any of the cabal-dev installs fail.
962− + There's no longer any need to reinstall `highlighting-kate`.
963− + Don't start with a `cabal update`; leave that to the user.
964− + Force reinstall of pandoc.
965−
966− * Fixed EPUB writer so it builds with blaze-html 0.4.x. Thanks to
967− Jens Petersen.
968−
969−pandoc (1.10.0.4)
970−
971− * Fixed bug with escaped % in LaTeX reader. Closes #710.
972−
973−pandoc (1.10.0.3)
974−
975− * Added further missing fb2 tests to cabal file.
976−
977−pandoc (1.10.0.2)
978−
979− * Added fb2 tests to cabal file's extra-source-files.
980−
981−pandoc (1.10.0.1)
982−
983− * Bump version bounds on test-framework packages.
984−
985−pandoc (1.10)
986−
987− [new features]
988−
989− * New input formats: `mediawiki` (MediaWiki markup).
990−
991− * New output formats: `epub3` (EPUB v3 with MathML),
992− `fb2` (FictionBook2 ebooks).
993−
994− * New `--toc-depth` option, specifying how many levels of
995− headers to include in a table of contents.
996−
997− * New `--epub-chapter-level` option, specifying the header
998− level at which to divide EPUBs into separate files.
999− Note that this normally affects only performance, not the
1000− visual presentation of the EPUB in a reader.
1001−
1002− * Removed the `--strict` option. Instead of using `--strict`,
1003− one can now use the format name `markdown_strict` for either input
1004− or output. This gives more fine-grained control that `--strict`
1005− did, allowing one to convert from pandoc's markdown to strict
1006− markdown or vice versa.
1007−
1008− * It is now possible to enable or disable specific syntax
1009− extensions by appending them (with `+` or `-`) to the writer
1010− or reader name. For example,
1011−
1012− pandoc -f markdown-footnotes+hard_line_breaks
1013−
1014− disables footnotes and enables treating newlines as hard
1015− line breaks. The literate Haskell extensions are now implemented
1016− this way as well, using either `+lhs` or `+literate_haskell`.
1017− For a list of extension names, see the README under
1018− "Pandoc's Markdown."
1019−
1020− * The following aliases have been introduced for specific
1021− combinations of markdown extensions: `markdown_phpextra`,
1022− `markdown_github`, `markdown_mmd`, `markdown_strict`. These aliases
1023− work just like regular reader and writer names, and can be modified
1024− with extension modifiers as described above. (Note that conversion
1025− from one markdown dialect to another does not work perfectly,
1026− because there are differences in markdown parsers besides
1027− just the extensions, and because pandoc's internal document model is
1028− not rich enough to capture all of the extensions.)
1029−
1030− * New `--html-q-tags` option. The previous default was to use `<q>`
1031− tags for smart quotes in HTML5. But `<q>` tags are also valid HTML4.
1032− Moreover, they are not a robust way of typesetting quotes, since
1033− some user agents don't support them, and some CSS resets (e.g.
1034− bootstrap) prevent pandoc's quotes CSS from working properly.
1035− We now just insert literal quote characters by default in both
1036− `html` and `html5` output, but this option is provided for
1037− those who still want `<q>` tags.
1038−
1039− * The markdown reader now prints warnings (to stderr) about
1040− duplicate link and note references. Closes #375.
1041−
1042− * Markdown syntax extensions:
1043−
1044− + Added pipe tables. Thanks to François Gannaz for the initial patch.
1045− These conform to PHP Markdown Extra's pipe table syntax. A subset
1046− of org-mode table syntax is also supported, which means that you can
1047− use org-mode's nice table editor to create tables.
1048−
1049− + Added support for RST-style line blocks. These are
1050− useful for verse and addresses.
1051−
1052− + Attributes can now be specified for headers, using the same
1053− syntax as in code blocks. (However, currently only the
1054− identifier has any effect in most writers.) For example,
1055−
1056− # My header {#foo}
1057−
1058− See [the header above](#foo).
1059−
1060− + Pandoc will now act as if link references have been defined
1061− for all headers without explicit identifiers.
1062− So, you can do this:
1063−
1064− # My header
1065−
1066− Link to [My header].
1067− Another link to [it][My header].
1068−
1069− Closes #691.
1070−
1071− * LaTeX reader:
1072−
1073− + Command macros now work everywhere, including non-math.
1074− Environment macros still not supported.
1075− + `\input` now works, as well as `\include`. TEXINPUTS is used.
1076− Pandoc looks recursively into included files for more included files.
1077−
1078− [behavior changes]
1079−
1080− * The Markdown reader no longer puts the text of autolinks in a
1081− `Code` inline. This means that autolinks will no longer appear
1082− in a monospace font.
1083−
1084− * The character `/` can now appear in markdown citation keys.
1085−
1086− * HTML blocks in strict_markdown are no longer required to begin
1087− at the left margin. Technically this is required, according to
1088− the markdown syntax document, but `Markdown.pl` and other markdown
1089− processors are more liberal.
1090−
1091− * The `-V` option has been changed so that if there are duplicate
1092− variables, those specified later on the command line take precedence.
1093−
1094− * Tight lists now work in LaTeX and ConTeXt output.
1095−
1096− * The LaTeX writer no longer relien on the `enumerate` package.
1097− Instead, it uses standard LaTeX commands to change the list numbering
1098− style.
1099−
1100− * The LaTeX writer now uses `longtable` instead of `ctable`. This allows
1101− tables to be split over page boundaries.
1102−
1103− * The RST writer now uses a line block to render paragraphs containing
1104− linebreaks (which previously weren't supported at all).
1105−
1106− * The markdown writer now applies the `--id-prefix` to footnote IDs.
1107− Closes #614.
1108−
1109− * The plain writer no longer uses backslash-escaped line breaks
1110− (which are not very "plain").
1111−
1112− * `Text.Pandoc.UTF8`: Better error message for invalid UTF8.
1113− Read bytestring and use `Text`'s decodeUtf8 instead of using
1114− `System.IO.hGetContents`. This way you get a message saying
1115− "invalid UTF-8 stream" instead of "invalid byte sequence."
1116− You are also told which byte caused the problem.
1117−
1118− * Docx, ODT, and EPUB writers now download images specified by a URL
1119− instead of skipping them or raising an error.
1120−
1121− * EPUB writer:
1122−
1123− + The default CSS now left-aligns headers by default, instead of
1124− centering. This is more consistent with the rest of the writers.
1125− + A proper multi-level table of contents is now used in `toc.ncx`.
1126− There is no longer a subsidiary table of contents at the beginning
1127− of each chapter.
1128− + Code highlighting now works by default.
1129− + Section divs are used by default for better semantic markup.
1130− + The title is used instead of "Title Page" in the table of contents.
1131− Otherwise we have a hard-coded English string, which looks
1132− strange in ebooks written in other languages. Closes #572.
1133−
1134− * HTML writer:
1135−
1136− + Put mathjax in span with class "math". Closes #562.
1137− + Put citations in a span with class "citation." In HTML5, also include
1138− a `data-cite` attribute with a space-separated list of citation
1139− keys.
1140−
1141− * `Text.Pandoc.UTF8`: use universalNewlineMode in reading.
1142− This treats both `\r\n` and `\n` as `\n` on input, no matter
1143− what platform we're running on.
1144−
1145− * Citation processing is now done in the Markdown and LaTeX
1146− readers, not in `pandoc.hs`. This makes it easier for library users
1147− to use citations.
1148−
1149− [template changes]
1150−
1151− * HTML: Added css to template to preserve spaces in `<code>` tags.
1152− Thanks to Dirk Laurie.
1153−
1154− * Beamer: Remove English-centric strings in section pages.
1155− Section pages used to have "Section" and a number as well as the
1156− section title. Now they just have the title. Similarly for part
1157− and subsection. Closes #566.
1158−
1159− * LaTeX, ConTeXt: Added papersize variable.
1160−
1161− * LaTeX, Beamer templates: Use longtable instead of ctable.
1162−
1163− * LaTeX, Beamer templates: Don't require 'float' package for tables.
1164− We don't actually seem to use the '[H]' option.
1165−
1166− * LaTeX: Use `upquote` package if it is available. This fixes
1167− straight quotes in verbatim environments.
1168−
1169− * Markdown, plain: Fixed titleblock so it is just a single string.
1170− Previously separate title, author, and date variables were used,
1171− but this didn't allow different kinds of title blocks.
1172−
1173− * EPUB:
1174−
1175− + Rationalized templates. Previously there were three different
1176− templates involved in epub production. There is now just one
1177− template, `default.epub` or `default.epub3`. It can now be
1178− overridden using `--template`, just like other templates.
1179− The titlepage is now folded into the default template.
1180− A `titlepage` variable selects it.
1181− + UTF-8, lang tag, meta tags, title element.
1182−
1183− * Added scale-to-width feature to beamer template
1184−
1185− [API changes]
1186−
1187− * `Text.Pandoc.Definition`: Added `Attr` field to `Header`.
1188− Previously header identifers were autogenerated by the writers.
1189− Now they are added in the readers (either automatically or explicitly).
1190−
1191− * `Text.Pandoc.Builder`:
1192−
1193− + `Inlines` and `Blocks` are now synonyms for `Many Inline` and
1194− `Many Block`. `Many` is a newtype wrapper around `Seq`, with
1195− custom Monoid instances for `Many Inline` and `Many Block. This
1196− allows `Many` to be made an instance of `Foldable` and `Traversable`.
1197− + The old `Listable` class has been removed.
1198− + The module now exports `isNull`, `toList`, `fromList`.
1199− + The old `Read` and `Show` instances have been removed; derived
1200− instances are now used.
1201− + Added `headerWith`.
1202−
1203− * The readers now take a `ReaderOptions` rather than a `ParserState`
1204− as a parameter. Indeed, not all parsers use the `ParserState` type;
1205− some have a custom state. The motivation for this change was to separate
1206− user-specifiable options from the accounting functions of parser state.
1207−
1208− * New module `Text.Pandoc.Options`. This includes the `WriterOptions`
1209− formerly in `Text.Pandoc.Shared`, and its associated
1210− data types. It also includes a new type `ReaderOptions`, which
1211− contains many options formerly in `ParserState`, and its associated
1212− data types:
1213−
1214− + `ParserState.stateParseRaw` -> `ReaderOptions.readerParseRaw`.
1215− + `ParserState.stateColumns` -> `ReaderOptions.readerColumns`.
1216− + `ParserState.stateTabStop` -> `ReaderOptions.readerTabStop`.
1217− + `ParserState.stateOldDashes` -> `ReaderOptions.readerOldDashes`.
1218− + `ParserState.stateLiterateHaskell` -> `ReaderOptions.readerLiterateHaskell`.
1219− + `ParserState.stateCitations` -> `ReaderOptions.readerReferences`.
1220− + `ParserState.stateApplyMacros` -> `ReaderOptions.readerApplyMacros`.
1221− + `ParserState.stateIndentedCodeClasses` ->
1222− `ReaderOptions.readerIndentedCodeClasses`.
1223− + Added `ReaderOptions.readerCitationStyle`.
1224−
1225− * `WriterOptions` now includes `writerEpubVersion`, `writerEpubChapterLevel`,
1226− `writerEpubStylesheet`, `writerEpubFonts`, `writerReferenceODT`,
1227− `writerReferenceDocx`, and `writerTOCDepth`. `writerEPUBMetadata` has
1228− been renamed `writerEpubMetadata` for consistency.
1229−
1230− * Changed signatures of `writeODT`, `writeDocx`, `writeEPUB`, since they no
1231− longer stylesheet, fonts, reference files as separate parameters.
1232−
1233− * Removed `writerLiterateHaskell` from `WriterOptions`, and
1234− `readerLiterateHaskell` from `ReaderOptions`. LHS is now handled
1235− by an extension (`Ext_literate_haskell`).
1236−
1237− * Removed deprecated `writerXeTeX`.
1238−
1239− * Removed `writerStrict` from `WriterOptions`. Added `writerExtensions`.
1240− Strict is now handled through extensions.
1241−
1242− * `Text.Pandoc.Options` exports `pandocExtensions`, `strictExtensions`,
1243− `phpMarkdownExtraExtensions`, `githubMarkdownExtensions`,
1244− and `multimarkdownExtensions`, as well as the `Extensions` type.
1245−
1246− * New `Text.Pandoc.Readers.MediaWiki` module, exporting
1247− `readMediaWiki`.
1248−
1249− * New `Text.Pandoc.Writers.FB2` module, exporting `writeFB2`
1250− (thanks to Sergey Astanin).
1251−
1252− * `Text.Pandoc`:
1253−
1254− + Added `getReader`, `getWriter` to `Text.Pandoc`.
1255− + `writers` is now an association list `(String, Writer)`.
1256− A `Writer` can be a `PureStringWriter`, an `IOStringWriter`, or
1257− an `IOByteStringWriter`. ALL writers are now in the 'writers'
1258− list, including the binary writers and FB2 writer. This allows
1259− code in `pandoc.hs` to be simplified.
1260− + Changed type of `readers`, so all readers are in IO.
1261− Users who want pure readers can still get them form the reader
1262− modules; this just affects the function `getReader` that looks up
1263− a reader based on the format name. The point of this change is to
1264− make it possible to print warnings from the parser.
1265−
1266− * `Text.Pandoc.Parsing`:
1267−
1268− + `Text.Parsec` now exports all Parsec functions used in pandoc code.
1269− No other module directly imports Parsec. This will make it easier
1270− to change the parsing backend in the future, if we want to.
1271− + `Text.Parsec` is used instead of `Text.ParserCombinators.Parsec`.
1272− + Export the type synonym `Parser`.
1273− + Export `widthsFromIndices`, `NoteTable'`, `KeyTable'`, `Key'`, `toKey'`,
1274− `withQuoteContext`, `singleQuoteStart`, `singleQuoteEnd`,
1275− `doubleQuoteStart`, `doubleQuoteEnd`, `ellipses`, `apostrophe`,
1276− `dash`, `nested`, `F(..)`, `askF`, `asksF`, `runF`, `lineBlockLines`.
1277− + `ParserState` is no longer an instance of `Show`.
1278− + Added `stateSubstitutions` and `stateWarnings` to `ParserState`.
1279− + Generalized type of `withQuoteContext`.
1280− + Added `guardEnabled`, `guardDisabled`, `getOption`.
1281− + Removed `failIfStrict`.
1282− + `lookupKeySrc` and `fromKey` are no longer exported.
1283−
1284− * `Data.Default` instances are now provided for `ReaderOptions`,
1285− `WriterOptions`, and `ParserState`. `Text.Pandoc` re-exports `def`.
1286− Now you can use `def` (which is re-exported by `Text.Pandoc`) instead
1287− of `defaultWriterOptions` (which is still defined). Closes #546.
1288−
1289− * `Text.Pandoc.Shared`:
1290−
1291− + Added `safeRead`.
1292− + Renamed `removedLeadingTrailingSpace` to `trim`,
1293− `removeLeadingSpace` to `triml`, and `removeTrailingSpace` to `trimr`.
1294− + Count `\r` as space in `trim` functions.
1295− + Moved `renderTags'` from HTML reader and `Text.Pandoc.SelfContained`
1296− to `Shared`.
1297− + Removed `failUnlessLHS`.
1298− + Export `compactify'`, formerly in Markdown reader.
1299− + Export `isTightList`.
1300− + Do not export `findDataFile`.
1301− + `readDataFile` now returns a strict ByteString.
1302− + Export `readDataFileUTF8` which returns a String, like the
1303− old `readDataFile`.
1304− + Export `fetchItem` and `openURL`.
1305−
1306− * `Text.Pandoc.ImageSize`: Use strict, not lazy bytestrings.
1307− Removed `readImageSize`.
1308−
1309− * `Text.Pandoc.UTF8`: Export `encodePath`, `decodePath`,
1310− `decodeArg`, `toString`, `fromString`, `toStringLazy`,
1311− `fromStringLazy`.
1312−
1313− * `Text.Pandoc.UTF8` is now an exposed module.
1314−
1315− * `Text.Pandoc.Biblio`:
1316−
1317− + csl parameter now a `String` rather than a `FilePath`.
1318− + Changed type of `processBiblio`. It is no longer in the IO monad.
1319− It now takes a `Maybe Style` argument rather than parameters for CSL
1320− and abbrev filenames. (`pandoc.hs` now calls the functions to parse
1321− the style file and add abbreviations.)
1322−
1323− * Markdown reader now exports `readMarkdownWithWarnings`.
1324−
1325− * `Text.Pandoc.RTF` now exports `writeRTFWithEmbeddedImages` instead of
1326− `rtfEmbedImage`.
1327−
1328− [bug fixes]
1329−
1330− * Make `--ascii` work properly with `--self-contained`. Closes #568.
1331−
1332− * Markdown reader:
1333−
1334− + Fixed link parser to avoid exponential slowdowns. Closes #620.
1335− Previously the parser would hang on input like this:
1336−
1337− [[[[[[[[[[[[[[[[[[hi
1338−
1339− We fixed this by making the link parser parser characters
1340− between balanced brackets (skipping brackets in inline code spans),
1341− then parsing the result as an inline list. One change is that
1342−
1343− [hi *there]* bud](/url)
1344−
1345− is now no longer parsed as a link. But in this respect pandoc behaved
1346− differently from most other implementations anyway, so that seems okay.
1347−
1348− + Look for raw html/latex blocks before tables.
1349− Otherwise the following gets parsed as a table:
1350−
1351− \begin{code}
1352− --------------
1353− -- My comment.
1354− \end{code}
1355−
1356− Closes #578.
1357−
1358− * RST reader:
1359−
1360− + Added support for `:target:` on `.. image::` blocks
1361− and substitutions.
1362− + Field list fixes:
1363−
1364− - Fixed field lists items with body beginning after a new line
1365− (Denis Laxalde).
1366− - Allow any char but ':' in names of field lists in RST reader
1367− (Denis Laxalde).
1368− - Don't allow line breaks in field names.
1369− - Require whitespace after field list field names.
1370− - Don't create empty definition list for metadata field lists.
1371− Previously a field list consisting only of metadata fields (author,
1372− title, date) would be parsed as an empty DefinitionList, which is
1373− not legal in LaTeX and not needed in any format.
1374−
1375− + Don't recognize inline-markup starts inside words.
1376− For example, `2*2 = 4*1` should not contain an emphasized
1377− section. Added test case for "Literal symbols". Closes #569.
1378− + Allow dashes as separator in simple tables. Closes #555.
1379− + Added support for `container`, `compound`, `epigraph`,
1380− `rubric`, `highlights`, `pull-quote`.
1381− + Added support for `.. code::`.
1382− + Made directive labels case-insensitive.
1383− + Removed requirement that directives begin at left margin.
1384− This was (correctly) not in earlier releases; docutils doesn't
1385− make the requirement.
1386− + Added support for `replace::` and `unicode::` substitutions.
1387− + Ignore unknown interpreted roles.
1388− + Renamed image parser to `subst`, since it now handles all
1389− substitution references.
1390−
1391− * Textile reader:
1392−
1393− + Allow newlines before pipes in table. Closes #654.
1394− + Fixed bug with list items containing line breaks.
1395− Now pandoc correctly handles hard line breaks inside list items.
1396− Previously they broke list parsing.
1397− + Implemented comment blocks.
1398− + Fixed bug affected words ending in hyphen.
1399− + Properly handle links with surrounding brackets.
1400− Square brackets need to be used when the link isn't surrounded by
1401− spaces or punctuation, or when the URL ending may be ambiguous.
1402− Closes #564.
1403− + Removed nullBlock. Better to know about parsing problems than
1404− to skip stuff when we get stuck.
1405− + Allow ID attributes on headers.
1406− + Textile reader: Avoid parsing dashes as strikeout.
1407− Previously the input
1408−
1409− text--
1410− text--
1411− text--
1412− text--
1413−
1414− would be parsed with strikeouts rather than dashes. This fixes
1415− the problem by requiring that a strikeout delimiting - not be
1416− followed by a -. Closes #631.
1417− + Expanded list of `stringBreakers`.
1418− This fixes a bug on input like "(_hello_)" which should
1419− be a parenthesized emphasized "hello".
1420− The new list is taken from the PHP source of textile 2.4.
1421− + Fixed autolinks. Previously the textile reader and writer
1422− incorrectly implented RST-style autolinks for URLs and email
1423− addresses. This has been fixed. Now an autolink is done this way:
1424− `"$":http://myurl.com`.
1425− + Fixed footnotes bug in textile. This affected notes occuring
1426− before punctuation, e.g. `foo[1].`. Closes #518.
1427−
1428− * LaTeX reader:
1429−
1430− + Better handling of citation commands.
1431− + Better handling of `\noindent`.
1432− + Added a 'try' in rawLaTeXBlock, so we can handle `\begin` without `{`.
1433− Closes #622.
1434− + Made `rawLaTeXInline` try to parse block commands as well. This
1435− is usually what we want, given how `rawLaTeXInline` is used in
1436− the markdown and textile readers. If a block-level LaTeX command
1437− is used in the middle of a paragraph (e.g. `\subtitle` inside a title),
1438− we can treat it as raw inline LaTeX.
1439− + Handle \slash command. Closes #605.
1440− + Basic `\enquote` support.
1441− + Fixed parsing of paragraphs beginning with a group. Closes #606.
1442− + Use curly quotes for bare straight quotes.
1443− + Support obeylines environment. Closes #604.
1444− + Guard against "begin", "end" in inlineCommand and
1445− blockCommand.
1446− + Better error messages for environments. Now it should tell you that
1447− it was looking for \end{env}, instead of giving "unknown parse error."
1448−
1449− * HTML reader:
1450−
1451− + Added HTML 5 tags to list of block-level tags.
1452− + HTML reader: Fixed bug in `htmlBalanced`, which
1453− caused hangs in parsing certain markdown input using
1454− strict mode.
1455− + Parse `<q>` as `Quoted DoubleQuote`.
1456− + Handle nested `<q>` tags properly.
1457− + Modified `htmlTag` for fewer false positives.
1458− A tag must start with `<` followed by `!`,`?`, `/`, or a letter.
1459− This makes it more useful in the wikimedia and markdown parsers.
1460−
1461− * DocBook reader: Support title in "figure" element. Closes #650.
1462−
1463− * MediaWiki writer:
1464−
1465− + Remove newline after `<br/>` in translation of `LineBreak`
1466− There's no particular need for a newline (other than making the
1467− generated MediaWiki source look nice to a human), and in fact
1468− sometimes it is incorrect: in particular, inside an enumeration, list
1469− items cannot have embedded newline characters. (Brent Yorgey)
1470− + Use `<code>` not `<tt>` for Code.
1471−
1472− * Man writer: Escape `-` as `\-`.
1473− Unescaped `-`'s become hyphens, while `\-`'s are left as ascii minus
1474− signs. That is preferable for use with command-line options. See
1475− <http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html>. Thanks
1476− to Andrea Bolognani for bringing the issue to our attention.
1477−
1478− * RST writer:
1479−
1480− + Improved line block output. Use nonbreaking spaces for
1481− initial indent (otherwise lost in HTML and LaTeX).
1482− Allow multiple paragraphs in a single line block.
1483− Allow soft breaks w continuations in line blocks.
1484− + Properly handle images with no alt text. Closes #678.
1485− + Fixed bug with links with duplicate text. We now (a) use anonymous
1486− links for links with inline URLs, and (b) use an inline link instead
1487− of a reference link if the reference link would require a label that
1488− has already been used for a different link. Closes #511.
1489− + Fixed hyperlinked images. Closes #611. Use `:target:`
1490− field when you have a simple linked image.
1491− + Don't add `:align: center` to figures.
1492−
1493− * Texinfo writer: Fixed internal cross-references.
1494− Now we insert anchors after each header, and use `@ref` instead of `@uref`
1495− for links. Commas are now escaped as `@comma{}` only when needed;
1496− previously all commas were escaped. (This change is needed, in part,
1497− because `@ref` commands must be followed by a real comma or period.) Also
1498− insert a blank line in from of `@verbatim` environments.
1499−
1500− * DocBook writer:
1501−
1502− + Made --id-prefix work in DocBook as well as HTML.
1503− Closes #607.
1504− + Don't include empty captions in figures. Closes #581.
1505−
1506− * LaTeX writer:
1507−
1508− + Use `\hspace*` for nonbreaking space after line break,
1509− since `~` spaces after a line break are just ignored.
1510− Closes #687.
1511− + Don't escape `_` in URLs or hyperref identifiers.
1512− + Properly escape strings inside \url{}. Closes #576.
1513− + Use `[fragile]` only for slides containing code rendered
1514− using listings. Closes #649.
1515− + Escape `|` as `\vert` in LaTeX math. This avoids a clash with
1516− highlighting-kate's macros, which redefine `|` as a short verbatim
1517− delimiter. Thanks to Björn Peemöller for raising this issue.
1518− + Use minipage rather than parbox for block containers in tables.
1519− This allows verbatim code to be included in grid tables.
1520− Closes #663.
1521− + Prevent paragraphs containing only linebreaks or spaces.
1522−
1523− * HTML writer:
1524−
1525− + Included `highlighting-css` for code spans, too.
1526− Previously it was only included if used in a code block. Closes #653.
1527− + Improved line breaks with `<dd>` tags. We now put a newline between
1528− `</dd>` and `<dd>` when there are multiple definitions.
1529− + Changed mathjax cdn url so it doesn't use https. (This caused
1530− problems when used with `--self-contained`.) See #609.
1531−
1532− * EPUB writer:
1533−
1534− + `--number-sections` now works properly.
1535− + Don't strip meta and link elements in epub metadata.
1536− Patch from aberrancy. Closes #589.
1537− + Fixed a couple validation bugs.
1538− + Use ch001, ch002, etc. for chapter filenames. This improves sorting
1539− of chapters in some readers, which apparently sort ch2 after ch10.
1540− Closes #610.
1541−
1542− * ODT writer: properly set title property (Arlo O'Keeffe).
1543−
1544− * Docx writer:
1545−
1546− + Fixed bug with nested lists. Previously a list like
1547−
1548− 1. one
1549− - a
1550− - b
1551− 2. two
1552−
1553− would come out with a bullet instead of "2."
1554− Thanks to Russell Allen for reporting the bug.
1555− + Use `w:cr` in `w:r` instead of `w:br` for linebreaks.
1556− This seems to fix a problem viewing pandoc-generated
1557− docx files in LibreOffice.
1558− + Use integer ids for bookmarks. Closes #626.
1559− + Added nsid to abstractNum elements. This helps when merging
1560− word documents with numbered or bulleted lists. Closes #627.
1561− + Use separate footnotes.xml for notes.
1562− This seems to help LibreOffice convert the file, even though
1563− it was valid docx before. Closes #637.
1564− + Use rIdNN identifiers for r:embed in images.
1565− + Avoid reading image files again when we've already processed them.
1566− + Fixed typo in `referenc.docx` that prevented image captions from
1567− working. Thanks to Huashan Chen.
1568−
1569− * `Text.Pandoc.Parsing`:
1570−
1571− + Fixed bug in `withRaw`, which didn't correctly handle the case
1572− where nothing is parsed.
1573− + Made `emailAddress` parser more correct. Now it is based on RFC 822,
1574− though it still doesn't implement quoted strings in email addresses.
1575− + Revised URI parser. It now allows many more schemes, allows
1576− uppercase URIs, and better handles trailing punctuation and
1577− trailing slashes in bare URIs. Added many tests.
1578− + Simplified and improved singleQuoteStart. This makes `'s'`, `'l'`,
1579− etc. parse properly. Formerly we had some English-centric heuristics,
1580− but they are no longer needed. Closes #698.
1581−
1582− * `Text.Pandoc.Pretty`: Added wide punctuation range to `charWidth`.
1583− This fixes bug with Chinese commas in markdown and reST tables, and
1584− a bug that caused combining characters to be dropped.
1585−
1586− * `Text.Pandoc.MIME`: Added MIME types for .wof and .eot. Closes #640.
1587−
1588− * `Text.Pandoc.Biblio`:
1589−
1590− + Run `mvPunc` and `deNote` on metadata too.
1591− This fixed a bug with notes on titles using footnote styles.
1592− + Fixed bug in fetching CSL files from CSL data directory.
1593−
1594− * `pandoc.hs`: Give correct value to `writerSourceDirectory` when a URL
1595− is provided. It should be the URL up to the path.
1596−
1597− * Fixed/simplified diff output for tests.
1598− Biblio: Make sure mvPunc and deNote run on metadata too.
1599− This fixed a bug with notes on titles using footnote styles.
1600−
1601− [under the hood improvements]
1602−
1603− * We no longer depend on `utf8-string`. Instead we use functions
1604− defined in `Text.Pandoc.UTF8` that use `Data.Text`'s conversions.
1605−
1606− * Use `safeRead` instead of using `reads` directly (various modules).
1607−
1608− * "Implicit figures" (images alone in a paragraph) are now handled
1609− differently. The markdown reader gives their titles the prefix `fig:`; the
1610− writers look for this before treating the image as a figure. Though this
1611− is a bit of a hack, it has two advantages: (i) implicit figures can be
1612− limited to the markdown reader, and (ii) they can be deactivated by turning
1613− off the `implicit_figures` extension.
1614−
1615− * `catch` from `Control.Exception` is now used instead of the
1616− old Preface `catch`.
1617−
1618− * `Text.Pandoc.Shared`: Improved algorithm for `normalizeSpaces`
1619− and `oneOfStrings` (which is now non-backtracking).
1620−
1621− * `Text.Pandoc.Biblio`: Remove workaround for `toCapital`.
1622− Now citeproc-hs is fixed upstream, so this is no longer needed.
1623− Closes #531.
1624−
1625− * Textile reader: Improved speed of `hyphenedWords`.
1626− This speeds up the textile reader by about a factor of 4.
1627−
1628− * Use `Text.Pandoc.Builder` in RST reader, for more flexibility,
1629− better performance, and automatic normalization.
1630−
1631− * Major rewrite of markdown reader:
1632−
1633− + Use `Text.Pandoc.Builder` instead of lists. This also
1634− means that everything is normalized automatically.
1635− + Move to a one-pass parsing strategy, returning values in the reader
1636− monad, which are then run (at the end of parsing) against the final
1637− parser state.
1638−
1639− * In HTML writer, we now use `toHtml` instead of pre-escaping.
1640− We work around the problem that blaze-html unnecessarily escapes `'`
1641− by pre-escaping just the `'` characters, instead of the whole string.
1642− If blaze-html later stops escaping `'` characters, we can simplify
1643− `strToHtml` to `toHtml`. Closes #629.
1644−
1645− * Moved code for embedding images in RTFs from `pandoc.hs` to the
1646− RTF writer (which now exports `writeRTFWithEmbeddedImages`).
1647−
1648− * Moved citation processing from `pandoc.hs` into the readers.
1649− This makes things more convenient for library users.
1650−
1651− * The man pages are now built by an executable `make-pandoc-man-pages`,
1652− which has its own stanza in the cabal file so that dependencies can be
1653− handled by Cabal. Special treatment in `Setup.hs` ensures that this
1654− executable never gets installed; it is only used to create the man pages.
1655−
1656− * The cabal file has been modified so that the pandoc library is used
1657− in building the pandoc executable. (This required moving `pandoc.hs`
1658− from `src` to `.`.) This cuts compile time in half.
1659−
1660− * `-O2` is no longer used in building pandoc. The performance improvement
1661− it yields is so slight that it is not worth it. (Measured with
1662− benchmarks on ghc 7.4.)
1663−
1664− * The `executable` and `library` flags have been removed.
1665−
1666− * `-threaded` has been removed from ghc-options.
1667−
1668− * Version bounds of dependencies have been raised, and the
1669− `blaze_html_0_5` flag now defaults to True. Pandoc now compiles on
1670− GHC 7.6.
1671−
1672− * We now require base >= 4.2.
1673−
1674− * Integrated the benchmark program into cabal. One can now do:
1675−
1676− cabal configure --enable-benchmarks && cabal build
1677− cabal bench --benchmark-option='markdown' --benchmark-option='-s 20'
1678−
1679− The benchmark now uses README + testsuite, so benchmark results
1680− from older versions aren't comparable.
1681−
1682− * Integrated test suite with cabal.
1683− To run tests, configure with `--enable-tests`, then `cabal test`.
1684− You can specify particular tests using `--test-options='-t markdown'`.
1685− No output is shown unless tests fail. The Haskell test modules
1686− have been moved from `src/` to `tests/`.
1687−
1688− * Moved all data files and templates to the `data/` subdirectory.
1689−
1690− * Added an `embed_data_files` cabal flag. This causes all
1691− data files to be embedded in the binary, so that the binary
1692− is self-sufficient and can be relocated anywhere, copied on
1693− a USB key, etc. The Windows installer now uses this.
1694− (Since we no longer have the option to build the executable
1695− without the library, this is the only way to get a relocatable
1696− binary on Windows.)
1697−
1698− * Removed pcre3.dll from windows package.
1699− It isn't needed unless highlighting-kate is compilled with the
1700− `pcre-light` flag. By default, regex-prce-builtin is used.
1701−
1702−
1703−pandoc (1.9.4.2)
1704−
1705− * Don't encode/decode file paths if base >= 4.4.
1706− Prior to base 4.4, filepaths and command line arguments were treated
1707− as unencoded lists of bytes, not unicode strings, so we had to work
1708− around that by encoding and decoding them. This commit adds CPP
1709− checks for the base version that intelligibly enable encoding/decoding
1710− when needed. Fixes a bug with multilingual filenames when pandoc was
1711− compiled with ghc 7.4 (#540).
1712−
1713− * Don't generate an empty H1 after hrule slide breaks.
1714− We now use a slide-level header with contents `[Str "\0"]` to mark
1715− an hrule break. This avoids creation of an empty H1 in these
1716− contexts. Closes #484.
1717−
1718− * Docbook reader: Added support for "bold" emphasis. Thanks to mb21.
1719−
1720− * In make_osx_package.sh, ensure citeproc-hs is built with the
1721− embed_data_files flag.
1722−
1723− * MediaWiki writer: Avoid extra blank lines after sublists (Gavin Beatty).
1724−
1725− * ConTeXt writer: Don't escape `&`, `^`, `<`, `>`, `_`,
1726− simplified escapes for `}` and `{` to `\{` and `\}` (Aditya Mahajan).
1727−
1728− * Fixed handling of absolute URLs in CSS imports with `--self-contained`.
1729− Closes #535.
1730−
1731− * Added webm to mime types. Closes #543.
1732−
1733− * Added some missing exports and tests to the cabal file
1734− (Alexander V Vershilov).
1735−
1736− * Compile with `-rtsopts` and `-threaded` by default.
1737−
1738−pandoc (1.9.4.1)
1739−
1740− * Markdown reader: Added `cf.` and `cp.` to list of likely abbreviations.
1741−
1742− * LaTeX template: Added `linkcolor`, `urlcolor` and `links-as-notes`
1743− variables. Make TOC links black.
1744−
1745− * LaTeX template improvements.
1746−
1747− + Don't print date unless one is given explicitly in the document.
1748− + Simplified templates.
1749− + Use fontenc [T1] by default, and lmodern.
1750− + Use microtype if available.
1751−
1752− * Biblio:
1753−
1754− + Add comma to beginning of bare suffix, e.g. `@item1 [50]`.
1755− Motivation: `@item1 [50]` should be as close as possible to
1756− `[@item1, 50]`.
1757− + Added workaround for a bug in citeproc-hs 0.3.4 that causes footnotes
1758− beginning with a citation to be empty. Closes #531.
1759−
1760− * Fixed documentation on mixed lists. Closes #533.
1761−
1762−pandoc (1.9.4)
1763−
1764− * Simplified `Text.Pandoc.Biblio` and fixed bugs with citations inside
1765− footnotes and captions. We now handle note citations by inserting
1766− footnotes during initial citation processing, and doing a separate
1767− pass later to remove notes inside notes.
1768−
1769− * Added 'zenburn' highlight style from highlighting-kate.
1770−
1771− * Added Slideous writer. Slideous is an HTML + javascript slide show
1772− format, similar to Slidy, but works with IE 7. (Jonas Smedegaard)
1773−
1774− * LaTeX writer:
1775−
1776− + Ensure we don't have extra blank lines at ends of cells.
1777− This can cause LaTeX errors, as they are interpreted as new paragraphs.
1778− + More consistent interblock spacing.
1779− + Require highlighting-kate >= 0.5.1, for proper highlighted inline
1780− code in LaTeX. Closes #527.
1781− + Ensure that a Verbatim at the end of a footnote is followed by
1782− a newline. (Fixes a regression in the previous version.)
1783− + In default template, use black for internal links and TOC.
1784− Added commented-out code to use footnotes for links, as would
1785− be suitable in print output.
1786−
1787− * Beamer writer: When `--incremental` is used, lists inside
1788− a block quote should appear all at once. (This makes Beamer
1789− output consistent with the HTML slide show formats.)
1790−
1791− * ConTeXt writer:
1792−
1793− + Escape `%` as `\letterpercent{}` not `\letterpercent `,
1794− to avoid gobbling spaces after the `%` sign.
1795− + Ensure space after `\stopformula`.
1796−
1797− * Markdown writer:
1798−
1799− + Use `:` form instead of `~` in definition lists, for better
1800− compatibility with other markdown implementations.
1801− + Don't wrap the term, because it breaks definition lists.
1802− + Use a nonzero space to prevent false recognition
1803− of list marker in ordered lists. Closes #516.
1804−
1805− * Org writer: Add space before language name. Closes #523.
1806−
1807− * Docx writer: Simplified bullet characters so they work properly
1808− with Word 2007. Closes #520.
1809−
1810− * LaTeX reader: Support `\centerline`.
1811−
1812− * RST reader: handle figures. Closes #522.
1813−
1814− * Textile reader: fix for `<notextile>` and `==`. Closes #517.
1815− (Paul Rivier)
1816−
1817−pandoc (1.9.3)
1818−
1819− * Fixed bug in `fromEntities`. The previous version would turn
1820− `hi & low you know;` into `hi &`.
1821−
1822− * HTML reader:
1823−
1824− + Don't skip nonbreaking spaces.
1825− Previously a paragraph containing just ` ` would be rendered
1826− as an empty paragraph. Thanks to Paul Vorbach for pointing out the bug.
1827− + Support `<col>` and `<caption>` in tables. Closes #486.
1828−
1829− * Markdown reader:
1830−
1831− + Don't recognize references inside delimited code blocks.
1832− + Allow list items to begin with lists.
1833−
1834− * Added basic docbook reader (John MacFarlane and Mauro Bieg).
1835−
1836− * LaTeX reader:
1837−
1838− + Handle `\bgroup`, `\egroup`, `\begingroup`, `\endgroup`.
1839− + Control sequences can't be followed by a letter.
1840− This fixes a bug where `\begingroup` was parsed as `\begin`
1841− followed by `group`.
1842− + Parse 'dimension' arguments to unknown commands. e.g. `\parindent0pt`
1843− + Make `\label` and `\ref` sensitive to `--parse-raw`.
1844− If `--parse-raw` is selected, these will be parsed as raw latex
1845− inlines, rather than bracketed text.
1846− + Don't crash on unknown block commands (like `\vspace{10pt}`)
1847− inside `\author`; just skip them. Closes #505.
1848−
1849− * Textile reader:
1850−
1851− + Implemented literal escapes with `==` and `<notextile>`. Closes #473.
1852− + Added support for LaTeX blocks and inlines (Paul Rivier).
1853− + Better conformance to RedCloth inline parsing (Paul Rivier).
1854− + Parse '+text+' as emphasized (should be underlined, but this
1855− is better than leaving literal plus characters in the output.
1856−
1857− * Docx writer: Fixed multi-paragraph list items. Previously they each
1858− got a list marker. Closes #457.
1859−
1860− * LaTeX writer:
1861−
1862− + Added `--no-tex-ligatures` option to avoid replacing
1863− quotation marks and dashes with TeX ligatures.
1864− + Use `fixltx2e` package to provide '\textsubscript'.
1865− + Improve spacing around LaTeX block environments:
1866− quote, verbatim, itemize, description, enumerate.
1867− Closes #502.
1868− + Use blue instead of pink for URL links in latex/pdf output.
1869−
1870− * ConTeXt writer: Fixed escaping of `%`.
1871− In text, `%` needs to be escaped as `\letterpercent`, not `\%`
1872− Inside URLs, `%` needs to be escaped as `\%`
1873− Thanks to jmarca and adityam for the fix. Closes #492.
1874−
1875− * Texinfo writer: Escape special characters in node titles.
1876− This fixes a problem pointed out by Joost Kremers. Pandoc used
1877− to escape an '@' in a chapter title, but not in the corresponding
1878− node title, leading to invalid texinfo.
1879−
1880− * Fixed document encoding in texinfo template.
1881− Resolves Debian Bug #667816.
1882−
1883− * Markdown writer:
1884−
1885− + Don't force delimited code blocks to be flush left.
1886− Fixes bug with delimited code blocks inside lists etc.
1887− + Escape `<` and `$`.
1888−
1889− * LaTeX writer: Use `\hyperref[ident]{text}` for internal links.
1890− Previously we used `\href{\#ident}{text}`, which didn't work on
1891− all systems. Thanks to Dirk Laurie.
1892−
1893− * RST writer: Don't wrap link references. Closes #487.
1894−
1895− * Updated to use latest versions of blaze-html, mtl.
1896−
1897−
1898−pandoc (1.9.2)
1899−
1900− * LaTeX reader:
1901−
1902− + Made `lstlisting` work as a proper verbatim environment.
1903− + Fixed bug parsing LaTeX tables with one column.
1904−
1905− * LaTeX writer:
1906−
1907− + Use `{}` around `ctable` caption, so that formatting can be used.
1908− + Don't require eurosym package unless document has a €.
1909−
1910− * LaTeX template: Added variables for `geometry`, `romanfont`,
1911− `sansfont`, `mathfont`, `mainfont` so users can more easily
1912− customize fonts.
1913−
1914− * PDF writer:
1915−
1916− + Run latex engine at least two times, to ensure
1917− that PDFs will have hyperlinked bookmarks.
1918− + Added PDF metadata (title,author) in LaTeX standalone + PDF output.
1919−
1920− * Texinfo writer: retain directories in image paths. (Peter Wang)
1921−
1922− * RST writer: Better handling of inline formatting, in accord
1923− with docutils' "inline markup recognition rules" (though we don't
1924− implement the unicode rules fully). Now `hi*there*hi` gets
1925− rendered properly as `hi\ *there*\ hi`, and unnecessary
1926− `\ ` are avoided around `:math:`, `:sub:`, `:sup:`.
1927−
1928− * RST reader:
1929−
1930− + Parse `\ ` as null, not escaped space.
1931− + Allow `` :math:`...` `` even when not followed by blank
1932− or `\`. This does not implement the complex rule docutils follows,
1933− but it should be good enough for most purposes.
1934− + Add support for the rST default-role directive. (Greg Maslov)
1935−
1936− * Text.Pandoc.Parsing: Added `stateRstDefaultRole` field to `ParserState`.
1937− (Greg Maslov)
1938−
1939− * Markdown reader: Properly handle citations nested in other inline
1940− elements.
1941−
1942− * Markdown writer: don't replace empty alt in image with "image".
1943−
1944− * DZSlides: Updated template.html and styles in default template.
1945− Removed bizarre CSS for `q` in dzslides template.
1946−
1947− * Avoid repeated `id` attribute in section and header in HTML slides.
1948−
1949− * README improvements: new instructions on internal links,
1950− removed misleading note on reST math.
1951−
1952− * Build system:
1953−
1954− + Fixed Windows installer so that dzslides works.
1955− + Removed stripansi.sh.
1956− + Added .travis.yml for Travis continuous integration support..
1957− + Fixed upper bound for zlib (Sergei Trofimovich).
1958− + Fixed upper bound for test-framework.
1959− + Updated haddocks for haddock-2.10 (Sergei Trofimovich).
1960−
1961−pandoc (1.9.1.2)
1962−
1963− * Added `beamer+lhs` as output format.
1964−
1965− * Don't escape `<` in `<style>` tags with `--self-contained`.
1966− This fixes a bug which prevented highlighting from working
1967− when using `--self-contained`.
1968−
1969− * PDF: run latex engine three times if `--toc` specified.
1970− This fixes page numbers in the table of contents.
1971−
1972− * Docx writer: Added TableNormal style to tables.
1973−
1974− * LaTeX math environment fixes. `aligned` is now used instead of
1975− the nonexistent `aligned*`. `multline` instead of the nonexistent
1976− `multiline`.
1977−
1978− * LaTeX writer: Use `\textasciitilde` for literal `~`.
1979−
1980− * HTML writer: Don't escape contents of EQ tags with --gladtex.
1981− This fixes a regression from 1.8.
1982−
1983− * Use `<q>` tags for Quoted items for HTML5 output.
1984− The quote style can be changed by modifying the template
1985− or including a css file. A default quote style is included.
1986−
1987− * LaTeX reader: Fixed accents (\~{a}, `\c{c}`).
1988− Correctly handle \^{}. Support "minted" as a LaTeX verbatim block.
1989−
1990− * Updated LaTeX template for better language support.
1991− Use `polyglossia` instead of `babel` with xetex.
1992− Set `lang` as documentclass option.
1993− `\setmainlanguage` will use the last of a comma-separated
1994− list of languages. Thanks to François Gannaz.
1995−
1996− * Fixed default LaTeX template so `\euro` and `€` work. The
1997− `eurosym` package is needed if you are using pdflatex.
1998−
1999− * Fixed escaping of period in man writer (thanks to Michael Thompson).
2000−
2001− * Fixed list label positions in beamer.
2002−
2003− * Set `mainlang` variable in context writer.
2004− This parallels behavior of latex writer. `mainlang` is the last
2005− of a comma-separated list of languages in lang.
2006−
2007− * EPUB language metadat: convert e.g. `en_US` from locale to `en-US`.
2008−
2009− * Changed `-V` so that you can specify a key without a value.
2010− Such keys get the value `true`.
2011−
2012− * Fixed permissions on installed man pages - thanks Magnus Therning.
2013−
2014− * Windows installer: require XP or higher. The installer is
2015− now compiled on a Windows 7 machine, which fixes a problem
2016− using citation functions on Windows 7.
2017−
2018− * OSX package: Check for 64-bit Intel CPU before installing.
2019−
2020−pandoc (1.9.1.1)
2021−
2022− * Better handling of raw latex environments in markdown. Now
2023−
2024− \begin{equation}
2025− a_1
2026− \end{equation}
2027−
2028− turns into a raw latex block as expected.
2029−
2030− * Improvements to LaTeX reader:
2031−
2032− + Skip options after block commands.
2033− + Correctly handle `{\\}` in braced.
2034− + Added a needed 'try'.
2035− + Citations: add `, ` to suffix if it doesn't start with space or
2036− punctuation. Otherwise we get no space between the year and the
2037− suffix in author-date styles.
2038−
2039− * Added two needed data files for S5. This fixes a problem with
2040− `pandoc -t s5 --self-contained`. Also removed `slides.min.js`,
2041− which was no longer being used.
2042−
2043− * Fixed some minor problems in `reference.docx`:
2044− name on "Date" style, `xCs` instead of `xIs`.
2045−
2046− * Fixed a problem creating docx files using a reference docx
2047− modified using Word. The problem seems to be that Word
2048− modifies `_rels/.rels`, changing the Type of the Relationship to
2049− `docProps/core.xml`. Pandoc now changes this back to the correct
2050− value if it has been altered, fixing the problem.
2051−
2052− * Fixed html5 template so it works properly with highlighting.
2053−
2054−pandoc (1.9.1)
2055−
2056− * LaTeX reader:
2057−
2058− + Fixed regression in 1.9; properly handle escaped $ in latex math.
2059− + Put LaTeX verse environments in blockquotes.
2060−
2061− * Markdown reader:
2062−
2063− + Limit nesting of strong/emph. This avoids exponential lookahead
2064− in parasitic cases, like `a**a*a**a*a**a*a**a*a**a*a**a*a**a*a**`.
2065− + Improved attributes syntax (inn code blocks/spans):
2066− (1) Attributes can contain line breaks. (2) Values in key-value
2067− attributes can be surrounded by either double or single quotes, or
2068− left unquoted if they contain no spaces.
2069−
2070− * Don't wrap headers in markdown or RST writers.
2071−
2072− * Added `stateMaxNestingLevel` to `ParserState`.
2073− We set this to 6, so you can still have `Emph` inside `Emph`,
2074− just not indefinitely.
2075−
2076− * More efficient implementation of `nowrap` in `Text.Pandoc.Pretty`.
2077−
2078− * `Text.Pandoc.PDF`: Only run latex twice if `\tableofcontents`
2079− is present.
2080−
2081− * Require highlighting-kate >= 0.5.0.2, texmath >= 0.6.0.2.
2082−
2083−pandoc (1.9.0.5)
2084−
2085− * Changed cabal file so that build-depends for the test program
2086− are not required unless the tests flag is used.
2087−
2088− * LaTeX writer: insert `{}` between adjacent hyphens so they don't
2089− form ligatures (dashes) in code spans.
2090−
2091−pandoc (1.9.0.4)
2092−
2093− * Raised version bound on test-framework to avoid problems
2094− compiling tests on GHC 7.4.1.
2095−
2096− * LaTeX reader: Use raw LaTeX as fallback inline text for Cites,
2097− so citations don't just disappear unless you process with
2098− citeproc. Ignore `\bibliographystyle`, `\nocite`.
2099−
2100− * Simplified tex2pdf; it will always run latex twice to
2101− resolve table of contents and hyperrefs.
2102−
2103−pandoc (1.9.0.3)
2104−
2105− * Require Cabal >= 1.10.
2106− * Tweaked cabal file to meet Cabal 1.10 requirements.
2107−
2108−pandoc (1.9.0.2)
2109−
2110− * Allow build with json 0.4 or 0.5. Otherwise we can't build with
2111− ghc 6.12.
2112−
2113−pandoc (1.9)
2114−
2115− [new features]
2116−
2117− * Added a Microsoft Word `docx` writer. The writer includes support
2118− for highlighted code and for math (which is converted from TeX to OMML,
2119− Office's native math markup language, using texmath's new OMML module).
2120− A new option `--reference-docx` allows the user to customize the
2121− styles.
2122−
2123− * Added an `asciidoc` writer (<http://www.methods.co.nz/asciidoc/>).
2124−
2125− * Better support for slide shows:
2126−
2127− + Added a `dzslides` writer. DZSlides is a lightweight HTML5/javascript
2128− slide show format due to Paul Rouget (<http://paulrouget.com/dzslides/>).
2129−
2130− + Added a LaTeX `beamer` writer. Beamer is a LaTeX package for creating
2131− slide presentations.
2132−
2133− + New, flexible rules for dividing documents into sections and slides
2134− (see the "Structuring the slide show" in the User's Guide). These
2135− are backward-compatible with the old rules, but they allow slide
2136− shows to be organized into sections and subsections containing
2137− multiple slides.
2138−
2139− + A new `--slide-level` option allows users to override defaults
2140− and select a slide level below the first header level with content.
2141−
2142− * A new `--self-contained` option produces HTML output that does not
2143− depend on an internet connection or the presence of any external
2144− files. Linked images, CSS, and javascript is downloaded (or fetched
2145− locally) and encoded in `data:` URIs. This is useful for making portable
2146− `HTML slide shows. The --offline` option has been deprecated and is now
2147− `treated as a synonym or --self-contained`.
2148−
2149− * Support for PDF output:
2150−
2151− + Removed the old `markdown2pdf`.
2152− + `pandoc` can now create PDFs (assuming you have latex and a set of
2153− appropriate packages installed): just specify an output file with the
2154− `.pdf` extension.
2155− + A new option `--latex-engine` allows you to specify `pdflatex`,
2156− `xelatex`, or `lualatex` as the processor.
2157−
2158− * Highlighting changes:
2159−
2160− + Syntax highlighting is now a standard feature; the `highlighting`
2161− flag is no longer needed when compiling.
2162− + A new `--no-highlight` option allows highlighting to be disabled.
2163− + Highlighting now works in `docx`, `latex`, and `epub`, as well as
2164− `html`, `html5`, `dzslides`, `s5`, and `slidy`.
2165− + A new `--highlight-style` option selects between various highlighting
2166− color themes.
2167−
2168− * Internal links to sections now work in ConTeXt and LaTeX as well as HTML.
2169−
2170− * LaTeX `\include` and `\usepackage` commands are now processed,
2171− provided the files are in the working directory.
2172−
2173− * EPUB improvements:
2174−
2175− + Internal and external links now work in EPUB.
2176− + Raw HTML is allowed.
2177− + New `--epub-embed-font` option.
2178− + Customizable templates for EPUB pages offer more control over
2179− formatting: `epub-page.html`, `epub-coverimage.html`,
2180− `epub-titlepage.html`.
2181−
2182− * `--mathml` now works with DocBook.
2183−
2184− * Added support for math in RST reader and writer. Inline math uses the
2185− `` :math:`...` `` construct. Display math uses
2186−
2187− .. math:: ...
2188−
2189− or if the math is multiline,
2190−
2191− .. math::
2192−
2193− ...
2194−
2195− These constructions are now supported now by `rst2latex.py`.
2196−
2197− * Github syntax for fenced code blocks is supported in pandoc's
2198− markdown. You can now write
2199−
2200− ```ruby
2201− x = 2
2202− ```
2203−
2204− instead of
2205−
2206− ~~~ {.ruby}
2207− x = 2
2208− ~~~~
2209−
2210− * Easier scripting: a new `toJsonFilter` function makes it easier to
2211− write Haskell scripts to manipulate the Pandoc AST.
2212−
2213− [behavior changes]
2214−
2215− * Fixed parsing of consecutive lists in markdown.
2216− Pandoc previously behaved like Markdown.pl for consecutive
2217− lists of different styles. Thus, the following would be parsed
2218− as a single ordered list, rather than an ordered list followed
2219− by an unordered list:
2220−
2221− 1. one
2222− 2. two
2223−
2224− - one
2225− - two
2226−
2227− This change makes pandoc behave more sensibly, parsing this as
2228− two lists. Any change in list type (ordered/unordered) or in
2229− list number style will trigger a new list. Thus, the following
2230− will also be parsed as two lists:
2231−
2232− 1. one
2233− 2. two
2234−
2235− a. one
2236− b. two
2237−
2238− Since we regard this as a bug in Markdown.pl, and not something
2239− anyone would ever rely on, we do not preserve the old behavior
2240− even when `--strict` is selected.
2241−
2242− * Dashes work differently with `--smart`: `---` is always em-dash,
2243− and `--` is always en-dash. Pandoc no longer tries to guess when
2244− `-` should be en-dash. *Note:* This may change how existing documents
2245− look when processed with pandoc. A new option, `--old-dashes`,
2246− is provided for legacy documents.
2247−
2248− * The markdown writer now uses setext headers for levels 1-2.
2249− The old behavior (ATX headers for all levels) can be restored
2250− using the new `--atx-headers` option.
2251−
2252− * Links are now allowed in markdown image captions. They are also
2253− allowed in links, but will appear there as regular text. So,
2254−
2255− [link with [link](/url)](/url)
2256−
2257− will turn into
2258−
2259− <p><a href="/url">link with link</a></p>
2260−
2261− * Improved handling of citations using `citeproc-hs-0.3.4`.
2262− Added `--citation-abbreviations` option.
2263−
2264− * Citation keys can no longer end with a punctuation character.
2265− This means that `@item1.` will be parsed as a citation with key
2266− 'item1', followed by a period, instead of a citation with key
2267− 'item1.', as was the case previously.
2268−
2269− * In HTML output, citations are now put in a span with class `citation`.
2270−
2271− * The markdown reader now recognizes DocBook block and inline tags.
2272− It was always possible to include raw DocBook tags in a markdown
2273− document, but now pandoc will be able to distinguish block from
2274− inline tags and behave accordingly. Thus, for example,
2275−
2276− <sidebar>
2277− hello
2278− </sidebar>
2279−
2280− will not be wrapped in `<para>` tags.
2281−
2282− * The LaTeX parser has been completely rewritten; it is now much more
2283− accurate, robust, and extensible. However, there are two important
2284− changes in how it treats unknown LaTeX. (1) Previously, unknown
2285− environments became BlockQuote elements; now, they are treated
2286− as "transparent", so `\begin{unknown}xyz\end{unknown}` is the
2287− same as `xyz`. (2) Previously, arguments of unknown commands
2288− were passed through with their braces; now the braces are stripped
2289− off.
2290−
2291− * `--smart` is no longer selected automatically with `man` output.
2292−
2293− * The deprecated `--xetex` option has been removed.
2294−
2295− * The `--html5`/`-5` option has been deprecated. Use `-t html5`
2296− instead. `html5` and `html5+lhs` are now separate output formats.
2297−
2298− * Single quotes are no longer escaped in HTML output. They do not
2299− need to be escaped outside of attributes.
2300−
2301− * Pandoc will no longer transform leading newlines in code
2302− blocks to `<br/>` tags.
2303−
2304− * The ODT writer now sizes images appropriately, using the image
2305− size and DPI information embedded in the image.
2306−
2307− * `--standalone` is once again implicitly for a non-text output format
2308− (ODT, EPUB). You can again do `pandoc test.txt -o test.odt`
2309− and get a standalone ODT file.
2310−
2311− * The Docbook writer now uses `<sect1>`, `<sect2>`, etc. instead of
2312− `<section>`.
2313−
2314− * The HTML writer now uses `<del>` for strikeout.
2315−
2316− * In HTML output with `--section-divs`, the classes `section` and
2317− `level[1,2,..6]` are put on the `div` tags so they can be styled.
2318− In HTML 5 output with `--section-divs`, the classes
2319− `level[1,2,...6]` are put on `section` tags.
2320−
2321− * EPUB writer changes:
2322−
2323− + The `lang` variable now sets the language
2324− in the metadata (if it is not set, we default to the locale).
2325− + EPUB: UTF-8 is used rather than decimal entities.
2326−
2327− * Added `titleslide` class to title slide in S5 template.
2328−
2329− * In HTML, EPUB, and docx metadata, the date is normalized into
2330− YYYY-MM-DD format if possible. (This is required for validation.)
2331−
2332− * Attributes in highlighted code blocks are now preserved in HTML.
2333− The container element will have the classes, id, and key-value attributes
2334− you specified in the delimited code block. Previously these were stripped
2335− off.
2336−
2337− * The reference backlink in the HTML writer no longer has a special
2338− `footnoteBacklink` class.
2339−
2340− * The HTML template has been split into `html` and `html5` templates.
2341−
2342− * Author and date are treated more consistently in HTML templates.
2343− Authors are now `<h2>`, date `<h3>`.
2344−
2345− * URLs are hyphenated in the ConTeXt writer (B. Scott Michel).
2346−
2347− * In `Text.Pandoc.Builder`, `+++` has been replaced by `<>`.
2348−
2349− [bug fixes]
2350−
2351− * Better support for combining characters and East Asian wide characters
2352− in markdown and reST.
2353−
2354− * Better handling of single quotes with `--smart`.
2355− Previously `D'oh l'*aide*` would be parsed with left and right single
2356− quotes instead of apostrophes. This kind of error is now fixed.
2357−
2358− * Highlighting: Use `reads` instead of `read` for better error handling.
2359− Fixes crash on `startNum="abc"`.
2360−
2361− * Added blank comment after directives in rst template.
2362−
2363− * Unescape entities in citation `refId`. The `refId`s coming
2364− from citeproc contain XML numeric entities, and these don't match with the
2365− citation keys parsed by pandoc. Solution is to unescape them.
2366−
2367− * HTML reader: Fixed bug parsing tables with both thead and tbody.
2368−
2369− * Markdown reader:
2370−
2371− + Better handling of escapes in link URLs and titles.
2372− + Fixed backslash escapes in reference links.
2373− + Fixed bug in table/hrule parsing, by checking that the top
2374− line of a table is not followed by a blank line. This bug caused
2375− slowdowns on some files with hrules and tables, as pandoc tried to
2376− interpret the hrules as the tops of multiline tables.
2377− + Fixed bug in code block attribute parser. Previously the ID attribute
2378− got lost if it didn't come first. Now attributes can come in any order.
2379−
2380− * RST reader: allow footnotes followed by newline without space characters.
2381−
2382− * LaTeX reader:
2383−
2384− + Ignore empty groups {}, { }.
2385− + LaTeX reader: Handle \@.
2386− + LaTeX reader: Don't crash on commands like `\itemsep`.
2387− + LaTeX reader: Better handling of letter environments.
2388−
2389− * RST writer: Fixed bug involving empty table cells. isSimple was being
2390− calculated in a way that assumed there were no non-empty cells.
2391−
2392− * ConTeXt writer:
2393−
2394− + Made `--toc` work even without `--number-sections`.
2395− + Escape # in link URLs.
2396− + Use buffering for footnotes containing code blocks.
2397− + Changed 'descr' to 'description', fixed alignment.
2398−
2399− * LaTeX writer:
2400−
2401− + Escape euro character.
2402− + Don't escape ~ inside href{...}.
2403− + Escape # in href URLs.
2404− + Improved detection of book classes. We now check the
2405− `documentclass` variable, and if that is not set, we look through
2406− the template itself. Also, we have added the KOMA classes scrreprt
2407− and scrbook. You can now make a book using
2408− `pandoc -V documentclass:book mybook.txt -o mybook.pdf`
2409− + LHS files now set the "listings" variable, so that the definition
2410− of the `code` environment will be included in the template.
2411− + Links are colored blue by default (this can be changed by
2412− modifying `hyperref` settings in the template).
2413− + Added `lang` variable to LaTeX template.
2414−
2415− * HTML writer:
2416−
2417− + Fixed bug in HTML template with html5 and mathml.
2418− + Don't use self-closing img, br, hr tags for HTML5.
2419− + Use `<section>` for footnotes if HTML5.
2420− + Update HTML templates to use Content-Style-Type meta tag.
2421− + Use separate variables for meta-date, meta-author.
2422− This makes footnotes work in author and date fields.
2423− + Use 'vertical-align:middle' in WebTeX math for better alignment.
2424−
2425− * S5/slidy writer: Make footnotes appear on separate slide at end.
2426−
2427− * MIME: Added 'layout-cache' to getMimeType. This ensures that the
2428− META-INF/manifest.xml for ODT files will have everything it needs, so
2429− that ODT files modified by LibreOffice can be used as `--reference-odt`.
2430−
2431− * `Text.Pandoc.Templates`: Return empty string for json template.
2432−
2433− * `Text.Pandoc.Biblio`:
2434−
2435− + Expand citations recursively inside nested inlines.
2436− + Treat `\160` as space when parsing locator and suffix.
2437− This fixes a bug with "p. 33" when `--smart` is used. Previously
2438− the whole "p. 33" would be included in the suffix, with no locator.
2439− + Put whole author-in-text citation in a Cite. Previously just the
2440− date and other info went in the Cite.
2441− + Don't add comma+space to prefix if it ends in punctuation.
2442−
2443− * Updated chicago-author-date.csl. The old version did not work
2444− properly for edited volumes with no author.
2445−
2446− * EPUB writer:
2447−
2448− + Add date to EPUB titlepage and metadata.
2449− + Added TOC identifier in EPUB page template.
2450− + Don't generate superfluous file `cover-image.jpg`.
2451−
2452− [under the hood improvements]
2453−
2454− * Modified `make_osx_package.sh` to use cabal-dev.
2455− Items are no longer installed as root.
2456− Man pages are zipped and given proper permissions.
2457−
2458− * Modified windows installer generater to use cabal-dev.
2459−
2460− * Setup: Making man pages now works with cabal-dev (at least on OSX). In
2461− Setup.hs we now invoke 'runghc' in a way that points it to the correct
2462− package databases, instead of always falling back to the default user
2463− package db.
2464−
2465− * Updated to work with GHC 7.4.1.
2466−
2467− * Removed dependency on old-time.
2468−
2469− * Removed dependency on dlist.
2470−
2471− * New slidy directory for "self-contained."
2472−
2473− * TeXMath writer: Use unicode thin spaces for thin spaces.
2474−
2475− * Markdown citations: don't strip off initial space in locator.
2476−
2477− [API changes]
2478−
2479− * Removed `Apostrophe`, `EmDash`, `EnDash`, and `Ellipses`
2480− from the native `Inline` type in pandoc-types. Now we use `Str`
2481− elements with unicode.
2482−
2483− * Improvements to `Text.Pandoc.Builder`:
2484−
2485− + `Inlines` and `Blocks` are now newtypes (not synonyms for
2486− sequences).
2487− + Instances are defined for `IsString`, `Show`, `Read`, `Monoid`,
2488− and a new `Listable` class, which allows these to be manipulated
2489− to some extent like lists. Monoid append includes automatic
2490− normalization.
2491− + `+++` has been replaced by `<>` (mappend).
2492−
2493− * Use blaze-html instead of xhtml for HTML generation.
2494− This changes the type of `writeHtml`.
2495−
2496− * `Text.Pandoc.Shared`:
2497−
2498− + Added `warn` and `err`.
2499− + Removed `unescapeURI`, modified `escapeURI`.
2500− (See under [behavior changes], above.)
2501−
2502− * Changes in URI escaping: Previously the readers escaped URIs by
2503− converting unicode characters to octets and then percent encoding.
2504− Now unicode characters are left as they are, and `escapeURI` only
2505− percent-encodes space characters. This gives more readable
2506− URIs, and works well with modern user agents. URIs are no longer unescaped
2507− at all on conversion to `markdown`, `asciidoc`, `rst`, `org`.
2508−
2509− * New module `Text.Pandoc.SelfContained`.
2510−
2511− * New module `Text.Pandoc.Docx`.
2512−
2513− * New module `Text.Pandoc.PDF`.
2514−
2515− * Added `writerBeamer` to `WriterOptions`.
2516−
2517− * Added `normalizeDate` to `Text.Pandoc.Shared`.
2518−
2519− * Added `splitStringWithIndices` in `Text.Pandoc.Shared`.
2520− This is like `splitWithIndices`, but it is sensitive to distinctions
2521− between wide, combining, and regular characters.
2522−
2523− * `Text.Pandoc.Pretty`:
2524−
2525− + Added `chomp` combinator.
2526− + Added `beforeNonBreak` combinator. This allows you to include
2527− something conditionally on it being before a nonblank.
2528− Used for RST inline math.
2529− + Added `charWidth` function. All characters marked W or F in the unicode
2530− spec EastAsianWidth.txt get width 2.
2531− + Added `realLength`, based on `charWidth`. `realLength` is now
2532− used in calculating offsets.
2533−
2534− * New module `Text.Pandoc.Slides`, for common functions for breaking
2535− a document into slides.
2536−
2537− * Removed `Text.Pandoc.S5`, which is no longer needed.
2538−
2539− * Removed `Text.Pandoc.CharacterReferences`. Moved
2540− `characterReference` to `Text.Pandoc.Parsing`.
2541− `decodeCharacterReferences` is replaced by `fromEntities`
2542− in `Text.Pandoc.XML`.
2543−
2544− * Added `Text.Pandoc.ImageSize`. This is intened for use
2545− in `docx` and `odt` writers, so the size and dpi of images
2546− can be calculated.
2547−
2548− * Removed `writerAscii` in `WriterOptions`.
2549−
2550− * Added `writerHighlight` to `WriterOptions`.
2551−
2552− * Added `DZSlides` to `HTMLSlideVariant`.
2553−
2554− * `writeEPUB` has a new argument for font files to embed.
2555−
2556− * Added `stateLastStrPos` to `ParserState`. This lets us keep track
2557− of whether we're parsing the position immediately after a regular
2558− (non-space, non-symbol) string, which is useful for distinguishing
2559− apostrophes from single quote starts.
2560−
2561− * `Text.Pandoc.Parsing`:
2562−
2563− + `escaped` now returns a `Char`.
2564− + Removed `charsInBalanced'`, added a character parser as
2565− a parameter of `charsInBalanced`. This is needed for
2566− proper handling of escapes, etc.
2567− + Added `withRaw`.
2568−
2569− * Added `toEntities` to `Text.Pandoc.XML`.
2570−
2571− * `Text.Pandoc.Readers.LaTeX`:
2572−
2573− + Export `handleIncludes`.
2574− + Export `rawLaTeXBlock` instead of `rawLaTeXEnvironment'`.
2575−
2576− * Added `ToJsonFilter` class and `toJsonFilter` function to
2577− `Text.Pandoc`, deprecating the old `jsonFilter` function.
2578−
2579− * `Text.Pandoc.Highlighting`:
2580−
2581− + Removed `highlightHtml`, `defaultHighlightingCss`.
2582− + Export `formatLaTeXInline`, `formatLaTeXBlock`, and `highlight`, plus
2583− key functions from highlighting-kate.
2584− + Changed types of highlighting function. `highlight` returns a
2585− `Maybe`, not an `Either`.
2586−
2587−pandoc (1.8.2.1)
2588−
2589− * Relaxed cabal consntraints for test-framework (S. Trofimovich).
2590−
2591− * Relaxed cabal constraints for pandoc-types.
2592−
2593− * Adjusted Arbitrary instance to help avoid timeouts in tests.
2594−
2595− * Added `Tests.Writers.Markdown` to cabal file.
2596−
2597−pandoc (1.8.2)
2598−
2599− * Added script to produce OS X package.
2600−
2601− * Made `templates` directory a git submodule. This should make it
2602− easier for people to revise their custom templates when the default
2603− templates change.
2604−
2605− * Changed template naming scheme: `FORMAT.template` -> `default.FORMAT`.
2606− **Note:** If you have existing templates in `~/.pandoc/templates`, you
2607− must rename them to conform to the new scheme!
2608−
2609− * Fixed smart quotes bug, now handling `'...hi'` properly.
2610−
2611− * RST reader:
2612−
2613− + Partial support for labeled footnotes.
2614− + Improved accuracy of `simpleReferenceName` parser.
2615−
2616− * HTML reader:
2617−
2618− + Substitute correct unicode characters for
2619− characters in the 128..159 range, which are often found even in
2620− HTML that purports to be UTF-8.
2621−
2622− * LaTeX reader: Handle `\subtitle` command (a subtitle is added
2623− to the title, after a colon and linebreak). Closes #280.
2624−
2625− * Leaner `reference.odt`.
2626−
2627− * Added unexported module `Text.Pandoc.MIME` for use in
2628− the ODT writer.
2629−
2630− * ODT writer: Construct `manifest.xml` based on archive contents.
2631− This fixes a bug in ODTs containing images. Recent versions of
2632− LibreOffice would reject these as corrupt, because `manifest.xml`
2633− did not contain a reference to the image files.
2634−
2635− * LaTeX writer:
2636−
2637− + Make verbatim environments flush to avoid spurious
2638− blank lines. Closes #277.
2639− + Use `\texttt` and escapes insntead of `\verb!...!`, which
2640− is too fragile (doesn't work in command arguments).
2641− + Use `\enquote{}` for quotes if the template includes
2642− the `csquotes` package. This provides better support for
2643− local quoting styles. (Thanks to Andreas Wagner for the idea.)
2644−
2645− * ConTeXt writer: Make `\starttyping`/`\stoptyping` flush with
2646− margin, preventing spurious blank lines.
2647−
2648− * Slidy writer:
2649−
2650− + Use non-minimized version of `slidy.css` with `--offline`
2651− option, so users can more easily edit it.
2652− + Also fixed a bug in the CSS that prevented proper centering
2653− of title (now reported and fixed upstream).
2654−
2655− * S5 writer:
2656−
2657− + Replaced `s5/default/slides.js.{comment,packed}` with
2658− new compressed `s5/default/slides.min.js`.
2659− + Use `data:` protocol to embed S5 CSS in `<link>` tags,
2660− when `--offline` is specified. Using inline CSS didn't
2661− work with Chrome or Safari. This fixes offline
2662− S5 on those browsers.
2663−
2664− * HTML writer: Removed English title on footnote backlinks.
2665− This is incongrous in non-English documents.
2666−
2667− * Docbook writer:
2668−
2669− + Use CALS tables. (Some older docbook software does not work
2670− well with XHTML tables.) Closes #77.
2671− + Use `programlisting` tags (instead of `screen`) for code blocks.
2672−
2673− * `markdown2pdf`:
2674−
2675− + Calls latex with `-halt-on-error -interaction nonstopmode` instead
2676− of `-interaction=batchmode`, which essentially just ignored errors,
2677− leading to bad results. Better to know when something is wrong.
2678− + Fixed issues with non-UTF-8 output of `pdflatex`.
2679− + Better error reporting.
2680−
2681− * `--mathjax` now takes an optional URL argument. If it is not
2682− provided, pandoc links directly to the (secure) mathjax CDN,
2683− as now recommended (thanks to dsanson).
2684−
2685− * Deprecated `--xetex` option in `pandoc`. It is no longer needed,
2686− since the LaTeX writer now produces a file that can be processed by
2687− `latex`, `pdflatex`, `lualatex`, or `xelatex`.
2688−
2689− * Introduced `--luatex` option to `markdown2pdf`. This causes `lualatex`
2690− to be used to create the PDF.
2691−
2692− * If a template specified with `--template` is not found, look for it
2693− in `datadir`. Also, if no extension is provided, supply one based
2694− on the writer. So now you can put your `special.latex` template in
2695− `~/.pandoc/templates`, and use it from any directory via
2696− `pandoc -t latex --template special`.
2697−
2698− * Default template improvements:
2699−
2700− + HTML: Display author and date after title.
2701− + HTML: Made table of contents more customizable. The container
2702− for the TOC is now in the template, so users can insert a header
2703− or other styling. (Thanks to Bruce D'Arcus for the suggestion.)
2704− + HTML, Slidy, S5: Enclose scripts in CDATA tags.
2705− + Slidy, S5: Added `s5-url` and `slidy-url` variables, instead of
2706− hard-coding. If you want to put your slidy files in the slidy
2707− subdirectory, for example, you can do
2708− `pandoc -t slidy -V slidy-url=slidy -s`.
2709− + LaTeX: Use `\and` to separate authors in LaTeX documents (reader
2710− & writer). Closes #279.
2711− + LaTeX: Use different `hyperref` options for `xetex`, fixing
2712− problems with unicode bookmarks (thanks to CircleCode).
2713− + LaTeX: Removed `ucs` package, use `utf8` rather than `utf8x`
2714− with `inputenc`. This covers fewer characters but is more
2715− robust with other packages, and `ucs` is unmaintained. Users
2716− who need better unicode support should use xelatex or lualatex.
2717−
2718−pandoc (1.8.1.2)
2719−
2720− * Added `--epub-cover-image` option.
2721−
2722− * Documented `--biblatex` and `--natbib` options.
2723−
2724− * Allow `--section-divs` with slidy output. Resolves Issue #296.
2725−
2726− * Disallow notes within notes in reST and markdown.
2727− These previously caused infinite looping and stack overflows.
2728− For example:
2729−
2730− [^1]
2731−
2732− [^1]: See [^1]
2733−
2734− Note references are allowed in reST notes, so this isn't a full
2735− implementation of reST. That can come later. For now we need to
2736− prevent the stack overflows. Partially resolves Issue #297.
2737−
2738− * EPUB writer: Allow non-plain math methods.
2739−
2740− * Forbid ()s in citation item keys. Resolves Issue #304: problems with
2741− `(@item1; @item2)` because the final paren was being parsed as part of
2742− the item key.
2743−
2744− * Changed URI parser so it doesn't include trailing punctuation.
2745− So, in RST, `http://google.com.` should be parsed as a link followed by a
2746− period. The parser is smart enough to recognize balanced parentheses, as
2747− often occur in wikipedia links: `http://foo.bar/baz_(bam)`.
2748−
2749− * Markdown+lhs reader: Require space after inverse bird tracks, so that
2750− HTML tags can be used freely at the left margin of a markdown+lhs document.
2751− Thanks to Conal Elliot for the suggestion.
2752−
2753− * Markdown reader:
2754−
2755− + Improved emph/strong parsing; fixes bug found by Perry Wagle.
2756− + Fixed bug in footnote order (reported by CircleCode).
2757−
2758− * RST reader:
2759− + Fixed bug in in field lists with multi-line items at the
2760− end of the list.
2761− + Added parentheses to RST `specialChars`, so
2762− `(http://google.com)` will be parsed as a link in parens.
2763− Resolves Issue #291.
2764− + Allow `|` followed by newline in RST line block.
2765−
2766− * LaTeX reader:
2767− + Support `\dots`.
2768− + Gobble option & space after linebreak `\\[10pt]`.
2769−
2770− * Textile reader:
2771− + Make it possible to have colons after links. (qerub)
2772− + Make it possible to have colons after links. (Christoffer Sawicki)
2773−
2774− * HTML reader:
2775− + Skip spaces after `<b>`, `<emph>`, etc.
2776− + Handle tbody, thead in simple tables. Closes #274.
2777− + Implicit `Para`s instead of `Plains` in some contexts.
2778−
2779− * OpenDocument writer: Use special `First paragraph` style for
2780− first paragraph after most non-paragraph blocks. This allows users to
2781− specify e.g. that only paragraphs after the first paragraph of a block are
2782− to be indented. Thanks to Andrea Rossato for the patch. Closes #20.
2783−
2784− * LaTeX writer: use `deVerb` on table and picture captions.
2785− Otherwise LaTeX complains about `\verb` inside command argument.
2786− Thanks to bbanier for reporting the bug.
2787−
2788− * Markdown writer: Insert HTML comment btw list and indented code block.
2789− This prevents the code block from being interpreted as part of the list.
2790−
2791− * EPUB writer: Add a meta element specify the cover.
2792− Some EPUB e-readers, such as the Nook, require a meta element inside the
2793− OPF metadata block to ensure the cover image is properly displayed.
2794− (Kelsey Hightower)
2795−
2796− * HTML writer: Use embed tag for images with non-image extensions.
2797− (e.g. PDFs). Closes #264.
2798−
2799− * LaTeX writer: Improved tables.
2800−
2801− + More space between lines, top-align cells.
2802− + Use ctable package, which allows footnotes and
2803− provides additional options.
2804− + Made cell alignments work in multiline tables.
2805− + Closes #271, #272.
2806−
2807− * Un-URI-escape image filenames in LaTeX, ConTeXt, RTF, Texinfo.
2808− Also do this when copying image files into EPUBs and ODTs.
2809− Closes #263.
2810−
2811− * Changed to github issue tracker.
2812−
2813− * Added failing emph/strong markdown test case due to Perry Wagle.
2814−
2815− * Slidy improvements:
2816− + Updated to use Slidy2.
2817− + Fixed bug, unclosed div tag.
2818− + Added `duration` variable in template.
2819− Setting this activates the timer.
2820− + Use 'titlepage' instead of 'cover' for title div.
2821−
2822−pandoc (1.8.1.1)
2823−
2824− * `markdown2pdf`: Removed some debugging lines accidentally included
2825− in the 1.8.1 release. With those lines, the temp directory is created
2826− in the working directory, and it is not deleted. This fix restores
2827− the original behavior.
2828−
2829−pandoc (1.8.1)
2830−
2831− * Added `--ascii` option. Currently supported only in HTML writer,
2832− which it causes to use numerical entities instead of UTF-8.
2833−
2834− * EPUB writer: `--toc` now works to provide a table of contents
2835− at the beginning of each chapter.
2836−
2837− * LaTeX writer: Change figure defaults to `htbp`.
2838− This prevents "too many unprocessed floats." Resolves
2839− Issue #285.
2840−
2841− * `Text.Pandoc.UTF8`: Encode filenames even when using recent
2842− base.
2843−
2844− * `markdown2pdf`: Fixed filename encoding issues. With help from Paulo
2845− Tanimoto. Resolves Issue #286.
2846−
2847− * HTML writer: Put line breaks in section divs.
2848−
2849− * `Text.Pandoc.Shared`: Make `writerSectionDivs` default to False.
2850−
2851−pandoc (1.8.0.3)
2852−
2853− * Fixed Source-repository stanza in cabal file.
2854−
2855−pandoc (1.8.0.2)
2856−
2857− * HTML writer:
2858−
2859− + Stringify alt text instead of converting to HTML.
2860− + Break lines after block elements, not inside tags.
2861− HTML output now closely resembles that of tidy. Resolves Issue #134.
2862−
2863− * Markdown reader: Fixed bug in footnote block parser (pointed out
2864− by Jesse Rosenthal). The problem arose when the blank line
2865− at the end of a footnote block contained indenting spaces.
2866−
2867− * Shared: Improved 'normalize' function so it normalizes Spaces too.
2868− In normal form, Space elements only occur to separate two non-Space
2869− elements. So, we never have [Space], or [, ..., Space].
2870−
2871− * Tests:
2872−
2873− + Improved Arbitrary instance.
2874− + Added timeout for test instances.
2875−
2876− * README:
2877−
2878− + Added section on four-space rule for lists. Resolves Issue #283.
2879− + Clarified optional arguments on math options.
2880−
2881− * markdown2pdf: Fixed bug with output file extensions.
2882− Previously `markdown2pdf test.txt -o test.en.pdf` would produce
2883− `test.pdf`, not `test.en.pdf`. Thanks to Paolo Tanimoto for the fix.
2884−
2885−pandoc (1.8.0.1)
2886−
2887− * Revised Interact.hs so that it works with the CPP macros
2888− in the UTF8 module.
2889−
2890− * Revised Setup.hs so that we don't call MakeManPage.hs unless
2891− the man pages are out of date.
2892−
2893−pandoc (1.8)
2894−
2895− [new features]
2896−
2897− * Support for citations using Andrea Rossato's `citeproc-hs` 0.3.
2898− You can now write, for example,
2899−
2900− Water is wet [see @doe99, pp. 33-35; also @smith04, ch. 1].
2901−
2902− and, when you process your document using `pandoc`, specifying
2903− a citation style using `--csl` and a bibliography using `--bibliography`,
2904− the citation will be replaced by an appropriately formatted
2905− citation, and a list of works cited will be added to the end
2906− of the document.
2907−
2908− This means that you can switch effortlessly between different citation
2909− and bibliography styles, including footnote, numerical, and author-date
2910− formats. The bibliography can be in any of the following formats: MODS,
2911− BibTeX, BibLaTeX, RIS, EndNote, EndNote XML, ISI, MEDLINE, Copac, or JSON.
2912− See the README for further details.
2913−
2914− Citations are supported in the markdown reader, using a special
2915− syntax, and in the LaTeX reader, using natbib or biblatex syntax.
2916− (Thanks to Nathan Gass for the natbib and biblatex support.)
2917−
2918− * New `textile` reader and writer. Thanks to Paul Rivier for contributing
2919− the `textile` reader, an almost complete implementation of the textile
2920− syntax used by the ruby [RedCloth library](http://redcloth.org/textile).
2921− Resolves Issue #51.
2922−
2923− * New `org` writer, for Emacs Org-mode, contributed by Puneeth Chaganti.
2924−
2925− * New `json` reader and writer, for reading and writing a JSON
2926− representation of the native Pandoc AST. These are much faster
2927− than the `native` reader and writer, and should be used for
2928− serializing Pandoc to text. To convert between the JSON representation
2929− and native Pandoc, use `encodeJSON` and `decodeJSON` from
2930− `Text.JSON.Generic`.
2931−
2932− * A new `jsonFilter` function in `Text.Pandoc` makes it easy
2933− to write scripts that transform a JSON-encoded pandoc document.
2934− For example:
2935−
2936− -- removelinks.hs - removes links from document
2937− import Text.Pandoc
2938− main = interact $ jsonFilter $ bottomUp removeLink
2939− where removeLink (Link xs _) = Emph xs
2940− removeLink x = x
2941−
2942− To use this to remove links while translating markdown to LaTeX:
2943−
2944− pandoc -t json | runghc removelinks.hs | pandoc -f json -t latex
2945−
2946− * Attributes are now allowed in inline `Code` elements, for example:
2947−
2948− In this code, `ulist ! [theclass "special"] << elts`{.haskell} is...
2949−
2950− The attribute syntax is the same as for delimited code blocks.
2951− `Code` inline has an extra argument place for attributes, just like
2952− `CodeBlock`. Inline code will be highlighted in HTML output, if pandoc
2953− is compiled with highlighting support. Resolves Issue #119.
2954−
2955− * New `RawBlock` and `RawInline` elements (replacing `RawHtml`,
2956− `HtmlInline`, and `TeX`) provide lots of flexibility in writing
2957− scripts to transform Pandoc documents. Scripts can now change
2958− how each element is rendered in each output format.
2959−
2960− * You can now define LaTeX macros in markdown documents, and pandoc
2961− will apply them to TeX math. For example,
2962−
2963− \newcommand{\plus}[2]{#1 + #2}
2964− $\plus{3}{4}$
2965−
2966− yields `3+4`. Since the macros are applied in the reader, they
2967− will work in every output format, not just LaTeX.
2968−
2969− * LaTeX macros can also be used in LaTeX documents (both in math
2970− and in non-math contexts).
2971−
2972− * A new `--mathjax` option has been added for displaying
2973− math in HTML using MathJax. Resolves issue #259.
2974−
2975− * Footnotes are now supported in the RST reader. (Note, however,
2976− that unlike docutils, pandoc ignores the numeral or symbol used in
2977− the note; footnotes are put in an auto-numbered ordered list.)
2978− Resolves Issue #258.
2979−
2980− * A new `--normalize` option causes pandoc to normalize the AST
2981− before writing the document. This means that, for example,
2982− `*hi**there*` will be rendered as `<em>hithere</em>`
2983− instead of `<em>hi</em><em>there</em>`. This is not the default,
2984− because there is a significant performance penalty.
2985−
2986− * A new `--chapters` command-line option causes headers
2987− in DocBook, LaTeX, and ConTeXt to start with "chapter" (level one).
2988− Resolves Issue #265.
2989−
2990− * In DocBook output, `<chapter>` is now used for top-level
2991− headers if the template contains `<book>`. Resolves Issue #265.
2992−
2993− * A new `--listings` option in `pandoc` and `markdown2pdf` causes
2994− the LaTeX writer to use the listings package for code blocks.
2995− (Thanks to Josef Svennigsson for the pandoc patch, and Etienne
2996− Millon for the markdown2pdf patch.)
2997−
2998− * `markdown2pdf` now supports `--data-dir`.
2999−
3000− * URLs in autolinks now have class "url" so they can be styled.
3001−
3002− * Improved prettyprinting in most formats. Lines will be wrapped
3003− more evenly and duplicate blank lines avoided.
3004−
3005− * New `--columns` command-line option sets the column width for
3006− line wrapping and relative width calculations for tables.
3007−
3008− * Made `--smart` work in HTML, RST, and Textile readers, as well
3009− as markdown.
3010−
3011− * Added `--html5` option for HTML5 output.
3012−
3013− * Added support for listings package in LaTeX reader
3014− (Puneeth Chaganti).
3015−
3016− * Added support for simple tables in the LaTeX reader.
3017−
3018− * Added support for simple tables in the HTML reader.
3019−
3020− * Significant performance improvements in many readers and writers.
3021−
3022− [API and program changes]
3023−
3024− * Moved `Text.Pandoc.Definition` from the `pandoc` package to a new
3025− auxiliary package, `pandoc-types`. This will make it possible for other
3026− programs to supply output in Pandoc format, without depending on the whole
3027− pandoc package.
3028−
3029− * Added `Attr` field to `Code`.
3030−
3031− * Removed `RawHtml`, `HtmlInline`, and `TeX` elements; added generic
3032− `RawBlock` and `RawInline`.
3033−
3034− * Moved generic functions to `Text.Pandoc.Generic`. Deprecated
3035− `processWith`, replacing it with two functions, `bottomUp` and `topDown`.
3036− Removed previously deprecated functions `processPandoc` and `queryPandoc`.
3037−
3038− * Added `Text.Pandoc.Builder`, for building `Pandoc` structures.
3039−
3040− * `Text.Pandoc` now exports association lists `readers` and `writers`.
3041−
3042− * Added `Text.Pandoc.Readers.Native`, which exports `readNative`.
3043− `readNative` can now read full pandoc documents, block lists, blocks,
3044− inline lists, or inlines. It will interpret `Str "hi"`
3045− as if it were `Pandoc (Meta [] [] []) [Plain [Str "hi"]]`.
3046− This should make testing easier.
3047−
3048− * Removed deprecated `-C/--custom-header` option.
3049− Use `--template` instead.
3050−
3051− * `--biblio-file` has been replaced by `--bibliography`.
3052− `--biblio-format` has been removed; pandoc now guesses the format
3053− from the file extension (see README).
3054−
3055− * pandoc will treat an argument as a URI only if it has an
3056− `http(s)` scheme. Previously pandoc would treat some
3057− Windows pathnames beginning with `C:/` as URIs.
3058−
3059− * The `--sanitize-html` option and the `stateSanitize` field in
3060− `ParserState` have been removed. Sanitization is better done in the
3061− resulting HTML using `xss-sanitize`, which is based on pandoc's
3062− sanitization, but improved.
3063−
3064− * pandoc now adds a newline to the end of its output in fragment
3065− mode (= not `--standalone`).
3066−
3067− * Added support for `lang` in `html` tag in the HTML template,
3068− so you can do `pandoc -s -V lang=es`, for example.
3069−
3070− * `highlightHtml` in `Text.Pandoc.Highlighting` now takes
3071− a boolean argument that selects between "inline" and
3072− "block" HTML.
3073−
3074− * `Text.Pandoc.Writers.RTF` now exports `rtfEmbedImage`.
3075− Images are embedded in RTF output when possible (png, jpeg).
3076− Resolves Issue #275.
3077−
3078− * Added `Text.Pandoc.Pretty`. This is better suited for pandoc than the
3079− `pretty` package. Changed all writers that used
3080− `Text.PrettyPrint.HughesPJ` to use `Text.Pandoc.Pretty` instead.
3081−
3082− * Rewrote `writeNative` using the new prettyprinting module. It is
3083− now much faster. The output has been made more consistent and compressed.
3084− `writeNative` is also now sensitive to writerStandalone`, and will simply
3085− `print a block list if writerStandalone` is False.
3086−
3087− * Removed `Text.Pandoc.Blocks`. `Text.Pandoc.Pretty` allows you to define
3088− blocks and concatenate them, so a separate module is no longer needed.
3089−
3090− * `Text.Pandoc.Shared`:
3091−
3092− + Added `writerColumns`, `writerChapters`, and `writerHtml5` to
3093− `WriterOptions`.
3094− + Added `normalize`.
3095− + Removed unneeded prettyprinting functions:
3096− `wrapped`, `wrapIfNeeded`, `wrappedTeX`, `wrapTeXIfNeeded`, `hang'`,
3097− `BlockWrapper`, `wrappedBlocksToDoc`.
3098− + Made `splitBy` take a test instead of an element.
3099− + Added `findDataFile`, refactored `readDataFile`.
3100− + Added `stringify`. Rewrote `inlineListToIdentifier` using `stringify`.
3101− + Fixed `inlineListToIdentifier` to treat '\160' as ' '.
3102−
3103− * `Text.Pandoc.Readers.HTML`:
3104−
3105− + Removed `rawHtmlBlock`, `anyHtmlBlockTag`, `anyHtmlInlineTag`,
3106− `anyHtmlTag`, `anyHtmlEndTag`, `htmlEndTag`, `extractTagType`,
3107− `htmlBlockElement`, `htmlComment`
3108− + Added `htmlTag`, `htmlInBalanced`, `isInlineTag`, `isBlockTag`,
3109− `isTextTag`
3110−
3111− * Moved `smartPunctuation` from `Text.Pandoc.Readers.Markdown`
3112− to `Text.Pandoc.Readers.Parsing`, and parameterized it with
3113− an inline parser.
3114−
3115− * Added `nonspaceChar` to `Text.Pandoc.Parsing`.
3116−
3117− * Ellipses are no longer allowed to contain spaces.
3118− Previously we allowed '. . .', ' . . . ', etc. This caused
3119− too many complications, and removed author's flexibility in
3120− combining ellipses with spaces and periods.
3121−
3122− * Allow linebreaks in URLs (treat as spaces). Also, a string of
3123− consecutive spaces or tabs is now parsed as a single space. If you have
3124− multiple spaces in your URL, use `%20%20`.
3125−
3126− * `Text.Pandoc.Parsing`:
3127−
3128− + Removed `refsMatch`.
3129− + Hid `Key` constructor.
3130− + Removed custom `Ord` and `Eq` instances for `Key`.
3131− + Added `toKey` and `fromKey` to convert between `Key` and `[Inline]`.
3132− + Generalized type on `readWith`.
3133−
3134− * Small change in calculation of relative widths of table columns.
3135− If the size of the header > the specified column width, use
3136− the header size as 100% for purposes of calculating
3137− relative widths of columns.
3138−
3139− * Markdown writer now uses some pandoc-specific features when `--strict`
3140− is not specified: `\` newline is used for a hard linebreak instead of
3141− two spaces then a newline. And delimited code blocks are used when
3142− there are attributes.
3143−
3144− * HTML writer: improved gladTeX output by setting ENV appropriately
3145− for display or inline math (Jonathan Daugherty).
3146−
3147− * LaTeX writer: Use `\paragraph`, `\subparagraph` for level 4,5 headers.
3148−
3149− * LaTeX reader:
3150−
3151− + `\label{foo}` and `\ref{foo}` now become `{foo}` instead of `(foo)`.
3152− + `\index{}` commands are skipped.
3153−
3154− * Added `fontsize` variable to default LaTeX template.
3155− This makes it easy to set the font size using `markdown2pdf`:
3156− `markdown2pdf -V fontsize=12pt input.txt`.
3157−
3158− * Fixed problem with strikeout in LaTeX headers when using
3159− hyperref, by adding a command to the default LaTeX template
3160− that disables `\sout` inside pdf strings. Thanks to Joost Kremers
3161− for the fix.
3162−
3163− * The `COLUMNS` environment variable no longer has any effect.
3164−
3165− [under-the-hood improvements]
3166−
3167− * Pandoc now compiles with GHC 7. (This alone leads to a
3168− significant performance improvement, 15-20%.)
3169−
3170− * Completely rewrote HTML reader using tagsoup as a lexer. The
3171− new reader is faster and more accurate. Unlike the
3172− old reader, it does not get bogged down on some input
3173− (Issues #277, 255). And it handles namespaces in tags
3174− (Issue #274).
3175−
3176− * Replaced `escapeStringAsXML` with a faster version.
3177−
3178− * Rewrote `spaceChar` and some other parsers in Text.Pandoc.Parsing
3179− for a significant performance boost.
3180−
3181− * Improved performance of all readers by rewriting parsers.
3182−
3183− * Simplified Text.Pandoc.CharacterReferences by using
3184− entity lookup functions from TagSoup.
3185−
3186− * `Text.Pandoc.UTF8` now uses the unicode-aware IO functions
3187− from `System.IO` if base >= 4.2. This gives support for
3188− windows line endings on windows.
3189−
3190− * Remove duplications in documentation by generating the
3191− pandoc man page from README, using `MakeManPage.hs`.
3192−
3193− * README now includes a full description of markdown syntax,
3194− including non-pandoc-specific parts. A new `pandoc_markdown`
3195− man page is extracted from this, so you can look up markdown
3196− syntax by doing `man pandoc_markdown`.
3197−
3198− * Completely revised test framework (with help from Nathan Gass).
3199− The new test framework is built when the `tests` Cabal flag is set. It
3200− includes the old integration tests, but also some new unit and quickcheck
3201− tests. Test output has been much improved, and you can now specify a glob
3202− pattern after `cabal test` to indicate which tests should be run;
3203− for example `cabal test citations` will run all the citation tests.
3204−
3205− * Added a shell script, `stripansi.sh`, for filtering ANSI control
3206− sequences from test output: `cabal test | ./stripansi.sh > test.log`.
3207−
3208− * Added `Interact.hs` to make it easier to use ghci while developing.
3209− `Interact.hs` loads `ghci` from the `src` directory, specifying
3210− all the options needed to load pandoc modules (including
3211− specific package dependencies, which it gets by parsing
3212− dist/setup-config).
3213−
3214− * Added `Benchmark.hs`, testing all readers + writers using criterion.
3215−
3216− * Added `stats.sh`, to make it easier to collect and archive
3217− benchmark and lines-of-code stats.
3218−
3219− * Added upper bounds to all cabal dependencies.
3220−
3221− * Include man pages in extra-source-files. This allows users to
3222− install pandoc from the tarball without needing to build the man
3223− pages.
3224−
3225− [bug fixes]
3226−
3227− * Filenames are encoded as UTF8. Resolves Issue #252.
3228−
3229− * Handle curly quotes better in `--smart` mode. Previously, curly quotes
3230− were just parsed literally, leading to problems in some output formats.
3231− Now they are parsed as `Quoted` inlines, if `--smart` is specified.
3232− Resolves Issue #270.
3233−
3234− * Text.Pandoc.Parsing: Fixed bug in grid table parser.
3235− Spaces at end of line were not being stripped properly,
3236− resulting in unintended LineBreaks.
3237−
3238− * Markdown reader:
3239−
3240− + Allow HTML comments as inline elements in markdown.
3241− So, `aaa <!-- comment --> bbb` can be a single paragraph.
3242− + Fixed superscripts with links: `^[link](/foo)^` gets
3243− recognized as a superscripted link, not an inline note followed by
3244− garbage.
3245− + Fixed regression, making markdown reference keys case-insensitive again.
3246− Resolves Issue #272.
3247− + Properly handle abbreviations (like `Mr.`) at the end of a line.
3248− + Better handling of intraword underscores, avoiding exponential
3249− slowdowns in some cases. Resolves Issue #182.
3250− + Fixed bug in alignments in tables with blank rows in the header.
3251−
3252− * RST reader:
3253−
3254− + Field lists now allow spaces in field names, and
3255− block content in field values. (Thanks to Lachlan Musicman
3256− for pointing out the bug.)
3257− + Definition list items are now always `Para` instead of
3258− `Plain`, matching behavior of `rst2xml.py`.
3259− + In image blocks, the description is parsed properly and
3260− used for the alt attribute, not also the title.
3261− + Skip blank lines at beginning of file. Resolves
3262− Debian #611328.
3263−
3264− * LaTeX reader:
3265−
3266− + Improved parsing of preamble.
3267− Previously you'd get unexpected behavior on a document that
3268− contained `\begin{document}` in, say, a verbatim block.
3269− + Allow spaces between `\begin` or `\end` and `{`.
3270− + Support `\L` and `\l`.
3271− + Skip comments inside paragraphs.
3272−
3273− * LaTeX writer:
3274−
3275− + Escape strings in `\href{..}`.
3276− + In nonsimple tables, put cells in `\parbox`.
3277−
3278− * OpenDocument writer: don't print raw TeX.
3279−
3280− * Markdown writer:
3281−
3282− + Fixed bug in `Image`. URI was getting unescaped twice!
3283− + Avoid printing extra blank lines at the end if there are
3284− no notes or references.
3285−
3286− * LaTeX and ConTeXt: Escape `[` and `]` as `{[}` and `{]}`.
3287− This avoids unwanted interpretation as an optional argument.
3288−
3289− * ConTeXt writer: Fixed problem with inline code. Previously
3290− `}` would be rendered `\type{}}`. Now we check the string for '}' and '{'.
3291− If it contains neither, use `\type{}`; otherwise use `\mono{}`
3292− with an escaped version of the string.
3293−
3294− * `:` now allowed in HTML tags. Resolves Issue #274.
3295−
3296−pandoc (1.6)
3297−
3298− [ John MacFarlane ]
3299−
3300− * New EPUB and HTML Slidy writers. (Issue #122)
3301−
3302− - EPUB is a standard ebook format, used in Apple's iBooks for
3303− the iPad and iPhone, Barnes and Noble's nook reader, the Sony
3304− reader, and many other devices.
3305− - Slidy, like S5, is a system for producing HTML+javascript slide
3306− shows.
3307−
3308− * All input is assumed to be UTF-8, no matter what the locale and ghc
3309− version, and all output is UTF-8. This reverts to pre-1.5 behavior.
3310− Also, a BOM, if present, is stripped from the input.
3311−
3312− * Markdown now supports grid tables, whose cells can contain
3313− arbitrary block elements. (Issue #43)
3314−
3315− * Sequentially numbered example lists in markdown with `@` marker.
3316−
3317− * Markdown table captions can begin with a bare colon and no longer need
3318− to include the English word "table." Also, a caption can now occur
3319− either before or after the table. (Issue #227)
3320−
3321− * New command-line options:
3322−
3323− - `--epub-stylesheet` allows you to specify a CSS file that will
3324− be used to style your ebook.
3325− - `--epub-metadata` allows you to specify metadata for the ebook.
3326− - `--offline` causes the generated HTML slideshow to include all
3327− needed scripts and stylesheets.
3328− - `--webtex` causes TeX math to be converted to images using the
3329− Google Charts API (unless a different URL is specified).
3330− - `--section-divs` causes div tags to be added around each section
3331− in an HTML document. (Issue #230, 239)
3332−
3333− * Default behavior of S5 writer in standalone mode has changed:
3334− previously, it would include all needed scripts and stylesheets
3335− in the generated HTML; now, only links are included unless
3336− the `--offline` option is used.
3337−
3338− * Default behavior of HTML writer has changed. Between 1.2 and 1.5,
3339− pandoc would enclose sections in div tags with identifiers on the
3340− div tags, so that the sections can be manipulated in javascript.
3341− This caused undesirable interactions with raw HTML div tags. So,
3342− starting with 1.6, the default is to put the identifiers directly
3343− on the header tags, and not to include the divs. The `--section-divs`
3344− option selects the 1.2-1.5 behavior.
3345−
3346− * API changes:
3347−
3348− - `HTMLMathMethod`: Added `WebTeX`, removed `MimeTeX`.
3349− - `WriterOptions`: Added `writerUserDataDir`, `writerSourceDirectory`,
3350− `writerEPUBMetadata` fields. Removed `writerIncludeBefore`,
3351− `writerIncludeAfter`.
3352− - Added `headerShift` to `Text.Pandoc.Shared`.
3353− - Moved parsing code and `ParserState` from `Text.Pandoc.Shared`
3354− to a new module, `Text.Pandoc.Parsing`.
3355− - Added `stateHasChapters` to `ParserState`.
3356− - Added `HTMLSlideVariant`.
3357− - Made `KeyTable` a map instead of an association list.
3358− - Added accessors for `Meta` fields (`docTitle`, `docAuthors`,
3359− `docDate`).
3360− - `Pandoc`, `Meta`, `Inline`, and `Block` have been given `Ord`
3361− instances.
3362− - Reference keys now have a type of their own (`Key`), with its
3363− own `Ord` instance for case-insensitive comparison.
3364− - Added `Text.Pandoc.Writers.EPUB`.
3365− - Added `Text.Pandoc.UUID`.
3366− - Removed `Text.Pandoc.ODT`, added `Text.Pandoc.Writers.ODT`.
3367− Removed `saveOpenDocumentAsODT`, added `writeODT`.
3368− - Added `Text.Pandoc.Writers.Native` and `writeNative`.
3369− Removed `prettyPandoc`.
3370− - Added `Text.Pandoc.UTF8` for portable UTF8 string IO.
3371− - Removed `Text.Pandoc.Writers.S5` and the `writeS5` function.
3372− Moved `s5Includes` to a new module, `Text.Pandoc.S5`.
3373− To write S5, you now use `writeHtml` with `writerSlideVariant`
3374− set to `S5Slides` or `SlidySlides`.
3375−
3376− * Template changes. If you use custom templates, please update them,
3377− particularly if you use syntax highlighting with pandoc. The old HTML
3378− templates hardcoded highlighting CSS that will no longer work with
3379− the most recent version of highlighting-kate.
3380−
3381− - HTML template: avoid empty meta tag if no date.
3382− - HTML template: Use default highlighting CSS from highlighting-kate
3383− instead of hard-coding the CSS into the template.
3384− - HTML template: insert-before text goes before the title, and
3385− immediately after the <body> tag, as documented. (Issue #241)
3386− - Added slidy and s5 templates.
3387− - Added amssymb to preamble of latex template. (github Issue 1)
3388−
3389− * Removed excess newlines at the end of output. Note: because output
3390− will not contain an extra newline, you may need to make adjustments
3391− if you are inserting pandoc's output into a template.
3392−
3393− * In S5 and slidy, horizontal rules now cause a new slide, so you
3394− are no longer limited to one slide per section.
3395−
3396− * Improved handling of code in man writer. Inline code is now monospace,
3397− not bold, and code blocks now use .nf (no fill) and .IP (indented para).
3398−
3399− * HTML reader parses `<tt>` as Code. (Issue #247)
3400−
3401− * html+lhs output now contains bird tracks, even when compiled without
3402− highlighting support. (Issue #242)
3403−
3404− * Colons are now no longer allowed in autogenerated XML/HTML identifiers,
3405− since they have a special meaning in XML.
3406−
3407− * Code improvements in ODT writer. Remote images are now replaced with
3408− their alt text rather than a broken link.
3409−
3410− * LaTeX reader improvements:
3411−
3412− - Made latex `\section`, `\chapter` parsers more forgiving of
3413− whitespace.
3414− - Parse `\chapter{}` in latex.
3415− - Changed `rawLaTeXInline` to accept `\section`, `\begin`, etc.
3416− - Use new `rawLaTeXInline'` in LaTeX reader, and export `rawLaTeXInline`
3417− for use in markdown reader.
3418− - Fixes bug wherein `\section{foo}` was not recognized as raw TeX
3419− in markdown document.
3420−
3421− * LaTeX writer: images are automatically shrunk if they would extend
3422− beyond the page margin.
3423−
3424− * Plain, markdown, RST writers now use unicode for smart punctuation.
3425−
3426− * Man writer converts math to unicode when possible, as in other writers.
3427−
3428− * `markdown2pdf` can now recognize citeproc options.
3429−
3430− * Command-line arguments are converted to UTF-8. (Issue #234)
3431−
3432− * `Text.Pandoc.TeXMath` has been rewritten to use texmath's parser.
3433− This allows it to handle a wider range of formulas. Also, if a formula
3434− cannot be converted, it is left in raw TeX; formulas are no longer
3435− partially converted.
3436−
3437− * Unicode curly quotes are left alone when parsing smart quotes. (Issue
3438− #143)
3439−
3440− * Cabal file changes:
3441−
3442− - Removed parsec < 3 restriction.
3443− - Added 'threaded' flag for architectures where GHC lacks a threaded
3444− runtime.
3445− - Use 'threaded' only for markdown2pdf; it is not needed for pandoc.
3446− - Require highlighting-kate 0.2.7.
3447−
3448− * Use explicit imports from `Data.Generics`. Otherwise we have a
3449− conflict with the 'empty' symbol, introduced in syb >= 0.2. (Issue #237)
3450−
3451− * New data files: slidy/slidy.min.js, slidy/slidy.min.css, epub.css.
3452−
3453−pandoc (1.5.1.1)
3454−
3455− [ John MacFarlane ]
3456−
3457− * Fixed uniqueIdent in Shared so that header identifiers work as
3458− advertized in the README and are are valid XHTML names.
3459−
3460−pandoc (1.5.1)
3461−
3462− [ John MacFarlane ]
3463−
3464− * Fixed treatment of unicode characters in URIs.
3465− + Shared now exports escapeURI and unescapeURI. These handle
3466− UTF8 encoding and decoding as well as URI escaping/unescaping.
3467− + Shared: uri and emailAddress now return a pair of the original
3468− parsed text and the escaped URI (in the latter case, with
3469− the mailto: prefix).
3470− + HTML reader: unsanitaryURI has been modified to allow unicode
3471− high characters in a URI.
3472− + Readers: All link and image URIs are now escaped using
3473− escapeURI.
3474− + Markdown and RST writers: unescapeURI is used so that URIs
3475− in these formats are human-readable.
3476−
3477− * Setup.hs: Don't assume that the build directory is "dist".
3478− Instead, get it from localBuildInfo.
3479−
3480− * OpenDocument writer: Use a Map for stTextStyleAttr.
3481− This avoids duplicates (and invalid xml). Resolves Issue #222.
3482−
3483−pandoc (1.5.0.1)
3484−
3485− [ John MacFarlane ]
3486−
3487− * HTML writer: Fixed error in math writer (with MathML option)
3488− that caused an infinite loop for unparsable MathML.
3489−
3490−pandoc (1.5)
3491−
3492− [ John MacFarlane ]
3493−
3494− * Added --mathml option. When this is selected, pandoc will convert
3495− TeX math into MathML.
3496− + Added data/MathMLinHTML.js, which is included when no URL is
3497− provided for --mathml. This allows MathML to be displayed (in
3498− better browsers) as text/html.
3499− + Removed Text.Pandoc.LaTeXMathML. The module was no longer
3500− necessary; it was replaced by two lines in pandoc.hs.
3501− + Replaced LaTeXMathML.js.commend and LaTeXMathML.js.packed with a
3502− single combined file, LaTeXMathML.js.
3503−
3504− * Added --data-dir option.
3505− This specifies a user data directory. If not specified, will default
3506− to ~/.pandoc on unix or Application Data\pandoc on Windows.
3507− Files placed in the user data directory will override system default
3508− data files.
3509−
3510− * Added Maybe datadir parameter to readDataFile, saveOpenDocumentAsODT,
3511− latexMathMLScript, s5HeaderIncludes, and getDefaultTemplate. If
3512− Nothing, no user directory is searched for an override.
3513−
3514− * Added 'plain' output format. This is similar to markdown, but
3515− removes links, pictures, inline formatting, and most anything that
3516− looks even vaguely markupish. The function writePlain is exported by
3517− Text.Pandoc.Writers.Markdown, with which it shares most of its code.
3518−
3519− * Allow multi-line titles and authors in meta block.
3520− Titles may span multiple lines, provided continuation lines
3521− begin with a space character. Separate authors may be put on
3522− multiple lines, provided each line after the first begins with
3523− a space character. Each author must fit on one line. Multiple
3524− authors on a single line may still be separated by a semicolon.
3525− Based on a patch by Justin Bogner.
3526−
3527− * When given an absolute URI as parameter, pandoc will try to fetch
3528− the content via HTTP. So you can do:
3529− 'pandoc -r html -w markdown http://www.fsf.org'
3530− Adds dependency on HTTP.
3531−
3532− * Made HTML reader much more forgiving.
3533− + Incorporated idea (from HXT) that an element can be closed
3534− by an open tag for another element.
3535− + Javascript is partially parsed to make sure that a <script>
3536− section is not closed by a </script> in a comment or string.
3537− + More lenient non-quoted attribute values.
3538− Now we accept anything but a space character, quote, or <>.
3539− This helps in parsing e.g. www.google.com!
3540− + Bare & signs are now parsed as a string. This is a common
3541− HTML mistake.
3542− + Skip a bare < in malformed HTML.
3543−
3544− * Removed html2markdown and hsmarkdown.
3545− + html2markdown is no longer needed, since you can now pass URI
3546− arguments to pandoc and directly convert web pages. (Note,
3547− however, that pandoc assumes the pages are UTF8. html2markdown
3548− made an attempt to guess the encoding and convert them.)
3549− + hsmarkdown is pointless -- a large executable that could be
3550− replaced by 'pandoc --strict'.
3551−
3552− * In most writers, an image in a paragraph by itself is now rendered
3553− as a figure, with the alt text as the caption. (Texinfo, HTML, RST,
3554− MediaWiki, Docbook, LaTeX, ConTeXt, HTML.) Other images are
3555− rendered inline.
3556−
3557− * Depend on extensible-exceptions. This allows pandoc to be compiled
3558− on GHC 6.8.
3559−
3560− * Added --base-header-level option. For example, --base-header-level=2
3561− will change level 1 headers to level 2, level 2 to level 3, etc.
3562− Closes Debian #563416.
3563−
3564− * Incomplete support for RST tables (simple and grid).
3565− Thanks to Eric Kow. Colspans and rowspans not yet supported.
3566−
3567− * Added accessors (docTitle, docAuthors, docDate) to Meta type.
3568−
3569− * MediaWiki writer: format links with relative URLs as wikilinks.
3570− The new rule: If the link target is an absolute URL, an external
3571− link is created. Otherwise, a wikilink is created.
3572−
3573− * Text.Pandoc.Shared: Export uniqueIdent, and don't allow tilde in
3574− identifier. Note: This may break links to sections that involve
3575− tildes.
3576−
3577− * Markdown(+lhs) reader: handle "inverse bird tracks."
3578− Inverse bird tracks (<) are used for haskell example code that is not
3579− part of the literate Haskell program. Resolves Issue #211.
3580−
3581− * LaTeX reader:
3582− + Recognize '\ ' (interword space).
3583− + Recognize nonbreaking space '~'.
3584− + Ignore \section, \pdfannot, \pdfstringdef. Ignore alt title in
3585− section headers. Don't treat \section as inline LaTeX.
3586− Resolves Issue #202.
3587− + LaTeX reader: allow any special character to be escaped.
3588− Resolves Issue #221.
3589− + LaTeX reader: treat \paragraph and \subparagraph as level 4, 5
3590− headers. Resolves Issue #207.
3591−
3592− * Use template variables for include-before/after.
3593− + These options now imply -s; previously they worked also in fragment
3594− mode.
3595− + Users can now adjust position of include-before and include-after
3596− text in the templates.
3597− + Default position of include-before moved back (as it was before 1.4)
3598− before table of contents.
3599− + Resolves Issue #217.
3600−
3601− * Don't print an empty table header: (all writers).
3602− Resolves Issue #210.
3603−
3604− * HTML, Docbook writer: Use tbody, thead, and cols in tables.
3605−
3606− * HTML writer: Don't include TOC div if table of contents is empty.
3607−
3608− * Markdown writer: Fixed citations.
3609− Previously the markdown writer printed raw citation codes, e.g.
3610− [geach1970], rather than the expanded citations provided by
3611− citeproc, e.g. (Geach 1970). Now it prints the expanded citations.
3612− This means that the document produced can be processed as a markdown
3613− document without citeproc. Thanks to dsanson for reporting, and
3614− Andrea Rossato for the patch.
3615−
3616− * Improved and simplified title block in context template.
3617− Previously it caused an error if there was no title.
3618− This method should also be easier for users to customize.
3619−
3620− * Markdown reader:
3621− + Treat p., pp., sec., ch., as abbreviations in smart mode.
3622− + Disallow blank lines in inline code span.
3623− + Allow footnotes to be indented < 4 spaces.
3624− This fixes a regression. A test case has been added.
3625− + Escape spaces in URLs as %20. Previously they were incorrectly
3626− escaped as +, which is appropriate only for the query part of
3627− a URL. Resolves Issue #220.
3628− + Require two spaces after capital letter + period for list item.
3629− Otherwise "E. coli" starts a list. This might change the semantics
3630− of some existing documents, since previously the two-space
3631− requirement was only enforced when the second word started
3632− with a capital letter. But it is consistent with the existing
3633− documentation and follows the principle of least surprise.
3634− Resolves Issue #212.
3635−
3636− * LaTeX template: redefine labelwidth when using enumerate package.
3637− Otherwise the list labels (numbers) often extend past the left
3638− margin, which looks bad.
3639−
3640− * Mediawiki writer: Don't print a "== Notes ==" header before
3641− references. This is too English-centric. Writers can provide their
3642− own header at the end of the document.
3643−
3644− * Promoted mediawiki headers. '= head =' is now level 1, '== head =='
3645− level 2, etc. This seems to be correct; it's only by convention
3646− that wikipedia articles have level 2 headers at most.
3647− Patch due to Eric Kow.
3648−
3649− * RunTests.hs: Set LANG to a UTF-8 locale. Use 'pandoc --data-dir=' so
3650− data files don't need to have been installed. This removes the need to
3651− set HOME.
3652−
3653− * HTML reader:
3654− + Handle spaces before <html>. Resolves Issue #216.
3655− + Be forgiving in parsing a bare list within a list.
3656− The following is not valid xhtml, but the intent is clear:
3657− <ol>
3658− <li>one</li>
3659− <ol><li>sub</li></ol>
3660− <li>two</li>
3661− </ol>
3662− We'll treat the <ol> as if it's in a <li>. Resolves Issue #215.
3663−
3664− * Updated INSTALL instructions. cabal method is now promoted.
3665−
3666− * Updated markdown2pdf man page. It no longer says all pandoc options
3667− are accepted.
3668−
3669− * README/man pages: Removed advice to pipe through tidy before HTML
3670− reader. This is obsolete, now that we have a forgiving HTML parser.
3671−
3672− * LaTeX writer: set numbersections template variable, so
3673− the section numbering options work again.
3674−
3675− * Removed obsolete Makefile.
3676−
3677− * Website: renamed index.txt.in -> index.txt.
3678−
3679− * New batch file to make-windows-installer.
3680− + Removed old Makefile.windows
3681− + Added make-windows-installer.bat
3682− + Modified default installer name in pandoc-setup.iss
3683−
3684− * Removed freebsd and macports directories.
3685− They are no longer up to date.
3686−
3687− * Setup.hs:
3688− + Made man page building sensitive to build verbosity.
3689− + Improved detection of highlighting support in test hook.
3690− + Install wrapper scripts into cabal bin directory.
3691− + Also simplified installManpages.
3692− + Setup.hs: install manpages to mandir. Code borrowed from darcs.
3693−
3694− * Changed default of writerXeTeX to False.
3695−
3696− * HTML writer: don't include empty UL if --toc but no sections.
3697− Resolves Issue #199.
3698−
3699− * LaTeX writer:
3700−
3701− + If book, report, or memoir documentclass, use \chapter{}
3702− for first-level headers. Otherwise use \section{}.
3703− + Removed stLink, link template variable. Reason: we now always
3704− include hyperref in the template.
3705−
3706− * LaTeX template:
3707−
3708− + Only show \author if there are some.
3709− + Always include hyperref package. It is used not just for links but
3710− for toc, section heading bookmarks, footnotes, etc. Also added
3711− unicode=true on hyperref options.
3712−
3713− * markdown2pdf: always do at least two runs. hyperref bookmarks
3714− require this.
3715−
3716− * cabal file: Removed unneeded dependency on template-haskell.
3717−
3718− * Windows installer - fixed bug in data file locations.
3719− Resolves Issue #197.
3720−
3721− * Deprecated --custom-header in documentation.
3722− Removed old "Custom Headers" section in README.
3723−
3724−pandoc (1.4)
3725−
3726− [ John MacFarlane ]
3727−
3728− * Pandoc will now compile with either GHC 6.10 or 6.12.
3729− + Don't use System.IO.UTF8 when compiling with 6.12
3730− + Use -fno-warn-unused-do-bind option when compiling with 6.12
3731−
3732− * Replaced old headers with templates. Now users have much more
3733− control over the way documents appear in --standalone mode,
3734− and writer code is simplified. Resolves Issues #59, 147.
3735− Every effort has been made to retain backwards compatibilty.
3736− So, the --custom-header option should still work as before.
3737−
3738− + Added Text.Pandoc.Templates. This provides functions for
3739− retrieving default templates and for rendering templates.
3740− + System templates (in the pandoc data directory) can be
3741− overridden by user templates in $HOME/.pandoc/templates.
3742− + Removed Text.Pandoc.DefaultHeaders.
3743− + Removed data/headers directory.
3744− + Added templates directory.
3745− + Added writerTemplate and writerVariables fields to WriterOptions.
3746− + Removed writerTitlePrefix, writerHeader fields from WriterOptions.
3747− + Changed --print-default-header to --print-default-template.
3748− + Added --template option.
3749− + Added -V/--variable option to set custom template variables.
3750−
3751− * Pandoc no longer requires Template Haskell. Resolves Issue #186.
3752−
3753− + Removed need for TH in ODT module. Instead get reference.odt from
3754− data file at run time.
3755− + Removed TH dependency from S5 module. S5 module now exports
3756− s5HeaderIncludes, which pandoc.hs includes if writer is s5 and
3757− standalone.
3758− + Refactored LaTeXMathML not to use TH.
3759−
3760− * Meta is now Meta [Inline] [[Inline]] [Inline] rather than
3761− Meta [Inline] [String] String. Authors and date in Meta are now lists
3762− of Inline elements rather than raw strings. This means that they can
3763− be formatted and can include footnotes. NOTE: This may be a breaking
3764− change for those using pandoc as a library.
3765−
3766− * Added readDataFile to Text.Pandoc.Shared. This retrieves
3767− a data file from the user pandoc data directory (~/.pandoc
3768− on unix), or, if not found there, from the system data
3769− directory ($CABALDIR/shared/pandoc-VERSION/). All data
3770− files, including templates, LaTeXMathML.js, s5 styles,
3771− and reference.odt, can be overridden by the user.
3772−
3773− * s5 files moved from data/ui/default to s5/default.
3774−
3775− * Use unicode instead of entities in HTML and XML output. Resolves
3776− Issue #163.
3777−
3778− * Prettier HTML footnote references: put anchor inside sup,
3779− instead of other way. Resolves Issue #191. Thanks to
3780− infinity0x.
3781−
3782− * Added --xetex option to pandoc and markdown2pdf.
3783− If --xetex is specified, pandoc produces latex suitable for
3784− processing by xelatex, and markdown2pdf uses xelatex to create
3785− the PDF. Resolves Issue #185.
3786−
3787− * RTF writer: multiple authors now occupy multiple paragraphs rather
3788− than using a line break.
3789−
3790− * Man writer: now the "--after-body" will come after the "AUTHORS"
3791− section, whereas before it would come before it. This is a
3792− slight break from backwards compatibility.
3793−
3794− * Added --reference-odt option, so users may customize the styles
3795− used in pandoc-generated ODT files. Users may also place a
3796− default reference.odt in the ~\.pandoc directory.
3797−
3798− * ODT writer:
3799− + Indented and line-broke styles.xml so it can be modified more easily.
3800− + Omitted some unnecessary style declarations.
3801− + Don't wrap text in OpenDocument writer. The tags are too long, making
3802− wrapping ugly and pointless.
3803−
3804− * LaTeX reader: use \\ to separate multiple authors.
3805−
3806− * Markdown reader: use ; as separator between authors.
3807− This allows you to use ',' within author names: e.g. "John Jones, Jr."
3808−
3809− * S5 writer: use linebreak to separate authors in title page.
3810−
3811− * RST reader: Allow :: before lhs code block. The RST spec requires the
3812− :: before verbatim blocks. This :: should not be treated as literal
3813− colons. Resolves Issue #189.
3814−
3815− * Documented pandoc 1.3's new definition list syntax in README.
3816− (An oversight in the last release.)
3817−
3818− * markdown2pdf.hs:
3819− + interpret ! in a log as an error line.
3820− + --toc now works properly.
3821−
3822− * Changes in RunTests.hs:
3823− + Use the Diff library rather than a local copy of Diff.hs.
3824− (This vastly increases performance.) This change means that 'cabal
3825− test' presupposes that the Diff library is installed.
3826− + Removed tests/Diff.hs from cabal file.
3827− + Changed RunTests to use local environment. We need at least HOME, so
3828− pandoc can find its data directory.
3829−
3830− * Updated windows installer to install data files in the app directory.
3831−
3832− * Windows installer now installs portable wrappers hsmarkdown and
3833− markdown2pdf.
3834−
3835−pandoc (1.3)
3836−
3837− [ John MacFarlane ]
3838−
3839− * Added --id-prefix option (Issue #41). This adds a prefix to all
3840− automatically generated HTML identifiers, which helps prevent
3841− duplicate identifiers when you're generating a fragment (say a blog
3842− post).
3843−
3844− * Added --indented-code-classes option. This specifies classes
3845− to use for indented code blocks. (Patch due to buttock; Issue #87.)
3846−
3847− * --number-sections now affects HTML output as well as ConTeXt and LaTeX
3848− (Issue #150).
3849−
3850− * Improved syntax for markdown definition lists (Issue #24).
3851− Definition lists are now more compatible with PHP Markdown Extra.
3852− + You can have multiple definitions for a term (but still not
3853− multiple terms).
3854− + Multi-block definitions no longer need a column before each block
3855− (indeed, this will now cause multiple definitions).
3856− + The marker no longer needs to be flush with the left margin,
3857− but can be indented at or two spaces. Also, ~ as well as :
3858− can be used as the marker (this suggestion due to David
3859− Wheeler.)
3860− + There can now be a blank line between the term and the
3861− definitions.
3862−
3863− * Better looking simple tables. Resolves Issue #180.
3864− + Markdown reader: simple tables are now given column widths of 0.
3865− + Column width of 0 is interpreted as meaning: use default column width.
3866− + Writers now include explicit column width information only
3867− for multiline tables. (Exception: RTF writer, which requires
3868− column widths. In this case, columns are given equal widths,
3869− adding up to the text width.)
3870− + Simple tables should now look better in most output formats.
3871−
3872− * Allow markdown tables without headers (Issue #50).
3873− The new syntax is described in README. Also allow optional line of
3874− dashes at bottom of simple tables.
3875−
3876− * Compensate for width of final table column (Issue #144).
3877−
3878− * Treat a backslash followed by a newline as a hard line break
3879− in markdown. Resolves Issue #154. This is a nice alternative
3880− to markdown's "invisible" way of indicating hardline breaks
3881− using lines that end with two spaces.
3882−
3883− * Improved performance of markdown reader by ~10% by eliminating the
3884− need for a separate parsing pass for notes. Raw notes are now stored
3885− on the first pass (which parses references), then parsed when the
3886− note is inserted into the AST. The stateNotes field in ParserState
3887− is now a list of [(String, String)] pairs instead of [(String,
3888− [Block])].
3889−
3890− * In markdown reader, treat 4 or more * or _ in a row as literal
3891− text. (Trying to parse long strings of * or _ as strong or emph
3892− leads to exponential performance problems.)
3893−
3894− * Markdown reader: Use + rather than %20 for spaces in URLs.
3895−
3896− * Fixed htmlComment parser, adding a needed 'try'.
3897−
3898− * Don't print raw HTML in man output.
3899−
3900− * Allow . _ and ~ in header identifiers.
3901−
3902− * Specially mark code blocks that were "literate" in the input.
3903− They can then be treated differently in the writers. This allows
3904− authors to distinguish bits of the literate program they are writing
3905− from source code examples, even if the examples are marked as
3906− Haskell for highlighting. (Issue #174.)
3907−
3908− * Modified html+lhs output to use "haskell" highlighter instead
3909− of "literateHaskell". The highlighting module now adds bird tracks
3910− after highlighting (for HTML output), if the code block has the
3911− "literate" class. This gives better results, because kate's
3912− haskell highlighter is much better than the literateHaskell
3913− highlighter.
3914−
3915− * Fixed handling of footnotes in titles (HTML) and headers (LaTeX).
3916− (Issue #137.)
3917−
3918− * Support for "..code-block" directive in RST reader. Not core
3919− RST, but used in Sphinx for code blocks annotated with syntax
3920− information. Thanks to Luke Plant for the patch.
3921−
3922− * Added "head" to list of block-level HTML tags. Resolves
3923− Issue #108.
3924−
3925− * Added stripTags to Text.Pandoc.XML. This is used in the HTML writer.
3926−
3927− * Set utf-8 encoding in texinfo headers.
3928−
3929− * Docbook writer: add ids to sections. Use link for internal links.
3930− (Issue #60.)
3931−
3932− * Blank lines after lists in MediaWiki writer.
3933−
3934− * Properly handle commented-out list items in markdown.
3935− Resolves Issue #142. Example:
3936−
3937− - a
3938− <!--
3939− - b
3940− -->
3941− - c
3942−
3943− * Changed heuristic in compactify. compactify has to decide whether a
3944− Para that ends a list is a Para intentionally, or just because of
3945− the blank lines at the end of every list. In the latter case the
3946− Para is turned to a Plain. The old heuristic was: change final Para
3947− to Plain iff the other items all end in Plain. This produces bad
3948− results when, for example, an item contains just a Plain and an HTML
3949− comment, as it does in the list above. The new heuristic: change
3950− final Para to Plain iff the other items don't contain a Para.
3951−
3952− * Added % as an rst underline character. Resolves Issue #173.
3953−
3954− * Fix inline math parser so that \$ is allowed in math.
3955− Resolves Issue #169.
3956−
3957− * Translate \int (integral) into unicode when using unicode math
3958− method. Resolves Issue #177.
3959−
3960− * markdown2pdf.hs improvements:
3961− + Use System.IO.UTF8.
3962− + Print error messages on last attempt.
3963− + Do not create a backup when overwriting a PDF (Issue #166).
3964− + Accept --longopt=val options.
3965− + Added man/man1/markdown2pdf.1 to extra-tmp-files in cabal, so that
3966− it is properly cleaned.
3967−
3968− * Added haddock comments warning that readers assume \n line endings.
3969−
3970− * Updated COPYRIGHT file.
3971−
3972− * Makefile: Changed EXECSBASE so it doesn't pull in hsmarkdown &
3973− markdown2pdf. Otherwise strip tries to strip shell scripts when you
3974− install using 'make'.
3975−
3976− * Changed Makefile so it doesn't build Haskell wrappers.
3977−
3978− * Fixed Makefile so it doesn't try to build man pages in build-doc.
3979−
3980− * Install pcre3.dll in Windows install script; this allows us to
3981− package a version of pandoc with highlighting support.
3982−
3983−pandoc (1.2.1)
3984−
3985− [ John MacFarlane ]
3986−
3987− * Fixed regression with --preserveTabs. Brought back optPreserveTabs.
3988− The trick of setting tabStop to 0 to mean "preserve tabs" had a bad
3989− side effect: strings of 0 spaces were interpreted as indentation.
3990− So, with --preserve-tabs, unindented paragraphs were treated as
3991− code. Resolves Issue #138.
3992−
3993− * HTML writer: wrap sections in divs. Resolves Issue #70.
3994−
3995− + hierarchicalize has been rationalized; it builds a hierarchical
3996− representation of the document from the headers, and simultaneously
3997− gives each section a unique identifier based on the heading title.
3998− + Identifiers are now attached to the divs rather than
3999− to the headers themselves.
4000− + Table of content backlinks go to the beginning of the table, rather
4001− than to the section reference that was clicked.
4002− + Code for constructing identifiers has been moved to Text.Pandoc.Shared
4003− from the HTML writer, since it is now consumed only by
4004− hierarchicalize.
4005− + In --strict mode, pandoc just prints bare headings, as before
4006− (unless --toc has been specified).
4007− + In s5 output, it does not wrap sections in divs, as that seems to
4008− confuse the s5 javascript.
4009−
4010− * Man writer: break lines at end of each sentence. groff expects this
4011− and treats '.' and '?' differently when followed by line ending as
4012− opposed to ordinary space. Also, don't escape periods. Instead, use
4013− zero-width character \& to avoid unwanted interpretation of periods
4014− at start of line. Resolves Issue #148.
4015−
4016− * Markdown writer: Added '#' and '>' to list of characters to be
4017− escaped in markdown output. Removed '<', as it is not an officially
4018− escapable character. This partially resolves Issue #96.
4019−
4020− * Make --smart the default for man output format. Otherwise we have
4021− trouble dividing lists of endlines into sentences.
4022−
4023− * DocBook writer: Use language attribute to indicate source language
4024− in code blocks.
4025−
4026− * RST reader:
4027−
4028− + Allow # to continue list, even if the list was started with an
4029− explicit marker. For example:
4030−
4031− A. my list
4032− #. continued
4033−
4034− Resolves Issue #140.
4035− + Allow continuation lines in line blocks. Also added test cases for
4036− line blocks for RST reader. Resolves Issue #149.
4037− + Allow explicit links with spaces in URL: `link <to this>`_
4038−
4039− * Improved LaTeX reader's coverage of math modes. Remove displaymath*
4040− (which is not in LaTeX) and recognize all the amsmath environments
4041− that are alternatives to eqnarray, namely equation, equation*,
4042− gather, gather*, gathered, multline, multline*, align, align*,
4043− alignat, alignat*, aligned, alignedat, split. Resolves Issue #103.
4044− Thanks to shreevatsa.public for the patch.
4045−
4046− * Markdown reader:
4047−
4048− + Allow -, _, :, . in markdown attribute names. These are legal in
4049− XML attribute names.
4050− + Use non-breaking spaces in abbreviations.
4051− + Markdown reader: improved efficiency of abbreviation parsing.
4052− Instead of a separate abbrev parser, we just check for
4053− abbreviations each time we parse a string. This gives a huge
4054− performance boost with -S. Resolves Issue #141.
4055−
4056− * Improved efficiency of shared parsers: hexNum, htmlComment,
4057− whitespace, indentSpaces.
4058−
4059− * Export HTMLMathMethod in Text.Pandoc.
4060−
4061− * Export languagesByExtension in Text.Pandoc.Highlighting.
4062−
4063− * Added new Haskell version of markdown2pdf, due to
4064− Paulo Tanimoto. This should be more portable than the old
4065− shell script.
4066−
4067− * Made 'pandoc -v' more explicit about compiler options.
4068− Resolves Issue #139.
4069−
4070− * pandoc.hs: Made --strict compatible with --standalone, --toc.
4071−
4072− * Use Paths_pandoc to get version number, instead of hard-coding it
4073− into Text/Pandoc.hs.
4074−
4075−pandoc (1.2)
4076−
4077− [ John MacFarlane ]
4078−
4079− * Added support for literate Haskell. lhs support is triggered by
4080− '+lhs' suffixes in formats. For example, 'latex+lhs' is literate
4081− Haskell LaTeX. '.lhs' files are treated by default as literate
4082− markdown.
4083−
4084− + Added stateLiterateHaskell to parser state.
4085− + Added parser for lhsCodeBlock to Markdown, RST, LaTeX readers.
4086− + Added parser for |inline lhs| to LaTeX reader.
4087− + Added writerLiterateHaskell to WriterOptions.
4088− + Added lhs support to Markdown, RST, LaTeX, HTML writers.
4089− + Added definition of code environment to LaTeX header.
4090− + Added tests (run only if highlighting support compiled in).
4091− + Documented lhs features in man page and README.
4092−
4093− * In Text.Pandoc.Definition, added processWith, processWithM,
4094− and queryWith, and deprecated processPandoc and queryPandoc
4095− for these more general functions.
4096−
4097− * Fixed bug in mediawiki writer: improper closing tags in tables.
4098− Thanks to Benct Philip Jonsson for reporting the bug.
4099−
4100− * Added --email-obfuscation option.
4101−
4102− + Added writer option for email obfuscation.
4103− + Implemented email obfuscation options in HTML writer.
4104− + Added option to option parser.
4105− + Documented in README and pandoc man page.
4106− + Resolves Issue #97.
4107−
4108− * LaTeX writer: fixed bug with empty table cells.
4109− Resolves Issue #107. Thanks to rodja.trappe for the patch.
4110−
4111− * Fixed bug with header spacing in Markdown and RST writers.
4112− A null header (Meta [] [] []) should not cause a blank line
4113− at the beginning of output. But a blank line is needed between
4114− a non-null header and the main text.
4115−
4116− * Markdown reader: Relax spacing rules for $$ in display math. Now
4117− space and newlines are allowed after the opening $$ and before the
4118− closing $$. However, the display math cannot contain an entirely
4119− blank line. Resolves Issue #105.
4120−
4121− * Markdown reader: Gobble space after Plain blocks containing only
4122− raw html inline. Otherwise following header blocks are not parsed
4123− correctly, since the parser sees blank space before them. Resolves
4124− Issue #124.
4125−
4126− * Markdown reader: Allow " as well as '' to end a latex double-quote.
4127−
4128− * Conditionally depend on syb and base >= 4 if ghc >= 6.10.
4129− Resolves Issue #109.
4130−
4131− * Fixed problems in RST and markdown output due to bug in pretty-1.0.1.0
4132−
4133− + Added hang' function to Text.Pandoc.Shared; this will be used instead
4134− of hang, which doesn't work properly in pretty-1.0.1.0. When pretty
4135− is upgraded, we can go back to hang.
4136− See http://article.gmane.org/gmane.comp.lang.haskell.general/16687
4137− + Use hang' (and some different techniques) in RST and markdown writers.
4138− Some output is now a bit different.
4139−
4140− * Brought citeproc support up to date for citeproc-hs-0.2.
4141− (Patch by Andrea Rossato.)
4142−
4143− * Moved all haskell source to src subdirectory. Renamed Main.hs to
4144− pandoc.hs.
4145−
4146− * Rewrote hsmarkdown in Haskell for portability (src/hsmarkdown.hs).
4147− For now, keeping the old shell script too.
4148−
4149− * Added TemplateHaskell to Extensions for executable, removed
4150− -threaded for library. Thanks to duncan.coutts for the bug report.
4151− Resolves Issue #121.
4152−
4153− * Moved some Extra-Source-Files to Data-Files.
4154−
4155− * Moved tabFilter to Shared.
4156−
4157− * In pandoc.hs, removed optPreserveTabs; instead, tabstop of 0 means
4158− preserve tabs.
4159−
4160− * Minor code cleanup based on hlint suggestions.
4161−
4162−pandoc (1.1)
4163−
4164− [ John MacFarlane ]
4165−
4166− * Main.hs:
4167−
4168− + Changed date on copyright message in Main.hs.
4169− + Have the '-v' option print syntax highlighting languages
4170− separated by commas, and wrapped in lines, instead of in five
4171− columns as before.
4172−
4173− * Added --jsmath option. Resolves Issue #68.
4174−
4175− + Added --jsmath option to Main.hs
4176− + Added JsMath to HTMLMathMethod in Text.Pandoc.Shared.
4177− + Handle math appropriately in HTML writer when JsMath selected.
4178− + Documented the option in README and man page.
4179−
4180− * Text.Pandoc.Shared: Changed compactify to use a better heuristic
4181− for tight and loose lists. Final Para is changed to Plain if all
4182− other list items *end* with a Plain block. Addresses Issue #99.
4183−
4184− * HTML reader:
4185−
4186− + Added colons to protocols in unsanitaryURI. Closes Issue #88.
4187− + HTML reader: Don't interpret contents of <pre> blocks as markdown.
4188− Added rawVerbatimBlock parser. Resolves Issue #94.
4189−
4190− * Markdown reader:
4191−
4192− + Allow URLs with spaces in them in links and references, but escape
4193− them as "%20".
4194− + Allow blank space at the end of horizontal rules.
4195−
4196− * RST reader: Modified 'unknownDirective' parser to handle comment
4197− blocks correctly, and added tests for comment blocks. Resolves Issue
4198− #86. Closes Debian Bug #500662.
4199−
4200− * HTML writer:
4201−
4202− + Include classes on tr elements in HTML output:
4203− "header", "odd", "even". This allows tables to be styled with
4204− lines in alternating colors. Resolves Issue #91.
4205− + Enclose all LaTeXMathML bits in <span class="LaTeX">.
4206− This prevents parts of the document that are not math from being
4207− interpreted as math by LaTeXMathML.js.
4208−
4209− * OpenDocument and ODT writers: Added support for HorizontalRule elements,
4210− which were formerly ignored. Resolves Issue #95.
4211−
4212− * Text.Pandoc.Shared: Modified wrappedTeX to eliminate the line break
4213− between a footnote and immediately following nonspace characters in
4214− LaTeX and ConTeXt output. (This gets interpreted as a space, which
4215− is not desired in cases like "text^[note]---".) Resolves Issue #93.
4216−
4217− * Windows installer: Don't require admin privileges to run
4218− installer. Modified pandoc-setup.iss, and changed modpath.iss to
4219− modify HKCU path if user lacks admin privileges. Also fixed case
4220− where oldpath is empty (previously this led to the new path
4221− beginning with a semicolon).
4222−
4223− * Updated INSTALL instructions for Arch packages and OS X install using
4224− cabal-install.
4225−
4226− * Removed the (now unneeded) debian directory.
4227− Removed empty Codec and System directories.
4228−
4229− * Moved odt-styles/ to data/. Removed unneeded variable in Makefile.
4230−
4231− * Modified Setup.hs so that the "test" target returns an error status
4232− when tests fail, and "build" returns a success status if
4233− the build succeeds. Resolves Issue #100.
4234−
4235− * Added BUGS to files in tarball.
4236−
4237−
4238−pandoc (1.0.0.1)
4239−
4240− [ John MacFarlane ]
4241−
4242− * Removed spurious reference to pdf output format from pandoc(1) man page.
4243−
4244−pandoc (1.0)
4245−
4246− [ Andrea Rossato ]
4247−
4248− * Added new OpenDocument writer.
4249−
4250− * Added support for SmallCaps inline element.
4251−
4252− * Added support for integrating pandoc with citeproc-hs.
4253−
4254− + Added Cite element to definition and writers.
4255− + Added Text.Pandoc.Biblio module
4256− + Note: This support is included only if the 'citeproc'
4257− Cabal configuration flag is set.
4258−
4259− * Made Pandoc data structure an instance of Typeable.
4260− Added new processPandoc and queryPandoc functions, to query
4261− or transform matching elements in a Pandoc structure.
4262−
4263− [ Peter Wang ]
4264−
4265− * Added new Texinfo writer.
4266−
4267− [ John MacFarlane ]
4268−
4269− * Changes to Texinfo writer:
4270−
4271− + No space between paragraph and following @verbatim (provides more
4272− pleasing appearance in text formats)
4273− + Blank line consistently after list environments.
4274− + Removed deVerb.
4275− + Use @code instead of @verb for inline code (this solves the character
4276− escaping problem for texi2dvi and texi2pdf).
4277− + Added news of Texinfo writer to README.
4278− + Added Texinfo to list of formats in man page, and removed extra 'groff'.
4279− + Added texi & texinfo extensions to Main.hs, and fixed bug in determining
4280− default output extension.
4281− + Modified disallowedInNode in Texinfo writer to correct list of disallowed characters.
4282−
4283− * Added tests for OpenDocument writer.
4284−
4285− * Added ODT writer (using zip-archive library to package output of
4286− OpenDocument writer). Added odt-styles directory with default ODT styles.
4287−
4288− * Added new mediawiki writer and tests.
4289−
4290− * Markdown reader: Added support for delimited code blocks, with optional
4291− syntax highlighting using highlighting-kate (if the 'highlighting'
4292− configuration option is selected).
4293−
4294− + Currently highlighting is supported only in the HTML writer.
4295− + Delimited code blocks can have attributes; using the language name as
4296− class triggers highlighting.
4297− + New Attributes parameter in CodeBlock structure.
4298− + --version now indicates whether syntax highlighting support is compiled
4299− in, and prints a list of supported languages
4300−
4301− * Removed debian directory. Pandoc is no longer a native debian package.
4302−
4303− * Changes to build process: pandoc can now be built from the repository
4304− using Cabal. No unix tools are needed (so, pandoc can be built on Windows
4305− without Cygwin).
4306−
4307− + Include shell scripts themselves in repo, rather than generating from wrappers.
4308− Removed wrappers directory and wrappers Makefile target.
4309− + Text/Pandoc/ASCIIMathML.hs, Text/Pandoc/DefaultHeaders.hs,
4310− and Text/Pandoc/Writers/S5.hs are no longer built in Makefile
4311− from templates in the templates/ directory. Instead, they use template
4312− haskell to read data at compile time from the relevant files in data/.
4313− Template haskell functions go in a new module, Text.Pandoc.TH.
4314− + man pages are now generated in Setup.hs hook, not by Makefile
4315− + Makefile 'tarball' target now calls Cabal's 'sdist'
4316− + Added "Extra-Source-Files" to pandoc.cabal, so sdist contains everything needed
4317− + Added "Build-Type" field to pandoc.cabal to avoid warning.
4318− + Added to "Extra-source-files" and "Extra-tmp-files" in pandoc.cabal,
4319− so 'sdist' and 'clean' will work properly.
4320− + Setup.hs now generates man pages in a postbuild hook.
4321− + Added dependency-checking to Setup.hs, so it only rebuilds things
4322− that need rebuilding.
4323− + Added 'library' and 'executable' configuration flags.
4324− Cabal can now be told to build just the library or just the executable.
4325− + CABALOPTS may now be specified with 'make' to pass Cabal configuration flags.
4326− For example: CABALOPTS=-fhighlighting make
4327−
4328− * Rewrote test suite so it doesn't depend on perl or unix tools.
4329−
4330− + Replaced old runtests.pl with a Haskell script RunTests.hs.
4331− + Added Diff.hs module to be used by RunTests.hs instead of unix 'diff'.
4332− + Added test hook to Setup.hs, so tests may be run from cabal.
4333− + Changed Makefile's 'test' target to run tests via cabal.
4334− + Removed old generate.sh.
4335− + Since we no longer have 'sed' to filter out raw HTML sections
4336− from the docbook writer test, or raw LaTeX sections from the
4337− context writer test, we now just include these sections.
4338− They can be taken out if it is necessary to process the files.
4339− + Updated latex and context writer tests to remove extra spaces
4340− after '\\item'
4341− + Added a markdown table reader test.
4342− + Added markdown-reader-more.txt to test suite, for additional test cases
4343− for raw ConTeXt environments and more.
4344−
4345− * Compatibility fixes for CPP, Cabal, and haddock:
4346−
4347− + Use CPP in "Extensions" field in pandoc.cabal.
4348− + Removed use of backslash string continuations in source files.
4349−
4350− * Removed pandoc.cabal.ghc66. We now require Cabal >= 1.2, GHC >= 6.8,
4351− base >= 3.
4352−
4353− * Require parsec < 3.
4354− The compatibility module in parsec 3.0.0 gives far worse performance than
4355− parsec 2.1. Eventually pandoc will be upgraded to use the new bytestring
4356− version of parsec, and then we'll go to parsec 3.0.0.
4357−
4358− * Removed Text.Regex dependencies by rewriting using plain Haskell
4359− (Text.Pandoc.Writers.RTF, Text.Pandoc.Writers.HTML, Main.hs)
4360−
4361− * Moved Text.Pandoc.Writers.DefaultHeaders -> Text.Pandoc.DefaultHeaders.
4362−
4363− * Makefile:
4364−
4365− + Added 'configure' as dependency of 'uninstall-all'.
4366− (It uses the Cabal build program.)
4367− + Makefile: only use --with-hc-pkg if GHC_PKG is defined.
4368− Note that Cabal will automatically choose the ghc-pkg appropriate
4369− for the compiler selected, so normally specifying GHC by itself
4370− is sufficient.
4371−
4372− * Removed Text.Pandoc.UTF8 module; instead, depend on utf8-string and use
4373− its IO and conversion functions.
4374−
4375− * Added -Wall to ghc-options in pandoc.cabal. Cleaned up modules so that
4376− everything is -Wall clean.
4377−
4378− + Added pragma to HTML writer to avoid deprecation warning for use of "start" attribute.
4379− + Added pragma to Text/Pandoc/Shared.hs to get rid of "orphan instance" warnings.
4380− (These are caused by the Lift instance for ByteString.)
4381−
4382− * Changed the comment used to replace unsafe HTML if sanitize-html option
4383− selected.
4384−
4385− * Made -c/--css option repeatable on the command line (like -H, -A, -B).
4386−
4387− * Moved XML-formatting functions to new unexported module Text.Pandoc.XML.
4388−
4389− * Escape '\160' as " ", not " " in XML.
4390− "nbsp" isn't a predefined XML entity.
4391−
4392− * Fixed bug in RST reader, which would choke on: "p. one\ntwo\n".
4393− Added some try's in ordered list parsers.
4394−
4395− * Man writer: don't escape " as \".
4396−
4397− * Allow newline before URL in markdown link references. Resolves Issue #81.
4398− Added tests for this issue in new "markdown-reader-more" tests.
4399− Changed RunTests.hs to run these tests.
4400−
4401− * Support for display math. Resolves Issue #47.
4402−
4403− + Added a DisplayMath/InlineMath selector to Math inlines.
4404− + Markdown parser yields DisplayMath for $$...$$.
4405− + LaTeX parser yields DisplayMath when appropriate. Removed
4406− mathBlock parsers, since the same effect is achieved by the math
4407− inline parsers, now that they handle display math.
4408− + Writers handle DisplayMath as appropriate for the format.
4409− + Modified tests accordingly; added new tests for display math.
4410−
4411− * Use LaTeXMathML instead of ASCIIMathML. LaTeXMathML is closer
4412− to LaTeX in its display of math, and supports many non-math LaTeX environments.
4413−
4414− + Changed -m option to use LaTeXMathML rather than ASCIIMathML.
4415− + Modified HTML writer to print raw TeX when LaTeXMathML is
4416− being used instead of suppressing it.
4417− + Removed ASCIIMathML files from data/ and added LaTeXMathML.
4418− + Replaced ASCIIMathML with LaTeXMathML in source files.
4419− + Modified README and pandoc man page source.
4420− + Added --latexmathml option (kept --asciimathml as a synonym
4421− for backwards compatibility)
4422−
4423− * Markdown reader: Parse setext headers before atx headers.
4424− Test case:
4425− # hi
4426− ====
4427− parsed by Markdown.pl as an H1 header with contents "# hi".
4428−
4429− * Markdown reader: Treat "mixed" lists the same way as Markdown.pl does.
4430− The marker on the first list item determines the type of the whole
4431− list. Thus, a list like
4432− 1. one
4433− - two
4434− * three
4435− gets parsed as a single ordered list. (Previous versions of pandoc
4436− treated this as an ordered list with an unordered sublist.)
4437−
4438− * Markdown smart typography:
4439−
4440− + Em dashes no longer eat surrounding whitespace. Resolves Issue #69.
4441− + Use nonbreaking spaces after known abbreviations in markdown parser.
4442− Thus, for example, "Mr. Brown" comes out as "Mr.~Brown" in LaTeX, and does
4443− not produce a sentence-separating space. Resolves Issue #75.
4444−
4445− * Markdown writer: Print unicode \160 literally, rather than as .
4446−
4447− * Treat '\ ' in (extended) markdown as nonbreaking space.
4448− Print nonbreaking space appropriately in each writer (e.g. ~ in LaTeX).
4449−
4450− * The '--sanitize-html' option now examines URIs in markdown links
4451− and images, and in HTML href and src attributes. If the URI scheme
4452− is not on a whitelist of safe schemes, it is rejected. The main point
4453− is to prevent cross-site scripting attacks using 'javascript:' URIs.
4454− See http://www.mail-archive.com/markdown-discuss@six.pairlist.net/msg01186.html
4455− and http://ha.ckers.org/xss.html. Resolves Issue #62.
4456−
4457− * HTML writer:
4458−
4459− + Override Text.XHtml's stringToHtml function,
4460− so that characters below 0xff are not converted to numerical entity
4461− references. Also convert '\160' to " ". This should aid readability
4462− and editability of the HTML source. It does presuppose that the HTML
4463− will be served as UTF-8.
4464− + In code blocks, change leading newlines to <br /> tags.
4465− (Some browsers ignore them.) Resolves Issue #71.
4466− See http://six.pairlist.net/pipermail/markdown-discuss/2008-May/001297.html
4467− + Use style attributes rather than css classes for strikethrough
4468− and ordered list styles. This works better when fragments, rather than
4469− standalone documents, are generated.
4470−
4471− * HTML reader: Count anything that isn't a known block (HTML) tag as an
4472− inline tag (rather than the other way around). Added "html", "head", and
4473− "body" to list of block tags. Resolves Issue #66, allowing
4474− <lj> to count as an inline tag.
4475−
4476− * RTF writer: Fixed bug. Extra spaces were being printed after emphasized,
4477− boldface, and other inline elements. Resolves Issue #64.
4478−
4479− * LaTeX reader: improvements in raw LaTeX parsing.
4480−
4481− + "loose punctuation" (like {}) parsed as Space
4482− + Para elements must contain more than Str "" and Space elements
4483− + Added parser for "\ignore" command used in literate haskell.
4484− + Reworked unknownCommand and rawLaTeXInline: when not in "parse raw"
4485− mode, these parsers simply strip off the command part and allow
4486− the arguments to be parsed normally. So, for example,
4487− \blorg{\emph{hi}} will be parsed as Emph "hi" rather than
4488− Str "{\\emph{hi}}".
4489− + Parse lhs "code" environments as verbatim.
4490− Refactored parsers for verbatim environments.
4491− + Removed specialEnvironment parser.
4492− + parse '{}', if present, after \textless, \textgreater,
4493− \textbar, \textbackslash, \ldots.
4494− + Parse unescaped special characters verbatim rather than
4495− changing them to spaces. This way arguments of unknown
4496− commands will appear in braces.
4497−
4498− * Parse raw ConTeXt environments as TeX in markdown reader.
4499− Resolves Issue #73.
4500−
4501− * Moved BlockWrapper and wrappedBlocksToDoc from ConTeXt writer to Shared.
4502−
4503− * Made some structural changes to parsing of raw LaTeX environments.
4504− Previously there was a special block parser for LaTeX environments.
4505− It returned a Para element containing the raw TeX inline. This has
4506− been removed, and the raw LaTeX environment parser is now used in the
4507− rawLaTeXInline parser. The effect is exactly the same, except that we
4508− can now handle consecutive LaTeX and ConTeXt environments not separated
4509− by spaces. This new flexibility is required by the example in
4510− Issue #73:
4511−
4512− \placeformula \startformula
4513− L_{1} = L_{2}
4514− \stopformula
4515−
4516− API change: The LaTeX reader now exports rawLaTeXEnvironment' (which
4517− returns a string) rather than rawLaTeXEnvironment (which returns a block
4518− element). This is more likely to be useful in other applications.
4519−
4520− * Use \textsubscr instead of \textsubscript for LaTeX subscript macro.
4521− \textsubscript conflicts with a definition in the memoir class.
4522− Resolves Issue #65.
4523−
4524− * Removed unneeded space after "\\item" in LaTeX and ConTeXt output.
4525−
4526− * Added amsmath package to default LaTeX header. Resolves Issue #48.
4527−
4528− * Added \setupitemize[autointro] to ConTeXt header, to prevent orphaned
4529− list introduction lines.
4530−
4531− * Changed Float to Double in definition of Table element.
4532− (Double is more efficient in GHC.)
4533−
4534− * Fixed bug in Markdown parser: regular $s triggering math mode.
4535− For example: "shoes ($20) and socks ($5)."
4536− The fix consists in two new restrictions:
4537−
4538− + the $ that ends a math span may not be directly followed by a digit.
4539− + no blank lines may be included within a math span.
4540−
4541− Thanks to Joseph Reagle for noticing the bug.
4542−
4543− * Use Data.List's 'intercalate' instead of custom 'joinWithSep'.
4544− Removed 'joinWithSep' from Text.Pandoc.Shared.
4545−
4546− * Updated README and man pages. Acknowledge contributors in README.
4547− Added paragraph to README about producing S5 with separate CSS/javascript.
4548−
4549− * Updated INSTALL to reflect new build system (including configuration
4550− options) and document new dependencies. Added note to INSTALL that
4551− Cabal >= 1.2 is required for build. Resolves Issue #74.
4552−
4553− * Fixed some haddock documentation errors.
4554−
4555− * Small fix to markdown2pdf man page: only input needs to be piped through iconv.
4556−
4557−pandoc (0.46) unstable; urgency=low
4558−
4559− [ John MacFarlane ]
4560−
4561− * Made -H, -A, and -B options cumulative: if they are specified
4562− multiple times, multiple files will be included.
4563−
4564− * Added optional HTML sanitization using a whitelist.
4565− When this option is specified (--sanitize-html on the command line),
4566− unsafe HTML tags will be replaced by HTML comments, and unsafe HTML
4567− attributes will be removed. This option should be especially useful
4568− for those who want to use pandoc libraries in web applications, where
4569− users will provide the input.
4570−
4571− + Main.hs: Added --sanitize-html option.
4572−
4573− + Text.Pandoc.Shared: Added stateSanitizeHTML to ParserState.
4574−
4575− + Text.Pandoc.Readers.HTML:
4576− - Added whitelists of sanitaryTags and sanitaryAttributes.
4577− - Added parsers to check these lists (and state) to see if a given
4578− tag or attribute should be counted unsafe.
4579− - Modified anyHtmlTag and anyHtmlEndTag to replace unsafe tags
4580− with comments.
4581− - Modified htmlAttribute to remove unsafe attributes.
4582− - Modified htmlScript and htmlStyle to remove these elements if
4583− unsafe.
4584−
4585− + Modified README and man pages to document new option.
4586−
4587− * Improved handling of email addresses in markdown and reStructuredText.
4588− Consolidated uri and email address parsers. (Resolves Issue #37.)
4589−
4590− + New emailAddress and uri parsers in Text.Pandoc.Shared.
4591− - uri parser uses parseURI from Network.URI.
4592− - emailAddress parser properly handles email addresses with periods
4593− in them.
4594−
4595− + Removed uri and emailAddress parsers from Text.Pandoc.Readers.RST
4596− and Text.Pandoc.Readers.Markdown.
4597−
4598− * Markdown reader:
4599−
4600− + Fixed emph parser so that "*hi **there***" is parsed as a Strong
4601− nested in an Emph. (A '*' is only recognized as the end of the
4602− emphasis if it's not the beginning of a strong emphasis.)
4603−
4604− + Moved blockQuote parser before list parsers for performance.
4605−
4606− + Modified 'source' parser to allow backslash-escapes in URLs.
4607− So, for example, [my](/url\(1\)) yields a link to /url(1).
4608− Resolves Issue #34.
4609−
4610− + Disallowed links within links. (Resolves Issue #35.)
4611− - Replaced inlinesInBalanced with inlinesInBalancedBrackets, which
4612− instead of hard-coding the inline parser takes an inline parser
4613− as a parameter.
4614− - Modified reference and inlineNote to use inlinesInBalancedBrackets.
4615− - Removed unneeded inlineString function.
4616− - Added inlineNonLink parser, which is now used in the definition of
4617− reference.
4618− - Added inlineParsers list and redefined inline and inlineNonLink parsers
4619− in terms of it.
4620− - Added failIfLink parser.
4621−
4622− + Better handling of parentheses in URLs and quotation marks in titles.
4623− - 'source' parser first tries to parse URL with balanced parentheses;
4624− if that doesn't work, it tries to parse everything beginning with
4625− '(' and ending with ')'.
4626− - source parser now uses an auxiliary function source'.
4627− - linkTitle parser simplified and improved, under assumption that it
4628− will be called in context of source'.
4629−
4630− + Make 'block' conditional on strictness state, instead of using
4631− failIfStrict in block parsers. Use a different ordering of parsers
4632− in strict mode (raw HTML block before paragraph) for performance.
4633− In non-strict mode use rawHtmlBlocks instead of htmlBlock.
4634− Simplified htmlBlock, since we know it's only called in strict
4635− mode.
4636−
4637− + Improved handling of raw HTML. (Resolves Issue #36.)
4638− - Tags that can be either block or inline (e.g. <ins>) should
4639− be treated as block when appropriate and as inline when
4640− appropriate. Thus, for example,
4641− <ins>hi</ins>
4642− should be treated as a paragraph with inline <ins> tags, while
4643− <ins>
4644− hi
4645− </ins>
4646− should be treated as a paragraph within <ins> tags.
4647− - Moved htmlBlock after para in list of block parsers. This ensures
4648− that tags that can be either block or inline get parsed as inline
4649− when appropriate.
4650− - Modified rawHtmlInline' so that block elements aren't treated as
4651− inline.
4652− - Modified para parser so that paragraphs containing only HTML tags and
4653− blank space are not allowed. Treat these as raw HTML blocks instead.
4654−
4655− + Fixed bug wherein HTML preceding a code block could cause it to
4656− be parsed as a paragraph. The problem is that the HTML parser
4657− used to eat all blank space after an HTML block, including the
4658− indentation of the code block. (Resolves Issue #39.)
4659− - In Text.Pandoc.Readers.HTML, removed parsing of following space
4660− from rawHtmlBlock.
4661− - In Text.Pandoc.Readers.Markdown, modified rawHtmlBlocks so that
4662− indentation is eaten *only* on the first line after the HTML
4663− block. This means that in
4664− <div>
4665− foo
4666− <div>
4667− the foo won't be treated as a code block, but in
4668− <div>
4669−
4670− foo
4671−
4672− </div>
4673− it will. This seems the right approach for least surprise.
4674−
4675− * RST reader:
4676−
4677− + Fixed bug in parsing explicit links (resolves Issue #44).
4678− The problem was that we were looking for inlines until a '<' character
4679− signaled the start of the URL; so, if you hit a reference-style link,
4680− it would keep looking til the end of the document. Fix: change
4681− inline => (notFollowedBy (char '`') >> inline). Note that this won't
4682− allow code inlines in links, but these aren't allowed in resT anyway.
4683−
4684− + Cleaned up parsing of reference names in key blocks and links.
4685− Allow nonquoted reference links to contain isolated '.', '-', '_', so
4686− so that strings like 'a_b_' count as links.
4687−
4688− + Removed unnecessary check for following link in str.
4689− This is unnecessary now that link is above str in the definition of
4690− 'inline'.
4691−
4692− * HTML reader:
4693−
4694− + Modified rawHtmlBlock so it parses </html> and </body> tags.
4695− This allows these tags to be handled correctly in Markdown.
4696− HTML reader now uses rawHtmlBlock', which excludes </html> and </body>,
4697− since these are handled in parseHtml. (Resolves Issue #38.)
4698−
4699− + Fixed bug (emph parser was looking for <IT> tag, not <I>).
4700−
4701− + Don't interpret contents of style tags as markdown.
4702− (Resolves Issue #40.)
4703− - Added htmlStyle, analagous to htmlScript.
4704− - Use htmlStyle in htmlBlockElement and rawHtmlInline.
4705− - Moved "script" from the list of tags that can be either block or
4706− inline to the list of block tags.
4707−
4708− + Modified rawHtmlBlock to use anyHtmlBlockTag instead of anyHtmlTag
4709− and anyHtmlEndTag. This fixes a bug in markdown parsing, where
4710− inline tags would be included in raw HTML blocks.
4711−
4712− + Modified anyHtmlBlockTag to test for (not inline) rather than
4713− directly for block. This allows us to handle e.g. docbook in
4714− the markdown reader.
4715−
4716− * LaTeX reader: Properly recognize --parse-raw in rawLaTeXInline.
4717− Updated LaTeX reader test to use --parse-raw.
4718−
4719− * HTML writer:
4720−
4721− + Modified rules for automatic HTML header identifiers to
4722− ensure that identifiers begin with an alphabetic character.
4723− The new rules are described in README. (Resolves Issue #33.)
4724−
4725− + Changed handling of titles in HTML writer so you don't get
4726− "titleprefix - " followed by nothing.
4727−
4728− * ConTeXt writer: Use wrappers around Doc elements to ensure proper
4729− spacing. Each block element is wrapped with either Pad or Reg.
4730− Pad'ed elements are guaranteed to have a blank line in between.
4731−
4732− * RST writer:
4733−
4734− + Refactored RST writer to use a record instead of a tuple for state,
4735− and to include options in state so it doesn't need to be passed as
4736− a parameter.
4737−
4738− + Use an interpreted text role to render math in restructuredText.
4739− See http://www.american.edu/econ/itex2mml/mathhack.rst for the
4740− strategy.
4741−
4742− [ Recai Oktaş ]
4743−
4744− * Debian packaging changes:
4745−
4746− + Remove the empty 'include' directory in -dev package, which lintian
4747− complains about.
4748− + Bump Standarts-Version to 3.7.3.
4749− + Use new 'Homepage:' field to specify the upstream URL on suggestion of
4750− lintian.
4751−
4752− -- Recai Oktaş <roktas@debian.org> Tue, 08 Jan 2008 05:13:31 +0200
4753−
4754−pandoc (0.45) unstable; urgency=low
4755−
4756− [ John MacFarlane ]
4757−
4758− * Simplified parsing of reference keys and notes in markdown and RST
4759− readers: The Reference data structure from Text.Pandoc.Shared is no
4760− longer needed, since referenceKey and noteBlock parses return strings
4761− (as many blank lines as were occupied by the key or note) and update
4762− state themselves. getPosition and setPosition are now used to ensure
4763− that error messages will give the correct line number. This yields
4764− cleaner (and slightly faster) code, with more accurate parsing error
4765− messages.
4766−
4767− * Added new Math inline element:
4768−
4769− + Markdown and LaTeX readers now convert TeX math into Math elements,
4770− not TeX.
4771− + This allows math to be treated differently from raw TeX in output.
4772− TeX elements are no longer printed in output formats other than
4773− Markdown, LaTeX, and ConTeXt. But Math elements are always printed.
4774−
4775− * New default handling of math in writers:
4776−
4777− + New module Text.Pandoc.Readers.TeXMath exports readTeXMath, which
4778− parses raw TeX math and outputs a string of Pandoc inlines that
4779− tries to render it as far as possible using unicode characters,
4780− lapsing into literal TeX when needed.
4781− + readTeXMath is now used for default HTML output in HTML, S5, RTF,
4782− and Docbook, if no other method for displaying math in HTML is
4783− specified. Enclosing $'s are no longer printed by default.
4784− + By default, math is put inside <span class="math">. This way it can be
4785− distinguished from the surrounding text, e.g. put in a different
4786− font.
4787−
4788− * New --gladtex and --mimetex options for display of math in HTML:
4789−
4790− + If --gladtex is specified, math is output between <eq> tags, so
4791− it can be processed by gladTeX.
4792− + If --mimetex is specified, math is put in <img> tags with a link
4793− to the mimetex CGI script (or any other script that takes TeX math
4794− as input and outputs an image). The URL of the script may be
4795− specified, but defaults to /cgi-bin/mimetex.cgi.
4796− + HTMLMathMethod structure in WriterOptions keeps track of how to
4797− display math in HTML output.
4798− + Updated README with a description of the four options for displaying
4799− math in HTML.
4800−
4801− * HTML reader:
4802−
4803− + Fixed bug: parser for minimized attributes should not swallow
4804− trailing spaces.
4805− + Simplified HTML attribute parsing.
4806− + Changed parsing of code blocks in HTML reader: <code> tag is no
4807− longer needed. <pre> suffices. All HTML tags in the code block
4808− (e.g. for syntax highlighting) are skipped, because they are not
4809− portable to other output formats. A <code>...</code> block not
4810− surrounded by <pre> now counts as inline HTML, not a code block.
4811− + Remove just one leading and one trailing newline from contents of
4812− <pre>...</pre> in codeBlock parser.
4813−
4814− * Markdown reader:
4815−
4816− + Removed support for box-style block quotes.
4817− + Require space before title in links and references.
4818− This fixes a bug in parsing URLs like http://silly/url(withparen).
4819− + Improved and simplified setextHeader parser.
4820− + Fixed logic in smart quote parsing, adding some needed 'try'
4821− statements.
4822− + Fixed smart quote parsing so that unicode characters 8216 and 8217
4823− are recognized as single quotes, and 8220 and 8221 as double quotes.
4824−
4825− * RST reader:
4826−
4827− + Fixed bug in parsing of code blocks. Previously a full tab indent
4828− was required, but RST allows code to be indented any amount.
4829− Resolves Issue #27.
4830− + Allow field lists to be indented.
4831− + Parse the contents of field lists instead of treating as a raw string.
4832− + Represent field lists as definition lists instead of blockquotes.
4833− + Fixed bug in which metadata would be overridden if the document
4834− contained multiple field lists.
4835− + Parse fields associated with '.. image::' blocks, and use 'alt'
4836− field, if given, for image alt and title attributes.
4837−
4838− * LaTeX reader:
4839−
4840− + Modified specialChar so that '"' characters are parsed.
4841− + Fixed a bug in parsing of \[ \] math blocks (thanks to Mark Kalderon).
4842−
4843− * HTML writer:
4844−
4845− + Changes in handling of math (see above).
4846− + Don't produce HTML for table of contents if there are
4847− no headers. (This would be an empty list, which is invalid XHTML.)
4848−
4849− * Markdown writer:
4850−
4851− + Don't print title attribute if title is empty. (This differs from
4852− the behavior of Markdown.pl, and agrees with PHP Markdown. But John
4853− Gruber has indicated that he prefers this behavior.) Adjusted test
4854− suite accordingly.
4855− + Fixed incorrect line wrapping in paragraphs including hard line
4856− breaks. Resolves Issue #25.
4857− + Fixed bug in markdown writer: If an ordered list item began with
4858− a marker greater than 3 characters in width, and the item took more
4859− than one line, it would appear on the line after the list marker,
4860− e.g.:
4861−
4862− (12)
4863− My list item.
4864− Multiline.
4865−
4866− Now it works as follows:
4867−
4868− (12) My list item.
4869− Multiline.
4870−
4871− * RST writer
4872−
4873− + Fixed bug in RST writer's handling of ordered lists. Previously,
4874− list items with multiple lines would not always line up with
4875− single-line list items. Now, list items are nested the length of
4876− the list marker + 1. This looks better and ensures that list items
4877− all line up. (Note that list markers are padded to the length of
4878− the longest list marker in the series.)
4879− + Use 3-space indent for unordered lists.
4880− + If label for a link reference contains a colon, surround it by `
4881− signs so it won't be interpreted as the end of the link label.
4882−
4883− * LaTeX writer:
4884−
4885− + Cleaner output for footnotes. Footnotes now always begin on a new
4886− line, and the final } is on a line by itself only when it needs to
4887− be (i.e. only when the note ends with a Verbatim environment).
4888− + Added writer options to state, so state doesn't need to be passed as
4889− a parameter.
4890− + Text wrapping now provided, using wrapTeXIfNeeded.
4891−
4892− * ConTeXt writer: many improvements for more idiomatic ConTeXt output
4893− (thanks to Idris Samawi Hamid for suggestions).
4894−
4895− + PrettyPrint module now used for output.
4896− + Writer options are now in state, so they don't have to be passed as
4897− a parameter.
4898− + Text wrapping now provided, using wrapTeXIfNeeded.
4899− + Better treatment of footnotes: footnotes are always on lines by
4900− themselves, and the final } is on a line by itself only when
4901− it needs to be (after \stoptyping).
4902− + Use \subject, \subsubject, ... or \section, \subsection, ... for headings,
4903− depending on whether --number-sections option is selected.
4904− + Extra blank line inserted after \stopitemize
4905− + Use new, "official" definition of blockquote environment. Also, use
4906− blank line after \startblockquote to balance blank line at the end.
4907− + Both itemized and enumerated lists are now generated using
4908− \start-stopitemize, with appropriate options. Removed definitions
4909− of ltxenum and ltxitem, which are no longer needed. Provided
4910− defaults for itemized lists in the preamble. State keeps track of
4911− ordered list level, so that when default numbering is specified,
4912− the appropriate scheme can be used.
4913− + Changed \useurl to \useURL.
4914− + Changed link color from red to blue.
4915− + Use \subsubsubsubsection etc., since these are supported
4916− (up to at least sub x 5).
4917−
4918− * Text.Pandoc.Shared:
4919−
4920− + Save and restore position in parseFromString, so that accurate
4921− error messages can be given.
4922− + Improved efficiency of romanNumeral parser.
4923− + Added wrappedTeX and wrapTeXIfNeeded functions. These ensure
4924− that footnotes occur on lines by themselves (to make them
4925− easier to see and move) and do not screw up line wrapping.
4926−
4927− * Text.Pandoc.UTF8: modified fromUTF8 to strip out the BOM
4928− if present. Windows Notepad and other applications insert a
4929− BOM at the beginning of a UTF8 file.
4930−
4931− * Main.hs (tabFilter): Treat '\r' at end of line as newline (in
4932− addition to "\r\n" and '\n').
4933−
4934− * Added a writer option for wrapped text and a command-line option
4935− '--no-wrap', which disables text wrapping and minimizes whitespace
4936− in HTML. (Resolves Issue #26.)
4937−
4938− + Added support for '--no-wrap' to Main.hs.
4939− + Added wrapIfNeeded function to Text.Pandoc.Shared.
4940− + Use wrapIfNeeded instead of wrapped in the RST, Man, Docbook, and
4941− Markdown writers.
4942− + Added render and renderFragment helpers to HTML writer.
4943−
4944− * Modified html2markdown to run tidy only if the HTML cannot be
4945− parsed. Previously html2markdown piped all input through tidy
4946− before passing it to pandoc. This caused problems on certain pages
4947− (e.g. http://daringfireball.com/markdown) which have well-formed
4948− XHTML that causes tidy to choke. The solution is to pipe through
4949− tidy only if pandoc cannot parse the input by itself. This means
4950− that a temp file is now always used, even when input comes from a
4951− local file or standard input.
4952−
4953− * Removed 'version' constant from Main.hs; added 'pandocVersion' to
4954− Text.Pandoc library.
4955−
4956− * pandoc.cabal:
4957−
4958− + Modified to work with GHC 6.8 and Cabal configurations. (For GHC
4959− 6.8, pretty and containers must be added to Build-Depends, and it
4960− is desirable to use the -O2 compiler option.) Cabal configurations
4961− allows one to select options depending on the compiler version.
4962− For GHC 6.6, the splitBase option can be disabled.
4963− + pandoc.cabal.ghc66 is provided for users with older versions of
4964− Cabal, which do not support configurations.
4965− + Use Ghc-Prof-Options to ensure that '-auto-all' is used when
4966− '--enable-(executable|library)-profiling' is specified. Updated
4967− PROFILING instructions accordingly.
4968−
4969− * Makefile:
4970−
4971− + Makefile now checks GHC version. If GHC is 6.6, pandoc.cabal.ghc66
4972− is copied to pandoc.cabal, and the old pandoc.cabal is copied
4973− to pandoc.cabal.orig. Otherwise, pandoc.cabal is copied to
4974− pandoc.cabal.orig but otherwise unmodified. This way, the Makefile
4975− will work properly with either GHC 6.6 or 6.8.
4976− + Changed BUILDCONF to point to dist/setup-config, not .setup-config.
4977− This is where current versions of Cabal put it.
4978− + Added $(BUILDCMD) target, so setup doesn't get compiled every time.
4979− + Removed dependency of templates on ./templates, which is circular
4980− now that templates is a subdirectory of the top-level.
4981−
4982− * MacPorts Portfile:
4983−
4984− + Modified to install the pandoc library in addition to programs.
4985− + Installation must be done manually rather than using Makefile's
4986− install-all.
4987− + Note that the library must be registered in the activate phase,
4988− after the library files have been copied out of the destroot.
4989− Cabal generates a 'register.sh' script that will do this.
4990−
4991− * debian/control: Added libghc6-network-dev, libghc6-xhtml-dev, and
4992− libghc6-mtl-dev as dependencies for libghc6-pandoc-dev.
4993− Closes: #445235
4994−
4995− * debian/rules: Converted to UTF-8.
4996−
4997− * Changed pandoc home page to http://johnmacfarlane.net/pandoc/.
4998−
4999− * Updated ASCIIMathML.js to latest version.
5000−
5001− * Directory structure:
5002−
5003− + Moved everything from src into the top-level directory.
5004− + Changed references to source directory in Makefile and
5005− pandoc.cabal.*.
5006− + Moved ASCIIMathML.js, headers, and ui into templates directory.
5007− + Modified fillTemplates.pl to reflect new paths.
5008−
5009− [ Recai Oktaş ]
5010−
5011− * Makefile: Fixed the issue of having two copies of the library
5012− documentation under some usage scenarios.
5013−
5014− * Replaced 'ghc' with '$(GHC)' in Makefile, and made GHC
5015− and GHC_PKG configurable through the environment, to support
5016− unusual ghc installations. For example:
5017− GHC=/opt/ghc/bin/ghc GHC_PKG=/opt/ghc/bin/ghc-pkg make
5018−
5019− -- Recai Oktaş <roktas@debian.org> Sun, 07 Oct 2007 20:51:43 +0300
5020−
5021−pandoc (0.44) unstable; urgency=low
5022−
5023− [ John MacFarlane ]
5024−
5025− * Fixed bug in HTML writer: when --toc was used, anchors were put around
5026− headers, which is invalid XHTML (block content within inline element).
5027− Now the anchors are put inside the header tags. Resolves Issue #23.
5028−
5029− * Added xmlns attribute to html element in html writer tests.
5030− This attribute is added by more recent versions of the
5031− xhtml library (>= 3000), and is required for valid XHTML.
5032−
5033− [ Recai Oktaş ]
5034−
5035− * On configure, compile 'Setup.hs' to 'setup' and use 'setup' as the build
5036− command instead of 'runhaskell', which, on some platforms (such as s390,
5037− alpha, m68k), throws the following error:
5038−
5039− runhaskell Setup.hs configure --prefix=/usr
5040− ghc-6.6.1: not built for interactive use
5041−
5042− This causes a serious FTBFS bug. Closes: #440668.
5043−
5044− -- Recai Oktaş <roktas@debian.org> Mon, 03 Sep 2007 18:24:02 +0300
5045−
5046−pandoc (0.43) unstable; urgency=low
5047−
5048− [ John MacFarlane ]
5049−
5050− * The focus of this release is performance. The markdown parser
5051− is about five times faster than in 0.42, based on benchmarks
5052− with the TextMate manual.
5053−
5054− * Main.hs: Replaced CRFilter and tabFilter with single function
5055− tabFilter, which operates on the whole string rather than breaking
5056− it into lines, and handles dos-style line-endings as well as tabs.
5057−
5058− * Added separate LaTeX reader and native reader tests; removed
5059− round-trip tests.
5060−
5061− * Text.Pandoc.Shared:
5062−
5063− + Removed tabsToSpaces and tabsInLine (they were used only in Main.hs.)
5064− + General code cleanup (to elimante warnings when compiling with -Wall.)
5065− + Added 'wrapped' function, which helps wrap text into paragraphs,
5066− using the prettyprinting library.
5067− + Rewrote charsInBalanced and charsInBalanced'.
5068− - Documented restriction: open and close must be distinct characters.
5069− - Rearranged options for greater efficiency.
5070− - Bug fix: Changed inner call to charsInBalanced inside
5071− charsInBalanced' to charsInBalanced'.
5072− + anyLine now requires that the line end with a newline (not eof).
5073− This is a harmless assumption, since we always add newlines to the
5074− end of a block before parsing with anyLine, and it yields a 10% speed
5075− boost.
5076− + Removed unnecessary 'try' in anyLine.
5077− + Removed unneeded 'try' from romanNumeral parser.
5078− + Use notFollowedBy instead of notFollowedBy' in charsInBalanced.
5079− + Removed unneeded 'try' in parseFromString.
5080− + Removed unneeded 'try' from stringAnyCase. (Now it behaves
5081− like 'string'.)
5082− + Changed definition of 'enclosed' in Text.Pandoc.Shared so that
5083− 'try' is not automatically applied to the 'end' parser. Added
5084− 'try' in calls to 'enclosed' where needed. Slight speed increase.
5085−
5086− * Writers:
5087−
5088− + Replaced individual wrapping routines in RST, Man, and Markdown
5089− writers with 'wrapped' from Text.Pandoc.Shared.
5090− + Rewrote LaTeX writer to use the prettyprinting library,
5091− so we get word wrapping, etc.
5092− + Modified latex writer tests for new latex writer using prettyprinter.
5093− + Fixed bug in LaTeX writer: autolinks would not cause
5094− '\usepackage{url}' to be put in the document header. Also, changes
5095− to state in enumerated list items would be overwritten.
5096− + In Markdown writer, escape paragraphs that begin with ordered list
5097− markers, so they don't get interpreted as ordered lists.
5098−
5099− * Text.Pandoc.Reades.LaTeX:
5100−
5101− + Fixed bug in LaTeX reader, which wrongly assumed that the roman
5102− numeral after "enum" in "setcounter" would consist entirely of
5103− "i"s. 'enumiv' is legitimate.
5104− + LaTeX command and environment names can't contain numbers.
5105− + Rearranged order of parsers in inline for slight speed improvement.
5106− + Added '`' to special characters and 'unescapedChar'.
5107−
5108− * Text.Pandoc.Readers.RST:
5109−
5110− + Removed unneeded try's in RST reader; also minor code cleanup.
5111− + Removed tabchar.
5112− + Rearranged parsers in inline (doubled speed).
5113−
5114− * Text.Pandoc.Readers.Markdown:
5115−
5116− + Skip notes parsing if running in strict mode. (This yields a nice
5117− speed improvement in strict mode.)
5118− + Simplify autolink parsing code, using Network.URI to test for
5119− URIs. Added dependency on network library to debian/control and
5120− pandoc.cabal.
5121− + More perspicuous definition of nonindentSpaces.
5122− + Removed unneeded 'try' in 'rawLine'.
5123− + Combined linebreak and whitespace into a new whitespace parser, to
5124− avoid unnecessary reparsing of space characters.
5125− + Removed unnecessary 'try' in 'codeBlock', 'ellipses', 'noteMarker',
5126− 'multilineRow', 'dashedLine', 'rawHtmlBlocks'.
5127− + Use lookAhead in parsers for setext headers and definition lists
5128− to see if the next line begins appropriately; if not, don't waste
5129− any more time parsing.
5130− + Don't require blank lines after code block. (It's sufficient to
5131− end code block with a nonindented line.)
5132− + Changed definition of 'emph': italics with '_' must not
5133− be followed by an alphanumeric character. This is to help
5134− prevent interpretation of e.g. [LC_TYPE]: my_type as
5135− '[LC<em>TYPE]:my</em>type'.
5136− + Improved Markdown.pl-compatibility in referenceLink: the two parts
5137− of a reference-style link may be separated by one space, but not
5138− more... [a] [link], [not] [a link].
5139− + Fixed markdown inline code parsing so it better accords with
5140− Markdown.pl: the marker for the end of the code section is a clump
5141− of the same number of `'s with which the section began, followed
5142− by a non-` character. So, for example,
5143− ` h ``` i ` -> <code>h ``` i</code>.
5144− + Split 'title' into 'linkTitle' and 'referenceTitle', since the
5145− rules are slightly different.
5146− + Rewrote 'para' for greater efficiency.
5147− + Rewrote link parsers for greater efficiency.
5148− + Removed redundant 'referenceLink' in definition of inline (it's
5149− already in 'link').
5150− + Refactored escapeChar so it doesn't need 'try'.
5151− + Refactored hrule for performance in Markdown reader.
5152− + More intelligent rearranging of 'inline' so that most frequently
5153− used parsers are tried first.
5154− + Removed tabchar parser, as whitespace handles tabs anyway.
5155−
5156− * Text.Pandoc.CharacterReferences:
5157−
5158− + Refactored.
5159− + Removed unnecessary 'try's for a speed improvement.
5160− + Removed unnecessary '&' and ';' from the entity table.
5161−
5162− * Build process:
5163−
5164− + Makefile: Get VERSION from cabal file, not Main.hs.
5165− + Modified MacPorts Portfile:
5166− - Depend on haddock
5167− - Build and install libraries and library documentation in
5168− addition to pandoc executable
5169− - Added template item for md5 sum in Portfile.in.
5170− - Incorporated changes from MacPorts repository (r28278).
5171− + FreeBSD port: Don't try to generate distinfo in Makefile.
5172− It can be made using 'make makesum' in FreeBSD.
5173− + Make both freebsd and macports targets depend on tarball.
5174−
5175− * Website and documentation:
5176−
5177− + Updated INSTALL instructions.
5178− + Added pandocwiki demo to website.
5179− + Removed local references to Portfile, since pandoc is now in the
5180− MacPorts repository.
5181−
5182− -- Recai Oktaş <roktas@debian.org> Sun, 02 Sep 2007 15:50:11 +0300
5183−
5184−pandoc (0.42) unstable; urgency=low
5185−
5186− [ John MacFarlane ]
5187−
5188− * Main.hs: Use utf8 conversion on the extra files loaded with
5189− the -H, -C, -B, and -A options. This fixes problems with unicode
5190− characters in these files.
5191−
5192− * Exposed Text.Pandoc.ASCIIMathML, since it is imported in
5193− Text.Pandoc.Readers.HTML and without it we get a linking error when
5194− using the library.
5195−
5196− * Markdown reader:
5197−
5198− + Added new rule for enhanced markdown ordered lists: if the list
5199− marker is a capital letter followed by a period (including a
5200− single-letter capital roman numeral), then it must be followed by
5201− at least two spaces. The point of this is to avoid accidentally
5202− treating people's initials as list markers: a paragraph might begin,
5203− "B. Russell was an English philosopher," and this shouldn't be
5204− treated as a list. Documented change in README.
5205− + Blocks that start with "p. " and a digit are no longer treated
5206− as ordered lists (it's a page number).
5207− + Added a needed 'try' to listItem.
5208− + Removed check for a following setext header in endline.
5209− A full test is too inefficient (doubles benchmark time), and the
5210− substitute we had before is not 100% accurate.
5211− + Don't use Code elements for autolinks if --strict specified.
5212−
5213− * LaTeX writer: When a footnote ends with a Verbatim environment, the
5214− close } of the footnote cannot occur on the same line or an error occurs.
5215− Fixed this by adding a newline before the closing } of every footnote.
5216−
5217− * HTML writer:
5218− + Removed incorrect "{}" around style information in HTML tables.
5219− Column widths now work properly in HTML.
5220− + If --strict option is specified (and --toc is not), don't include
5221− identifiers in headers, for better Markdown compatibility.
5222−
5223− * Build process:
5224−
5225− + Separated $(web_dest) and website targets.
5226− + In website, index.txt is now constructed from template index.txt.in.
5227− + Added freebsd target to Markefile. This creates the freebsd Makefile
5228− from Makefile.in, and creates distinfo. Removed Makefile and distinfo
5229− from the repository.
5230− + Added macport target to Makefile. Portfile is built from template
5231− Portfile.in.
5232− + Removed OSX package targets. (Too many difficulties involving
5233− dependencies on dynamic libraries.)
5234− + More complete INSTALL instructions for all architectures.
5235−
5236− * Website:
5237− + Added a programming demo, pandocwiki.
5238−
5239− [ Recai Oktaş ]
5240−
5241− * Do not forget to close pandoc's ITP. Closes: #391666
5242−
5243− -- Recai Oktaş <roktas@debian.org> Sun, 26 Aug 2007 22:51:32 +0300
5244−
5245−pandoc (0.41) unstable; urgency=low
5246−
5247− [ John MacFarlane ]
5248−
5249− * Fixed bugs in HTML reader:
5250− + Skip material at end *only if* </html> is present (previously,
5251− only part of the document would be parsed if an error was
5252− found; now a proper error message is given).
5253− + Added new constant eitherBlockOrInline with elements that may
5254− count either as block-level or as inline. Modified isInline and
5255− isBlock to take this into account.
5256− + Modified rawHtmlBlock to accept any tag (even an inline tag):
5257− this is innocuous, because rawHtmlBlock is tried only if a regular
5258− inline element can't be parsed.
5259− + Added a necessary 'try' in definition of 'para'.
5260−
5261− * Fixed bug in markdown ordered list parsing. The problem was that
5262− anyOrderedListStart did not check for a space following the
5263− ordered list marker. So in 'A.B. 2007' the parser would be
5264− expecting a list item, but would not find one, causing an error.
5265− Fixed a similar bug in the RST reader. Resolves Issue #22.
5266−
5267− * Refactored RST and Markdown readers using parseFromString.
5268−
5269− * LaTeX reader will now skip anything after \end{document}.
5270−
5271− * Fixed blockquote output in markdown writer: previously, block
5272− quotes in indented contexts would be indented only in the first
5273− line.
5274−
5275− * Added note to INSTALL about variations in versions of the xhtml
5276− library that can lead to failed tests (thanks to Leif LeBaron).
5277−
5278− -- Recai Oktaş <roktas@debian.org> Sun, 19 Aug 2007 23:26:07 +0300
5279−
5280−pandoc (0.4) unstable; urgency=low
5281−
5282− [ John MacFarlane ]
5283−
5284− * Added two new output formats: groff man pages and ConTeXt. By
5285− default, output files with extensions ".ctx" and ".context" are
5286− assumed to be ConTeXt, and output files with single-digit extensions
5287− are assumed to be man pages.
5288−
5289− * Enhanced ordered lists (documented in README, under Lists):
5290− + The OrderedList block element now stores information about
5291− list number style, list number delimiter, and starting number.
5292− + The readers parse this information when possible.
5293− + The writers use this information to style ordered lists.
5294− + The enhancement can be disabled using the --strict option.
5295−
5296− * Added support for tables (with a new Table block element). Two kinds
5297− of tables are supported: a simple table with one-line rows, and a
5298− more complex variety with multiline rows. All output formats are
5299− supported, but only markdown tables are parsed at the moment. The
5300− syntax is documented in README.
5301−
5302− * Added support for definition lists (with a new DefinitionList block
5303− element). All output and input formats are supported. The syntax is
5304− documented in README.
5305−
5306− * Added support for superscripts and subscripts (with new Superscript
5307− and Subscript inline elements). All input and output
5308− formats. The syntax is documented in README.
5309−
5310− * Added support for strikeout (with a new Strikeout inline element).
5311− All input and output formats are supported. Thanks to Bradley Kuhn,
5312− who contributed a patch. The syntax is documented in README. Resolves
5313− Issue #18.
5314−
5315− * Added a --toc|--table-of-contents option. This causes an automatically
5316− generated table of contents (or an instruction that creates one) to
5317− be inserted at the beginning of the document. Not supported in S5,
5318− DocBook, or man page writers.
5319−
5320− * Modified the -m|--asciimathml option:
5321−
5322− + If an optional URL argument is provided, a link is inserted
5323− instead of the contents of the ASCIIMathML.js script.
5324− + Nothing is inserted unless the document actually contains
5325− LaTeX math.
5326−
5327− * Removed Blank block element as unnecessary.
5328−
5329− * Removed Key and Note blocks from the Pandoc data structure. All
5330− links are now stored as explicit links, and note contents are
5331− stored with the (inline) notes.
5332−
5333− + All link Targets are now explicit (URL, title) pairs; there
5334− is no longer a 'Ref' target.
5335− + Markdown and RST parsers now need to extract data from key and
5336− note blocks and insert them into the relevant inline elements.
5337− Other parsers have been simplified, since there is no longer any need
5338− to construct separate key and note blocks.
5339− + Markdown, RST, and HTML writers need to construct lists of
5340− notes; Markdown and RST writers need to construct lists of link
5341− references (when the --reference-links option is specified); and
5342− the RST writer needs to construct a list of image substitution
5343− references. All writers have been rewritten to use the State monad
5344− when state is required.
5345− + Several functions (generateReference, keyTable,
5346− replaceReferenceLinks, replaceRefLinksBlockList, and some auxiliaries
5347− used by them) have been removed from Text.Pandoc.Shared, since
5348− they are no longer needed. New functions and data structures
5349− (Reference, isNoteBlock, isKeyBlock, isLineClump) have been
5350− added. The functions inTags, selfClosingTag, inTagsSimple, and
5351− inTagsIndented have been moved to the DocBook writer, since that
5352− is now the only module that uses them. NoteTable is now exported
5353− in Text.Pandoc.Shared.
5354− + Added stateKeys and stateNotes to ParserState; removed stateKeyBlocks,
5355− stateKeysUsed, stateNoteBlocks, stateNoteIdentifiers, stateInlineLinks.
5356− + Added writerNotes and writerReferenceLinks to WriterOptions.
5357−
5358− * Added Text.Pandoc module that exports basic readers, writers,
5359− definitions, and utility functions. This should export everything
5360− needed for most uses of Pandoc libraries. The haddock documentation
5361− includes a short example program.
5362−
5363− * Text.Pandoc.ASCIIMathML is no longer an exported module.
5364−
5365− * Added Text.Pandoc.Blocks module to help in printing markdown
5366− and RST tables. This module provides functions for working with
5367− fixed-width blocks of text--e.g., placing them side by side, as
5368− in a table row.
5369−
5370− * Refactored to avoid reliance on Haskell's Text.Regex library, which
5371− (a) is slow, and (b) does not properly handle unicode. This fixed
5372− some strange bugs, e.g. in parsing S-cedilla, and improved performance.
5373−
5374− + Replaced 'gsub' with a general list function 'substitute'
5375− that does not rely on Text.Regex.
5376− + Rewrote extractTagType in HTML reader so that it doesn't use
5377− regexs.
5378− + In Markdown reader, replaced email regex test with a custom email
5379− autolink parser (autoLinkEmail). Also replaced selfClosingTag regex
5380− with a custom function isSelfClosingTag.
5381− + Modified Docbook writer so that it doesn't rely on Text.Regex for
5382− detecting 'mailto' links.
5383− + Removed escapePreservingRegex and reamped entity-handling
5384− functions in Text.Pandoc.Shared and Text.Pandoc.CharacterReferences to
5385− avoid reliance on Text.Regex (see below on character reference
5386− handling changes).
5387−
5388− * Renamed Text.Pandoc.Entities as Text.Pandoc.CharacterReferences.
5389−
5390− * Changed handling of XML entities. Entities are now parsed (and unicode
5391− characters returned) in the Markdown and HTML readers, rather than being
5392− handled in the writers. In HTML and Docbook writers, UTF-8 is now used
5393− instead of entities for characters above 128. This makes the HTML and
5394− DocBook output much more readable and more easily editable.
5395−
5396− + Removed sgmlHexEntity, sgmlDecimalEntity, sgmlNamedEntity, and
5397− sgmlCharacterEntity regexes from Text.Pandoc.Shared.
5398− + Renamed escapeSGMLChar to escapeCharForXML. Added escapeStringForXML.
5399− Moved both functions to Text.Pandoc.Writers.Docbook.
5400− + Added characterReference parser to Text.Pandoc.CharacterReferences.
5401− This parses a string and return a unicode character.
5402− + Rewrote decodeCharacterReferences to use the new parser instead of
5403− Text.Regex.
5404− + Added new charRef parser for Markdown and HTML, which replaces the
5405− old 'entity' parser. Added '&' as a special character in Markdown reader.
5406− + Modified HTML and Markdown readers to call decodeEntities on all raw
5407− strings (e.g. authors, dates, link titles), to ensure that no
5408− unprocessed entities are included in the native representation of
5409− the document. (In the HTML reader, most of this work is done by a
5410− change in extractAttributeName.)
5411− + In XML and Markdown output, escape unicode nonbreaking space as ' ',
5412− since a unicode non-breaking space is impossible to distinguish visually
5413− from a regular space. (Resolves Issue #3.)
5414− + Removed encodeEntitiesNumerical.
5415− + Use Data.Map for entityTable and (new) reverseEntityTable, for a
5416− slight performance boost over the old association list.
5417− + Removed unneeded decodeEntities from 'str' parser in HTML and
5418− Markdown readers.
5419−
5420− * Text.Pandoc.UTF8: Renamed encodeUTF8 to toUTF8, decodeUTF8 to
5421− fromUTF8, for clarity.
5422−
5423− * Replaced old haskell98 module names replaced by hierarchical module
5424− names, e.g. List by Data.List. Removed haskell98 from dependencies
5425− in pandoc.cabal, and added mtl (needed for state monad). Substituted
5426− xhtml for html.
5427−
5428− * Refactored and cleaned up character escaping in writers, using
5429− backslashEscapes and escapeStringUsing functions.
5430−
5431− * Instead of adding "\n\n" to the end of an input string in Main.hs,
5432− this is now done in the readers. This makes the libraries behave
5433− the way you'd expect from the pandoc program. Resolves Issue #10.
5434−
5435− * URLs and email addresses in autolinks are now typeset as Code.
5436−
5437− * In Main.hs, changed putStr to putStrLn -- mainly because MacOS X
5438− doesn't display the whole output unless there's a line ending.
5439−
5440− * Major code cleanup in all modules, for greater consistency, concision,
5441− and readability.
5442−
5443− * HTML reader:
5444−
5445− + Fixed several bugs (extractTagType, attribute parsing).
5446− + Remove Null blocks in lists of blocks when possible.
5447− + Allow HTML comments as raw HTML inline.
5448−
5449− * Markdown reader:
5450−
5451− + Ordered list items may no longer begin with uppercase letters, or
5452− letters greater than 'n'. (This prevents first initials and page
5453− reference, e.g. 'p. 400', from being parsed as beginning lists.)
5454− Also, numbers beginning list items may no longer end with ')',
5455− which is now allowed only after letters. Note: These changes
5456− may cause documents to be parsed differently. Users should take
5457− care in upgrading.
5458− + Changed autoLink parsing to conform better to Markdown.pl's
5459− behavior. <google.com> is not treated as a link, but
5460− <http://google.com>, <ftp://google.com>, and <mailto:google@google.com>
5461− are.
5462− + Cleaned up handling of embedded quotes in link titles. Now these are
5463− stored as a '"' character, not as '"'.
5464− + Use lookAhead parser for the 'first pass' (looking for reference keys),
5465− instead of parsing normally, then using setInput to reset input. This
5466− yields a slight performance boost.
5467− + Fixed several bugs in smart quote recognition.
5468− + Fixed bug in indentSpaces (which didn't properly handle
5469− cases with mixed spaces and tabs).
5470− + Consolidated 'text', 'special', and 'inline' into 'inline'.
5471− + Fixed bug which allowed URL and title to be separated by multiple blank
5472− lines in links and reference keys. They can be on separate lines but
5473− can't have blank lines between them.
5474− + Correctly handle bracketed text inside inline footnotes and links,using
5475− new function inlinesInBalanced. Resolves Issue #14.
5476− + Fixed bug in footnotes: links in footnotes were not being
5477− processed. Solution: three-stage parse. First, get all the
5478− reference keys and add information to state. Next, get all the
5479− notes and add information to state. (Reference keys may be needed
5480− at this stage.) Finally, parse everything else.
5481− + Replaced named constants like 'emphStart' with literals.
5482− + Removed an extra occurance of escapedChar in definition of inline.
5483−
5484− * RST reader:
5485−
5486− + Allow the URI in a RST hyperlink target to start on the line
5487− after the reference key.
5488− + Added 'try' in front of 'string', where needed, or used a different
5489− parser. This fixes a bug where ````` would not be correctly parsed as
5490− a verbatim `.
5491− + Fixed slow performance in parsing inline literals in RST reader. The
5492− problem was that ``#`` was seen by 'inline' as a potential link or image.
5493− Fix: inserted 'notFollowedBy (char '`')' in link parsers.
5494− Resolves Issue #8.
5495− + Use lookAhead instead of getInput/setInput in RST reader. Removed
5496− unneeded getState call, since lookAhead automatically saves and
5497− restores the parser state.
5498− + Allow hyperlink target URIs to be split over multiple lines, and
5499− to start on the line after the reference. Resolves Issue #7.
5500− + Fixed handling of autolinks.
5501−
5502− * LaTeX reader:
5503−
5504− + Replaced 'choice [(try (string ...), ...]' idiom with 'oneOfStrings',
5505− for clarity.
5506− + Added clauses for tilde and caret. Tilde is \ensuremath{\sim}, and
5507− caret is \^{}, not \^ as before.
5508− + Added parsing for \url.
5509− + Parse \texttt{} as code, provided there's nothing fancy inside.
5510−
5511− * HTML writer:
5512−
5513− + Modified HTML writer to use the Text.XHtml library. This results
5514− in cleaner, faster code, and it makes it easier to use Pandoc in
5515− other projects, like wikis, which use Text.XHtml. Two functions are
5516− now provided, writeHtml and writeHtmlString: the former outputs an
5517− Html structure, the latter a rendered string. The S5 writer is also
5518− changed, in parallel ways (writeS5, writeS5String).
5519− + The Html header is now written programmatically, so it has been
5520− removed from the 'headers' directory. The S5 header is still
5521− needed, but the doctype and some of the meta declarations have
5522− been removed, since they are written programatically. This change
5523− introduces a new dependency on the xhtml package.
5524− + Fixed two bugs in email obfuscation involving improper escaping
5525− of '&' in the <noscript> section and in --strict mode. Resolves
5526− Issue #9.
5527− + Fixed another bug in email obfuscation: If the text to be obfuscated
5528− contains an entity, this needs to be decoded before obfuscation.
5529− Thanks to thsutton for the patch. Resolves Issue #15.
5530− + Changed the way the backlink is displayed in HTML footnotes.
5531− Instead of appearing on a line by itself, it now generally
5532− appears on the last line of the note. (Exception: when the
5533− note does not end with a Plain or Para block.) This saves space
5534− and looks better.
5535− + Added automatic unique identifiers to headers:
5536− - The identifier is derived from the header via a scheme
5537− documented in README.
5538− - WriterState now includes a list of header identifiers and a table
5539− of contents in addition to notes.
5540− - The function uniqueIdentifiers creates a list of unique identifiers
5541− from a list of inline lists (e.g. headers).
5542− - This list is part of WriterState and gets consumed by blockToHtml
5543− each time a header is encountered.
5544− + Include CSS for .strikethrough class in header only if strikethrough
5545− text appears in the document.
5546− + If the 'strict' option is specified, elements that do not appear in
5547− standard markdown (like definition lists) are passed through as
5548− raw HTML.
5549− + Simplified treatment of autolinks, using pattern matching instead of
5550− conditionals.
5551−
5552− * Markdown writer:
5553−
5554− + Links in markdown output are now printed as inline links by default,
5555− rather than reference links. A --reference-links option has been added
5556− that forces links to be printed as reference links. Resolves Issue #4.
5557− + Use autolinks when possible. Instead of [site.com](site.com),
5558− use <site.com>.
5559−
5560− * LaTeX writer:
5561−
5562− + Rewrote to use the State monad. The preamble now includes only those
5563− packages that are actually required, given the document's content.
5564− Thus, for example, if strikeout is not used, ulem is not required.
5565− Modified LaTeXHeader accordingly.
5566− + Modified LaTeX writer to insert '\,' between consecutive quotes.
5567− + Removed unused function tableRowColumnWidths.
5568− + Simplified code for escaping special characters.
5569− + Leave extra blank line after \maketitle.
5570− + Include empty '\author{}' when no author specified to avoid LaTeX
5571− errors.
5572− + Include fancyvrb code in header only if needed -- that is, only
5573− if there is actually code in a footnote.
5574− + Use \url{} for autolinks.
5575− + Include [mathletters] option in ucs package, so that basic unicode
5576− Greek letters will work correctly.
5577−
5578− * RST writer: Force blank line before lists, so that sublists will
5579− be handled correctly.
5580−
5581− * Docbook writer: Fixed a bug: email links with text, like
5582− [foo](me@bar.baz), were being incorrectly treated as autolinks.
5583−
5584− * Removed Text.ParserCombinators.Pandoc and moved all its functions to
5585− Text.Pandoc.Shared.
5586−
5587− * Text.Pandoc.Shared:
5588−
5589− + Added defaultWriterOptions.
5590− + Added writerTableOfContents to WriterOptions.
5591− + Added writerIgnoreNotes option to WriterOptions. This is needed
5592− for processing header blocks for a table of contents, since notes on
5593− headers should not appear in the TOC.
5594− + Added prettyprinting for native Table format.
5595− + Removed some unneeded imports.
5596− + Moved escape and nullBlock parsers from
5597− Text.ParserCombinators.Pandoc, since the latter is for
5598− general-purpose parsers that don't depend on Text.Pandoc.Definition.
5599− + Moved isHeaderBlock from Text.Pandoc.Writers.HTML.
5600− + Moved Element, headerAtLeast, and hierarchicalize from Docbook
5601− writer, because HTML writer now uses these in constructing a table
5602− of contents.
5603− + Added clauses for new inline elements (Strikeout, Superscript,
5604− Subscript) to refsMatch.
5605− + Removed backslashEscape; added new functions escapeStringUsing and
5606− backslashEscapes.
5607− + Moved failIfStrict from markdown reader, since it is now used also
5608− by the HTML reader.
5609− + Added a 'try' to the definition of indentSpaces.
5610− + In definition of 'reference', added check to make sure it's not a note
5611− reference.
5612− + Added functions: camelCaseToHyphenated, toRomanNumeral,
5613− anyOrderedListMarker, orderedListmarker, orderedListMarkers,
5614− charsInBalanced', withHorizDisplacement, romanNumeral
5615− + Fixed a bug in the anyLine parser. Previously it would parse an empty
5616− string "", but it should fail on an empty string, or we get an error
5617− when it is used inside "many" combinators.
5618− + Removed followedBy' parser, replacing it with the lookAhead parser from
5619− Parsec.
5620− + Added some needed 'try's before multicharacter parsers, especially in
5621− 'option' contexts.
5622− + Removed the 'try' from the 'end' parser in 'enclosed', so that
5623− 'enclosed' behaves like 'option', 'manyTill', etc.
5624− + Added lineClump parser, which parses a raw line block up to and
5625− including any following blank lines.
5626− + Renamed parseFromStr to parseFromString.
5627− + Added a 'try' to the 'end' parser in 'enclosed'. This makes errors in
5628− the use of 'enclosed' less likely. Removed some now-unnecessary 'try's
5629− in calling code.
5630− + Removed unneeded 'try' in blanklines.
5631− + Removed endsWith function and rewrote calling functions to use
5632− isSuffixOf instead.
5633− + Added >>~ combinator.
5634− + Fixed bug in normalizeSpaces: Space:Str "":Space should compress to
5635− Space.
5636−
5637− * Refactored runtests.pl; added separate tests for tables.
5638−
5639− * Shell scripts:
5640−
5641− + Added -asxhtml flag to tidy in html2markdown. This will
5642− perhaps help the parser, which expects closing tags.
5643− + Modified markdown2pdf to run pdflatex a second time if --toc or
5644− --table-of-contents was specified; otherwise the table of
5645− contents won't appear.
5646− + Modified markdown2pdf to print a helpful message if the 'ulem'
5647− LaTeX package is required and not found.
5648−
5649− * Changes to build process:
5650−
5651− + Dropped support for compilation with GHC 6.4. GHC 6.6 or higher
5652− is now required.
5653− + Removed cabalize and Pandoc.cabal.in. The repository now contains
5654− pandoc.cabal itself.
5655− + Pandoc.cabal has been changed to pandoc.cabal, because HackageDB
5656− likes the cabal file to have the same name as the tarball.
5657− + Expanded and revised the package description in pandoc.cabal.
5658− Revised the package synopsis.
5659− + The tarball built by 'make tarball' now contains files built from
5660− templates (including man pages and shell scripts), so pandoc can
5661− be built directly using Cabal tools, without preprocessing.
5662− + Executable binaries are now stripped before installing.
5663− + Man pages are now generated from markdown sources, using pandoc's
5664− man page writer.
5665− + Use HTML version of README (instead of RTF) in Mac OS X installer.
5666− + Instead of testing for the existence of a pandoc symlink in build-exec,
5667− use ln -f.
5668−
5669− * Documentation:
5670−
5671− + Updated README and man pages with information on new features.
5672− + Updated INSTALL instructions with some useful clarifications and
5673− links.
5674− + Updated web content.
5675−
5676− * Added FreeBSD port.
5677−
5678− [ Recai Oktaş ]
5679−
5680− * debian/control:
5681−
5682− + Changed pandoc's Build-Depends to include libghc6-mtl-dev and
5683− libghc6-xhtml-dev. Removed libghc6-html-dev.
5684− + Suggest texlive-latex-recommended | tetex-extra instead of
5685− tetex-bin. This brings in fancyvrb and unicode support.
5686−
5687− -- Recai Oktaş <roktas@debian.org> Tue, 16 Jan 2007 00:37:21 +0200
5688−
5689−pandoc (0.3) unstable; urgency=low
5690−
5691− [ John MacFarlane ]
5692−
5693− * Changes in pandoc options:
5694−
5695− + Allow options to follow or precede arguments.
5696− + Changed '--smartypants' to '--smart' and adjusted symbols accordingly.
5697− + Added '--strict' option.
5698− + Added '-o/--output' option.
5699− + Added '--dump-args' and '--ignore-args' options (for use in wrappers).
5700− + Modified '-v' and '-h' output to go to STDERR, not STDOUT, and return
5701− error conditions. This is helpful for writing wrappers.
5702− + Added copyright message to '-v' output, modeled after FSF messages.
5703− + Reformatted usage message so that it doesn't wrap illegibly.
5704− + Removed extra blanks after '-h' and '-D' output.
5705−
5706− * Added docbook writer.
5707−
5708− * Added implicit setting of default input and output format based
5709− on input and output filename extensions. These defaults are
5710− overridden if explicit input and output formats are specified using
5711− '-t', '-f', '-r', or '-w' options. Documented in pandoc(1) man page
5712− and README.
5713−
5714− * Allow ordered list items to begin with (single) letters, as well
5715− as numbers. The list item marker may now be terminated either by
5716− '.' or by ')'. This extension to standard markdown is documented
5717− in README.
5718−
5719− * Revised footnote syntax. (See README for full details.) The
5720− '[^1]' format now standard in markdown extensions is supported,
5721− as are inline footnotes with this syntax: '^[My note.]'.
5722− The earlier footnote syntax '^(1)' is no longer supported.
5723−
5724− * Improved HTML representation of footnotes. All footnotes
5725− are now auto-numbered and appear in an ordered list at the
5726− end of the HTML document. Since the default appearance is now
5727− acceptable, the old footnote styles have been removed from the
5728− HTML header.
5729−
5730− * Bug fixes:
5731−
5732− + Fixed a serious bug in the markdown, LaTeX, and RST readers.
5733− These readers ran 'runParser' on processed chunks of text to handle
5734− embedded block lists in lists and quotation blocks. But then
5735− any changes made to the parser state in these chunks was lost,
5736− as the state is local to the parser. So, for example, footnotes
5737− didn't work in quotes or list items. The fix: instead of calling
5738− runParser on some raw text, use setInput to make it the input, then
5739− parse it, then use setInput to restore the input to what it was
5740− before. This is shorter and more elegant, and it fixes the problem.
5741− + Fixed bug in notFollowedBy' combinator (adding 'try' before
5742− 'parser'). Adjusted code that uses this combinator accordingly.
5743− + Fixed bug in RTF writer that caused improper indentation on
5744− footnotes occurring in indented blocks like lists.
5745− + Fixed parsing of metadata in LaTeX reader. Now the title, author,
5746− and date are parsed correctly. Everything else in the preamble
5747− is skipped.
5748− + Modified escapedChar in LaTeX reader to allow a '\' at the end of a
5749− line to count as escaped whitespace.
5750− + Modified LaTeX reader to produce inline links rather than reference
5751− links. Otherwise, links in footnotes aren't handled properly.
5752− + Fixed handling of titles in links in Markdown reader, so that
5753− embedded quotation marks are now handled properly.
5754− + Fixed Markdown reader's handling of embedded brackets in links.
5755− + Fixed Markdown reader so that it only parses bracketed material
5756− as a reference link if there is actually a corresponding key.
5757− + Revised inline code parsing in Markdown reader to conform to
5758− markdown standard. Now any number of `s can begin inline code,
5759− which will end with the same number of `s. For example, to
5760− have two backticks as code, write ``` `` ```. Modified Markdown
5761− writer accordingly.
5762− + Fixed bug in text-wrapping routine in Markdown and RST writers.
5763− Now LineBreaks no longer cause wrapping problems.
5764− + Supported hexadecimal numerical entity references as well as
5765− decimal ones.
5766− + Fixed bug in Markdown reader's handling of underscores and other
5767− inline formatting markers inside reference labels: for example,
5768− in '[A_B]: /url/a_b', the material between underscores was being
5769− parsed as emphasized inlines.
5770− + Changed Markdown reader's handling of backslash escapes so that
5771− only non-alphanumeric characters can be escaped. Strict mode
5772− follows Markdown.pl in only allowing a select group of punctuation
5773− characters to be escaped.
5774− + Modified HTML reader to skip a newline following a <br> tag.
5775− Otherwise the newline will be treated as a space at the beginning
5776− of the next line.
5777−
5778− * Made handling of code blocks more consistent. Previously, some
5779− readers allowed trailing newlines, while others stripped them.
5780− Now, all readers strip trailing newlines in code blocks. Writers
5781− insert a newline at the end of code blocks as needed.
5782−
5783− * Modified readers to make spacing at the end of output more consistent.
5784−
5785− * Minor improvements to LaTeX reader:
5786−
5787− + '\thanks' now treated like a footnote.
5788− + Simplified parsing of LaTeX command arguments and options.
5789− commandArgs now returns a list of arguments OR options (in
5790− whatever order they appear). The brackets are included, and
5791− a new stripFirstAndLast function is provided to strip them off
5792− when needed. This fixes a problem in dealing with \newcommand
5793− and \newenvironment.
5794−
5795− * Revised RTF writer:
5796−
5797− + Default font is now Helvetica.
5798− + An '\f0' is added to each '\pard', so that font resizing works
5799− correctly.
5800−
5801− * Moved handling of "smart typography" from the writers to the Markdown
5802− and LaTeX readers. This allows great simplification of the writers
5803− and more accurate smart quotes, dashes, and ellipses. DocBook can
5804− now use '<quote>'. The '--smart' option now toggles an option in
5805− the parser state rather than a writer option. Several new kinds
5806− of inline elements have been added: Quoted, Ellipses, Apostrophe,
5807− EmDash, EnDash.
5808−
5809− * Changes in HTML writer:
5810−
5811− + Include title block in header even when title is null.
5812− + Made javascript obfuscation of emails even more obfuscatory,
5813− by combining it with entity obfuscation.
5814−
5815− * Changed default ASCIIMathML text color to black.
5816−
5817− * Test suite:
5818−
5819− + Added --strip-trailing-cr option to diff in runtests.pl, for
5820− compatibility with Windows.
5821− + Added regression tests with footnotes in quote blocks and lists.
5822−
5823− * Makefile changes:
5824−
5825− + osx-pkg target creates a Mac OS X package (directory). New osx
5826− directory contains files needed for construction of the package.
5827− + osx-dmg target creates a compressed disk image containing the package.
5828− + win-pkg target creates Windows binary package.
5829− + tarball target creates distribution source tarball.
5830− + website target generates pandoc's website automatically, including
5831− demos. New 'web' directory containts files needed for construction
5832− of the website (which will be created as the 'pandoc' subdirectory
5833− of 'web').
5834− + Makefile checks to see if we're running Windows/Cygwin; if so,
5835− a '.exe' extension is added to each executable in EXECS.
5836−
5837− * Removed all wrappers except markdown2pdf and html2markdown.
5838−
5839− * Added new wrapper hsmarkdown, to be used as a drop-in replacement
5840− for Markdown.pl. hsmarkdown calls pandoc with the '--strict'
5841− option and disables other options.
5842−
5843− * Added code to html2markdown that tries to determine the character
5844− encoding of an HTML file, by parsing the "Content-type" meta tag.
5845−
5846− + If the encoding can't be determined, then if the content is local,
5847− the local encoding is used; if it comes from a URL, UTF-8 is used
5848− by default.
5849− + If input is from STDIN, don't try to determine character encoding.
5850− + Encoding can be specified explicitly using '-e' option.
5851−
5852− * Improved warning messages in wrappers:
5853−
5854− + Print warning if iconv not available
5855− + More user-friendly error messages in markdown2pdf, when
5856− pdflatex fails.
5857−
5858− * Code cleanup:
5859−
5860− + Renamed 'Text/Pandoc/HtmlEntities' module to
5861− 'Text/Pandoc/Entities'. Also changed function names so as
5862− not to be HTML-specific.
5863− + Refactored SGML string escaping functions from HTML and Docbook
5864− writers into Text/Pandoc/Shared. (escapeSGML, stringToSGML)
5865− + Removed 'BlockQuoteContext' from ParserContext, as it isn't
5866− used anywhere.
5867− + Removed splitBySpace and replaced it with a general, polymorphic
5868− splitBy function.
5869− + Refactored LaTeX reader for clarity (added isArg function).
5870− + Converted some CR's to LF's in src/ui/default/print.css.
5871− + Added license text to top of source files.
5872− + Added module data for haddock to source files.
5873− + Reformatted code for consistency.
5874−
5875− * Rewrote documentation and man pages. Split README into INSTALL
5876− and README.
5877−
5878− * Split LICENSE into COPYING and COPYRIGHT.
5879−
5880− * Removed TODO, since we now maintain ToDo on the wiki.
5881−
5882− * Made COPYRIGHT in top level a symlink to debian/copyright, to avoid
5883− duplication.
5884−
5885− [ Recai Oktaş ]
5886−
5887− * Revamped build process to conform to debian standards and created
5888− a proper debian package. Closes: #391666.
5889−
5890− * Modified build process to support GHC 6.6.
5891−
5892− + The package can still be compiled using GHC 6.4.2, though because
5893− of dependencies the "make deb" target works only with GHC 6.6+.
5894− + The script 'cabalize' is used to create an appropriate
5895− 'Pandoc.cabal' from 'Pandoc.cabal.in', depending on the GHC and
5896− Cabal versions.
5897−
5898− * Refactored template processing (fillTemplates.pl).
5899−
5900− * Modified wrapper scripts to make them more robust and portable.
5901− To avoid code duplication and ensure consistency, wrappers are
5902− generated via a templating system from templates in src/wrappers.
5903−
5904− + Wrappers now accept multiple filenames, when appropriate.
5905− + Spaces and tabs allowed in filenames.
5906− + getopts shell builtin is used for portable option parsing.
5907− + Improved html2markdown's web grabber code, making it more robust,
5908− configurable and verbose. Added '-e', '-g' options.
5909−
5910− -- Recai Oktaş <roktas@debian.org> Fri, 05 Jan 2007 09:41:19 +0200
5911−
5912−pandoc (0.2) unstable; urgency=low
5913−
5914− * Fixed unicode/utf-8 translation
5915−
5916− -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400
5917−
5918−pandoc (0.1) unstable; urgency=low
5919−
5920− * Initial creation of debian package
5921−
5922− -- John MacFarlane <jgm@berkeley.edu> Mon, 14 Aug 2006 00:00:00 -0400