Commit graph

709 commits

Author SHA1 Message Date
John MacFarlane
29a17b1767 Merge pull request #733 from jrunningen/master
Mediawiki reader: Don't require blanklines after tables.
2013-01-28 09:42:59 -08:00
John MacFarlane
72d11ad20b Markdown/RST reader: Skip blank lines.
This fixes a subtle regression involving grid tables with
empty cells.  Closes #732.

Also added test for grid table with empty cells.
2013-01-27 22:13:05 -08:00
Jeff Runningen
efddb85d46 Mediawiki reader: Don't require blanklines after tables. 2013-01-27 23:15:46 -05:00
John MacFarlane
9d549ab683 RST writer: Use .. code:: language for code blocks with language.
Closes #721.
Also fixed whitespace in lhs tests.
2013-01-26 16:12:11 -08:00
John MacFarlane
daeb52d4e0 Eliminated use of TH in test suite. 2013-01-23 19:26:39 -08:00
John MacFarlane
f468db9277 LaTeX template: Use \urlstyle{same} to avoid monospace URLs. 2013-01-21 11:52:00 -08:00
John MacFarlane
26d30d6d38 Use proportional font for email autolinks with obfuscation.
Closes #714.
2013-01-21 11:28:35 -08:00
John MacFarlane
af84953781 Markdown reader: Fixed bug with headerless grid tables.
The 1.10 code assumed that each table header cell contains
exactly one block. That failed for headerless tables (0) and also
for tables with multiple blocks in a header cell.

The code is fixed and tests provided. Thanks to Andrew Lee for
pointing out the bug.
2013-01-21 09:52:24 -08:00
John MacFarlane
9cc1cf1f40 Fixed bug with escaped % in LaTeX reader.
Also added tests.  Closes #710.
2013-01-20 19:21:13 -08:00
John MacFarlane
27e7c57721 LaTeX test updates for latest changes to template & h-k. 2013-01-19 10:41:42 -08:00
John MacFarlane
2fbe611a96 Get rid of compiler warnings in Tests.Helpers. 2013-01-19 10:41:12 -08:00
John MacFarlane
809d74b86d Set locale encoding in test suite.
This prevents a "commit buffer (invalid argument)" error on
Windows.
2013-01-18 11:23:09 -08:00
John MacFarlane
8eab759a9c RTF writer: Added writeRTFWithEmbeddedImages.
* RTF writer:  Export writeRTFWithEmbeddedImages instead of
  rtfEmbedImage.
* Text.Pandoc: Use writeRTFWithEmbeddedImages for RTF.
* Moved code for embedding images in RTF out of pandoc.hs.
2013-01-18 10:33:37 -08:00
John MacFarlane
bf3a911a1c Changed Ext_autolink_urls -> Ext_autolink_bare_uris.
Added tests.
2013-01-15 12:44:50 -08:00
John MacFarlane
e9b3d5aa7a Added lots of tests for bare URIs. 2013-01-15 12:28:31 -08:00
John MacFarlane
e0e36ce543 Revised URI parser.
* It no longer uses Network.URIs URI parser, which is too restrictive
  (not allowing unicode URIs unless encoded).
* It allows many more schemes.
* It better handles punctuation so as to avoid capturing trailing
  punctuation in bare URLs.
2013-01-15 10:52:02 -08:00
John MacFarlane
7bc37e4414 Use 'fig:' instead of '\SOH' in title to indicate figure.
Revises 1a4b47e933
2013-01-15 08:46:09 -08:00
John MacFarlane
1a4b47e933 Implemented Ext_implicit_figures.
* In markdown reader, add a '\1' character to the beginning
  of the title of an image that is alone in its paragraph,
  if implicit_figures extension is selected.
* In writers, check for Para [Image alt (src,'\1':tit)] and treat
  it as a figure if possible.
* Updated tests.

