Commit graph

997 commits

Author SHA1 Message Date
John MacFarlane
f3f557d988 Emit warning instead of failing on invalid YAML header. 2013-07-01 22:29:04 -07:00
John MacFarlane
82e46bf385 LaTeX reader: Support alltt environment.
Closes  #892.
2013-06-27 18:54:31 -07:00
John MacFarlane
243c56a880 Fixed 'authors' metadata parsing in reST.
Semicolons separate different authors.
2013-06-25 22:32:50 -07:00
John MacFarlane
f869f7e08d Use new flexible metadata type.
* Depend on pandoc 1.12.
* Added yaml dependency.
* `Text.Pandoc.XML`: Removed `stripTags`.  (API change.)
* `Text.Pandoc.Shared`:  Added `metaToJSON`.
  This will be used in writers to create a JSON object for use
  in the templates from the pandoc metadata.
* Revised readers and writers to use the new Meta type.
* `Text.Pandoc.Options`: Added `Ext_yaml_title_block`.
* Markdown reader:  Added support for YAML metadata block.
  Note that it must come at the beginning of the document.
* `Text.Pandoc.Parsing.ParserState`:  Replace `stateTitle`,
  `stateAuthors`, `stateDate` with `stateMeta`.
* RST reader:  Improved metadata.
  Treat initial field list as metadata when standalone specified.
  Previously ALL fields "title", "author", "date" in field lists
  were treated as metadata, even if not at the beginning.
  Use `subtitle` metadata field for subtitle.
* `Text.Pandoc.Templates`:  Export `renderTemplate'` that takes a string
  instead of a compiled template..
* OPML template:  Use 'for' loop for authors.
* Org template: '#+TITLE:' is inserted before the title.
  Previously the writer did this.
2013-06-24 20:29:41 -07:00
John MacFarlane
e3b8b89d31 Markdown reader: Check for blank lines first in blocks.
(And skip them.  This might speed things up in some cases.)
2013-06-19 09:22:57 -07:00
John MacFarlane
f2c3335642 Properly handle blank line at beginning of input.
Closes #882.
2013-06-19 09:11:34 -07:00
John MacFarlane
b53ea23b3f Improved code readability. 2013-06-19 09:08:35 -07:00
John MacFarlane
e0832b0359 Markdown reader: fixed bug in unmatched reference links.
The input

    [*infile*] [*outfile*]

was getting improperly parsed:  "infile" was emphasized, but
"*outfile*" was literal.  This was due to failure to parse the
"fallback" in the reference link parser.

Closes #883.
2013-06-19 08:56:11 -07:00
John MacFarlane
b04dfde403 RST reader: don't insert paragraphs where docutils doesn't.
rst2html doesn't add `<p>` tags to list items (even when they are
separated by blank lines) unless there are multiple paragraphs in the
list.  This commit changes the RST reader to conform more closely to
what docutils does.

Closes #880.
2013-06-18 10:04:37 -07:00
John MacFarlane
50ba5a801a Textile reader: Correctly handle entities. 2013-06-11 10:16:54 -07:00
John MacFarlane
ca09c1ac3b MediaWiki reader: Ignore attributes on headers. 2013-05-20 11:08:27 -07:00
John MacFarlane
c63e490ab2 MediaWiki reader: Skip attributes on table rows.
Previously we just crashed if rows had attributes, now we
ignore them.
2013-05-20 10:43:12 -07:00
John MacFarlane
b89a443034 Markdown reader: Allow internal + in citation identifiers.
Closes #856.
2013-05-13 10:33:31 -07:00
John MacFarlane
d097734189 LaTeX reader: Skip positional options after \begin{figure}. 2013-05-12 16:11:35 -07:00
John MacFarlane
af6f216c96 Treat \textsl as emphasized text in LaTeX reader.
Closes #850.
2013-05-09 15:29:27 -07:00
John MacFarlane
031686bd35 Markdown reader: Implemented Ext_ascii_identifiers.
Closes #807.
2013-04-23 20:40:23 -07:00
John MacFarlane
0ee081ef25 Markdown reader: minor code cleanup. 2013-04-19 20:23:50 -07:00
John MacFarlane
5c03275a63 Haddock reader improvements.
- Correctly handle ghci sessions.
- Fixed spacing issues.
- Simplified code.
2013-04-14 21:39:05 -07:00
John MacFarlane
df1522e1eb Removed unnecessary OPTIONS flag in Haddock/Parse.y. 2013-04-09 19:53:48 -07:00
John MacFarlane
e938fc1ae2 Fixed Haddock reader bugs with list item spaces and examples.
Closes #824.
2013-04-09 18:12:54 -07:00
David Lazar
67b38fac64 Haddock reader: leaving Space alone in @...@ seems more semantically correct. 2013-04-04 23:11:43 -07:00
David Lazar
100f8df43e Haddock reader: derive Show for Token, making debugging easier. 2013-04-04 23:01:15 -07:00
John MacFarlane
7e4290561d LaTeX reader: Support \textasciitilde, \textasciicircum.
Closes #810.
2013-03-31 21:08:19 -07:00
David Lazar
8663667788 Haddock reader: make clearer which production the comment refers to. 2013-03-29 11:43:49 -07:00
David Lazar
d2704c2af1 Haddock reader: add the "haskell" attribute to code blocks so they are
highlighted. We reasonably assume that code blocks in Haddock markup
wont be used for anything but Haskell code.
2013-03-29 10:35:06 -07:00
David Lazar
7424454ace Haddock reader: improved error reporting. 2013-03-29 10:22:11 -07:00
John MacFarlane
7cb8b60910 Parsing: Better error reporting in readWith.
- Specialize readWith to String input.
- On error have it print the line in which the error occurred,
  with a caret pointing to the column.