This is a bit of a hack, but it allows us to make implicit_figures
an extension of the markdown reader, rather than the writers.
2013-01-14 20:53:08 -08:00
John MacFarlane
51e0bd277a Parsing: Fixed uri -- escape unicode URLs.
Otherwise Network.URI.parseURI fails on e.g. Chinese
URLs.  Changed an incorrect test in markdown-reader-more.
2013-01-14 17:38:34 -08:00
John MacFarlane
45895b561f RST writer: Fixes bug with links with duplicate text.
We now (a) use anonymous links for links with inline URLs, and
(b) use an inline link instead of a reference link if the
reference link would require a label that has already been
used for a different link.

Closes #511.
2013-01-13 23:00:05 -08:00
John MacFarlane
9ee9096d07 Added tests for markdown line blocks and explicit header attributes. 2013-01-13 18:03:15 -08:00
John MacFarlane
5c067bb457 RST reader: Line block improvements.
* Use nonbreaking spaces for initial indent (otherwise lost in HTML and
  LaTeX).
* Allow multiple paragraphs in a single line block.
2013-01-13 11:15:31 -08:00
John MacFarlane
5ecadd7bfa Use line block in RST writer when a paragraph contains linebreaks.
Previously linebreaks weren't supported in RST, since RST
has no native linebreak construct.
2013-01-13 09:25:56 -08:00
John MacFarlane
70e308f2f9 Escape | as \vert in LaTeX math.
This avoids a clash with highlighting-kate's macros, which
redefine | as a short verbatim delimiter.  Thanks to
Björn Peemöller for raising this issue.
2013-01-12 10:21:19 -08:00
John MacFarlane
f2aa5fd661 Fixed/simplified diff output for tests. 2013-01-12 10:21:07 -08:00
John MacFarlane
d599c4cdab Added Attr field to Header.
Previously header ids were autogenerated by the writers.
Now they are generated (unless supplied explicitly) in the
markdown parser, if the `header_identifiers` extension is
selected.

In addition, the textile reader now supports id attributes on
headers.
2013-01-09 09:30:05 -08:00
John MacFarlane
8ff81dc9ca Updated tests for tight/loose lists.
Taking into account new context/latex output, and fixing
some bugs in the test suite Tests.Helpers and Tests.Writers.ConTeXt.
(We had the wrong order of expected/actual in the diff output.)
2013-01-07 20:58:49 -08:00
John MacFarlane
8c48bd8feb Don't put the text of an autolink in Code font. 2013-01-06 20:51:51 -08:00
John MacFarlane
300f8528da Mediawiki reader: interpret HTML in verbatim contexts as text.
Thanks to Jeff Runningen for reporting that mediawiki works
this way.
2013-01-06 19:35:40 -08:00
John MacFarlane
7d74a916ff Updated table tests for latex writer changes. 2013-01-05 20:03:50 -08:00
John MacFarlane
91e8d80eee MediaWiki writer: use <code> not <tt> for Code. 2013-01-04 23:16:49 -08:00
John MacFarlane
0f9e2c2320 Added css to preserve spaces in <code> tags.
Thanks to Dirk Laurie.
2013-01-04 23:02:22 -08:00
John MacFarlane
3d7608d855 Updated tests for latest highlighting-kate version. 2013-01-04 19:48:02 -08:00
John MacFarlane
5a4f7ec595 Added tests for implicit header references. 2013-01-03 20:43:44 -08:00
John MacFarlane
56ff5e1845 Updated test runner for changes in pandoc. 2013-01-03 11:20:10 -08:00
John MacFarlane
0675346e76 Fixed test suite to use Diff 0.2 API. 2013-01-02 11:41:22 -08:00
John MacFarlane
4cd573c61f Textile reader/writer: Fixed autolinks.
Previously the textile reader and writer incorrectly implented
RST-style autolinks for URLs and email addresses.

This has been fixed.  Now an autolink is done this way:

    "$":http://myurl.com