- This should help diagnose parsing problems in LaTeX especially.
2013-03-28 22:20:05 -07:00
John MacFarlane
30969974f0 Haddock writer: use 'text' builder instead of 'str'.
This articulates strings into Str, Space, allowing them to be
hard-wrapped intelligently by the writers.

This patch also fixes a bug with trailing spaces and newlines.
(See #806.)
2013-03-28 20:09:06 -07:00
David Lazar
18459b95ba Add reader for Haddock markup based on Haddock's own lexer/parser. 2013-03-28 14:53:10 -07:00
John MacFarlane
e81b87c2dc Mediawiki reader: Fixed | links inside table cells.
Improved attribute parsing.
2013-03-28 11:26:22 -07:00
John MacFarlane
998695001a Mediawiki reader: Fixed last commit. 2013-03-28 10:51:14 -07:00
John MacFarlane
48b23d491d MediaWiki reader: Correctly handle indented preformatted text
without preceding or following blank line.
2013-03-28 10:48:00 -07:00
John MacFarlane
351b3e09c3 mediawiki reader: allow space before table rows. 2013-03-27 08:45:51 -07:00
John MacFarlane
a63c208d77 OPML reader: Type attributes are not case sensitive.
So, `type="link"` or `type="LINK"`.
2013-03-20 09:16:16 -07:00
John MacFarlane
74d53f4347 Added Text.Pandoc.Readers.OPML, exporting readOPML.
The _note attribute is supported.  This is unofficial, but
used e.g. in OmniOutliner and supported by multimarkdown.
We treat the contents as markdown blocks under a section
header.

Added to documentation and tests.
2013-03-19 20:22:14 -07:00
John MacFarlane
cae52ecc31 Revert "LaTeX reader: citation handling changes."
This reverts commit f7229b1473.
2013-03-17 08:48:29 -07:00
John MacFarlane
db3d4113a2 Markdown reader: don't lose parentheses in URLs.
Added tests.  This fixes a regression from 1.10.x.  Closes #786.
2013-03-13 19:20:25 -07:00
John MacFarlane
d820eb2c47 Markdown reader: Handle unmatched double quotes in dialogues.
They do not generate a Quoted element; instead, the double quote
is just turned into a Str with a curly left quote.

This should satisfy the fiction writers.  Closes #99 (again).
2013-03-12 19:18:14 -07:00
John MacFarlane
54782c2af6 Fixed spacing bugs involving code block attributes.
Closes #763.
2013-03-11 20:45:27 -07:00
John MacFarlane
f7229b1473 LaTeX reader: citation handling changes.
Previously, a LaTeX citation would always be parsed as a Citation
element, with the raw LaTeX in the [Inline] part.

Now, the LaTeX citation is parsed as a Citation element only if
`--biblio` was specified (i.e. only if there is a nonempty set
of references in readerReferences).  Otherwise it is parsed as
raw LaTeX.

This will make it possible to simplify some things in the markdown
writer.  It also makes the LaTeX reader behave more like the Markdown
reader.
2013-03-09 10:33:25 -08:00
John MacFarlane
48be39ae2a Support :number-lines: in RST code output. 2013-03-06 10:13:12 -08:00
John MacFarlane
f7d37c97bb LaTeX reader: Better support for Verbatim and minted environments.
Closes #763.
2013-03-06 09:58:47 -08:00
John MacFarlane
8b3a81e4dd LaTeX reader: Handle language attribute for lstlistings.
Convert it to a highlighting-kate language name.
2013-03-05 22:43:27 -08:00
John MacFarlane
3692e371a7 LaTeX reader: Read optional attributes in lstlisting environment.
We convert these to pandoc standard names, e.g. "numberLines"
for "numbers=left", "startFrom=100" from "firstnumber=100".

Still need to add code to convert the language names.
2013-03-04 09:50:11 -08:00
John MacFarlane
f4629df14a Markdown reader: attribute parsing improvements.
* Cleaned up parsing code.
* '-' in an attribute context = '.unnumbered'.  The point of this
  is to provide a way to specify unnumbered headers in non-English
  documents.
2013-03-02 21:08:33 -08:00
John MacFarlane
3ad68b2522 Check for tables before line blocks.
Otherwise some pipe tables get treated as line blocks.
2013-03-02 19:02:50 -08:00
John MacFarlane
1aff783095 Markdown reader: Allow spaces around borders in pipe tables.
Closes #772.
2013-03-02 18:59:50 -08:00
John MacFarlane
f449dfd55d LaTeX reader: Add "fig:" as title for images with captions.
This is needed for them to be rendered as figures.
Closes #766.
2013-03-01 12:22:01 -08:00
John MacFarlane
649608d324 Markdown: allow ---- in angle-bracket autolinks.
The uri parser is designed for bare URIs.  In angle-bracket contexts,
we can be sure that we don't have trailing punctuation.  So
`<http://openclipart.org/detail/22566/lego-smiley----happy-by-pitr>`
should work now.

Closes #768.
2013-02-28 22:05:22 -08:00
John MacFarlane
52ee09608a LaTeX reader: Handle \caption for images in figures.
Closes #766.
2013-02-26 22:16:03 -08:00