2012-11-06 16:05:17 -08:00
John MacFarlane
9d0b011869 RST writer: Don't add ":align: center" to figures. 2012-11-04 18:33:35 -08:00
John MacFarlane
06300e59d5 Removed citationSuppressParens.
Makefile: Use citeproc-0.3.6 release.
2012-10-28 09:36:15 -07:00
John MacFarlane
6f2347635c LaTeX reader: Initialize citationSuppressParens field. 2012-10-22 19:17:00 -07:00
John MacFarlane
cfab8eaecb Revert "LaTeX reader: Use new suppressParens option for footnote citations."
This reverts commit 7499499b68.

Conflicts:

	src/Text/Pandoc/Readers/LaTeX.hs
2012-10-21 23:16:23 -07:00
John MacFarlane
bfddcb46dc Revert "Adjust LaTeX reader test for last change."
This reverts commit ea34087cde.
2012-10-21 23:14:42 -07:00
John MacFarlane
ca583a340f Updated lhs-test.latex for new highlighting-kate treatment of `. 2012-10-20 23:54:05 -07:00
John MacFarlane
ea34087cde Adjust LaTeX reader test for last change. 2012-10-15 20:01:07 -07:00
John MacFarlane
7499499b68 LaTeX reader: Use new suppressParens option for footnote citations.
Also changed Biblio, Markdown reader, and LaTeX reader tests because
of new citationSuppressParens field in Citation.
2012-10-15 19:53:57 -07:00
John MacFarlane
ea8b8114e1 Textile reader: Fixed bug with list items containing line breaks.
Now pandoc correctly handles hard line breaks inside list items.
Previously they broke list parsing.  Thanks to Pablo
Rodríguez for pointing out the problem.
2012-10-13 10:44:38 -07:00
John MacFarlane
4349097990 LaTeX reader: Better support for citation commands.
* Make `\cite` etc. an AuthorInText.
* Make `\footcite` etc. into citations in notes.
2012-10-10 19:41:39 -07:00
John MacFarlane
f232034ab0 Textile reader: Implemented comment blocks. 2012-10-05 10:23:15 -07:00
John MacFarlane
eea4c9e4d3 Updated mediawiki writer test for <br /> change. 2012-10-04 08:36:00 -07:00
John MacFarlane
e8260c27e1 RST reader: Consolidate super/subscript, math into interpretedRole. 2012-09-30 20:28:50 -07:00
John MacFarlane
b07ea7a02d RST reader: Consolidated rawBlock into directive. 2012-09-30 09:59:22 -07:00
John MacFarlane
93e92a4716 Renamed removedLeadingTrailingSpace to trim.
Also removeLeadingSpace to triml,
removeTrailingSpace to trimr.
2012-09-29 17:09:34 -04:00
John MacFarlane
487d01118f RST reader: Consolidated math block parsers into directive. 2012-09-29 16:59:41 -04:00
John MacFarlane
ab17faf497 RST reader: Use Text.Pandoc.Builder.
This will give us more flexibility in the future.
It also gives built-in normalization.  Performance slightly
better.
2012-09-27 17:52:48 -07:00
John MacFarlane
731415a4e5 RST reader: Support :target: on image substitutions. 2012-09-27 15:40:09 -07:00
John MacFarlane
f76478bcb9 RST reader: Support :target: on .. image:: blocks.
Still not supported on substitution definitions.
2012-09-26 22:22:14 -07:00
John MacFarlane
6ad7ac1239 Removed need for utf8-string package.
* Depend on text.
* Expose Text.Pandoc.UTF8.
* Text.Pandoc.UTF8 now exports toString, fromString,
  toStringLazy, fromStringLazy.
* These are used instead of the old utf8-string functions.
2012-09-25 19:54:21 -07:00
John MacFarlane
4ab30f3cea Texinfo writer: Fixed internal cross-references.
Now we insert anchors after each header, and use @ref
instead of @uref for links.

Commas are now escaped as @comma{} only when needed; previously
all commas were escaped.  (This change is needed, in part, because @ref
commands must be followed by a real comma or period.)

Also insert a blank line in from of @verbatim environments.
2012-09-24 19:13:34 -07:00
John MacFarlane
22bd34fa33 Markdown reader: Fixed link parser to avoid exponential slowdowns.
Previously the parser would hang on input like this:

    [[[[[[[[[[[[[[[[[[hi

We fixed this by making the link parser parser characters
between balanced brackets (skipping brackets in inline code spans),
then parsing the result as an inline list.

One change is that

    [hi *there]* bud](/url)

is now no longer parsed as a link.  But in this respect pandoc behaved
differently from most other implementations anyway, so that seems okay.
All current tests pass.  Added test for this case.

Closes #620.
2012-09-22 14:05:09 -07:00
John MacFarlane
1038606036 LaTeX reader: Added a 'try' in rawLaTeXBlock.
This allows the markdown reader to treat '\begin' (not followed
by an argument) as a raw string rather than erroring out when
it doesn't find a '{'.

Closes #622.
2012-09-22 13:00:59 -07:00
John MacFarlane
93c35cbf14 Tests.Old: Set TMP to ".".
Otherwise TMP is unset and, on Windows, C:\Windows is used by default,
leading to permission violations.
2012-09-21 20:34:27 -07:00
John MacFarlane
e1be934dc2 LaTeX writer: Don't rely on the enumerate package.
Instead, use standard LaTeX commands to change numbering style.
2012-09-16 22:24:55 -07:00
John MacFarlane
1e2b20f8bc LaTeX writer: Properly escape strings inside \url{}.
Closes #576.
2012-09-16 11:20:53 -07:00
John MacFarlane
9f89269941 Merge pull request #596 from dlax/rst-fieldlists
improvements to rst reader for field lists
2012-09-16 10:19:42 -07:00
John MacFarlane
fc31bf27f5 MediaWiki reader: Allow table in table cell. 2012-09-15 21:06:55 -07:00
John MacFarlane
d9e34ce34d LaTeX writer: don't escape _ in url. 2012-09-15 20:43:36 -07:00
John MacFarlane
fc4ae15337 LaTeX writer: Don't use \endhead with longtable.
It causes the heading to be a different size form the body,
sometimes.
2012-09-15 20:40:48 -07:00
John MacFarlane
a71ac7cde7 Revised latex writer tests to use longtable. 2012-09-15 17:57:22 -04:00
John MacFarlane
64b0378f5d MediaWiki reader: Added test case for templates in list item. 2012-09-15 16:29:52 -04:00
John MacFarlane
2bc32bcb04 MediaWiki reader: Added test for ref. 2012-09-15 16:28:25 -04:00
John MacFarlane
0a2fb202fb MediaWiki reader: Interpret width attribute on table columns. 2012-09-15 15:04:11 -04:00
John MacFarlane
26fb63e294 MediaWiki reader: Got alignments working.
They only work on headers, because pandoc forces same
alignment for all cells in a column.
2012-09-15 14:20:50 -04:00
John MacFarlane
eca9eeab6b MediaWiki reader: Misc fixes, put category links at end. 2012-09-15 13:50:02 -04:00
John MacFarlane
9a54a949c7 MediaWiki reader: Parse styles after '{|' table start. 2012-09-15 00:23:24 -04:00
John MacFarlane
152ddfb232 MediaWiki reader: Added test for multi-paragraph cells. 2012-09-14 23:31:55 -04:00
John MacFarlane
ce509be57a MediaWiki reader: Table improvements, added simple table tests. 2012-09-14 10:55:16 -04:00
John MacFarlane
46be934994 MediaWiki reader: Images. 2012-09-13 18:16:25 -07:00
John MacFarlane
a0d7b3f37b MediaWiki reader: internal links. 2012-09-13 17:06:09 -07:00
John MacFarlane
fc2f7a4942 MediaWiki reader: Implemented basic internal links.
Including word-ending links and the "pipe trick."
2012-09-13 16:55:08 -07:00
John MacFarlane
5620848ef9 MediaWiki reader: Added tests for external mailto link. 2012-09-13 15:28:11 -07:00
John MacFarlane
017095f690 MediaWiki reader: Implemented numbered external links. 2012-09-13 15:24:05 -07:00
John MacFarlane
81bec8558c MediaWiki reader: Support HTML lists. 2012-09-13 14:47:11 -07:00
John MacFarlane
3fe6ea4c41 MediaWiki reader: Handle templates, variables as raw mediawiki.
Also check for column 1 in preformatted text.
2012-09-13 12:03:54 -07:00
John MacFarlane
5104c2190b MediaWiki reader: preformatted blocks and tests. 2012-09-12 22:44:11 -07:00
John MacFarlane
b703c76540 MediaWiki reader: Support <math> tag. 2012-09-12 19:57:34 -07:00
John MacFarlane
def768cd1f Added tests for mediawiki lists. 2012-09-12 19:48:11 -07:00
John MacFarlane
a76c6df826 More mediawiki reader tests. 2012-09-12 19:35:06 -07:00
John MacFarlane
b19aee4e1e Added some tests for mediawiki reader. 2012-09-12 19:15:34 -07:00
John MacFarlane
3d361b2101 Added basic mediawiki reader.
Text.Pandoc.Readers.MediaWiki module,
tests/mediawiki-reader.{txt,native}.
2012-09-12 09:05:10 -07:00
John MacFarlane
bad3c88cb6 HTML writer: Improve line breaks with <dd> tags.
We now put a newline between `</dd>` and `<dd>` when
there are multiple definitions.
2012-09-12 08:45:03 -07:00
John MacFarlane
3e8e20b4f5 Fixed spacing in context writer test. 2012-09-08 12:13:36 -07:00
John MacFarlane
7d0438897b LaTeX reader: Support obeylines environment.
Closes #604.
2012-09-06 16:27:01 -07:00
John MacFarlane
e2cc9e7ca1 LaTeX reader: Use curly quotes for bare straight quotes. 2012-09-06 16:02:56 -07:00
John MacFarlane
c9d1d97a28 Fixed footnotes bug in textile.
This affected notes occuring before punctuation, e.g.
`foo[1].`.

Closes #518.
2012-09-06 10:38:56 -07:00
Denis Laxalde
cdefeb9445 Fix RST reader for field lists items with body beginning after a new line 2012-08-29 20:47:49 +02:00
John MacFarlane
b21363f1d5 Added (failing) test case for #518. 2012-08-25 22:11:31 -07:00
John MacFarlane
5d3b295568 Man writer: Escape - as \-.
Unescaped -'s become hyphens, while \-'s are left as ascii
minus signs.  That is preferable for use with command-line
options.

See  http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html.
Thanks to Andrea Bolognani for bringing the issue to our
attention.
2012-08-18 10:29:15 -07:00
John MacFarlane
dfa4b76630 Changes to literate haskell options.
- Removed writerLiterateHaskell from WriterOptions.
- Removed readerLiterateHaskell from ReaderOptions.
- Added Ext_literate_haskell to Extensions.  Test for this
  instead of the above.
- Removed failUnlessLHS from Shared.

Note:  At this point, +lhs and .lhs extension no longer has any effect.
Need to fix.
2012-08-08 23:18:19 -07:00
John MacFarlane
fadc7b0d87 Major rewrite of markdown reader.
* Use Builder's Inlines/Blocks instead of lists.

* Return values in the reader monad, which are then
  run (at the end of parsing) against the final
  parser state.  This allows links, notes, and
  example numbers to be resolved without a second
  parser pass.

* An effect of using Builder is that everything is
  normalized automatically.

* New exports from Text.Pandoc.Parsing:
  widthsFromIndices, NoteTable', KeyTable', Key', toKey',
  withQuoteContext, singleQuoteStart, singleQuoteEnd, doubleQuoteStart,
  doubleQuoteEnd, ellipses, apostrophe, dash

* Updated opendocument tests.

* Don't derive Show for ParserState.

* Benchmarks:  markdown reader takes 82% of the time it took before.
  Markdown writer takes 92% of the time (here the speedup is probably
  due to the fact that everything is normalized by default).
2012-08-01 21:45:40 -07:00
John MacFarlane
00dc1e715e Moved WriterOptions and associated types Shared -> Options. 2012-07-26 22:59:56 -07:00