Commit graph

3218 commits

Author SHA1 Message Date
John MacFarlane
dc071f807d Markdown writer: Tables now sensitive to table extension options.
Ext_simple_table, Ext_multiline_tables, Ext_pipe_tables.
Simple tables are preferred over pipe tables when both are
enabled.  If no appropriate table style is available,
a raw HTML table is used.

So far there is no option for output of grid tables.
2012-08-05 10:23:30 -07:00
John MacFarlane
81125e8f4e Documented styles used in reference docx 2012-08-05 09:18:56 -07:00
John MacFarlane
437b9ec5a4 Started making markdown table writer sensitive to options.
So far incomplete.
2012-08-05 00:02:08 -07:00
John MacFarlane
3f913c0cc5 Don't include empty captions in figures.
Closes #581.
2012-08-04 11:34:01 -07:00
John MacFarlane
c19c6fdc50 Markdown reader: look for raw html/latex blocks before tables.
Otherwise the following gets parsed as a table:

\begin{code}
--------------
-- My comment.
\end{code}

Closes #578.
2012-08-04 10:49:05 -07:00
John MacFarlane
64f1d68d4e Don't use escaped line breaks in plain output. 2012-08-02 22:22:52 -07:00
John MacFarlane
b6ab2d3cb8 Made markdown writer sensitive to Ext_subscript/superscript/strikeout.
HTML is used if these are disabled.
2012-08-02 21:40:54 -07:00
John MacFarlane
aef0f1d7c7 Made markdown writer sensitive to Ext_definition_lists.
IF not set, definition lists will be rendered as regular
paragraphs, with the term set off by a line break.
2012-08-02 21:35:02 -07:00
John MacFarlane
03b1ba546f Made markdown writer sensitive to Ext_startnum, Ext_fancy_lists. 2012-08-02 21:20:31 -07:00
John MacFarlane
d21304bab0 Made markdown reader sensitive to Ext_raw_tex. 2012-08-02 21:14:43 -07:00
John MacFarlane
214fef9e27 Made markdown writer sensitive to Ext_table_captions. 2012-08-02 21:07:40 -07:00
John MacFarlane
b98049ee6c Made markdown writer sensitive to Ext_pandoc_title_blocks. 2012-08-02 21:03:54 -07:00
John MacFarlane
1d7fd8012d Made markdown writer sensitive to Ext_footnotes.
If footnotes not enabled, footnotes are formatted like normal
markdown paragraphs, with a marker like [3].
2012-08-02 21:00:02 -07:00
John MacFarlane
2403ca86f9 Markdown reader: Import <> from Text.Pandoc.Builder.
This way the module will work with versions of Data.Monoid
that don't export <>.
2012-08-02 17:25:57 -07:00
John MacFarlane
33fd791ea1 Made F a newtype, moved definitions to Parser.
Parser now exports F(..), askF, asksF, runF.
2012-08-02 17:12:20 -07:00
John MacFarlane
ebd72e7ba6 Improved implementation of pipe tables. 2012-08-01 23:34:48 -07:00
John MacFarlane
a1677b612b Parsing: removed duplication of Key and Key'.
Now we just use the former Key' (string contents),
renamed Key.  lookupKeySrc and fromKey are no longer
eport.  Key', toKey' and KeyTable' have become Key,
toKey, and KeyTable.
2012-08-01 22:40:07 -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
973c7ecacf Removed commented-out pandoc2 code.
This will be developed in a branch, noreparsing.
2012-07-27 21:04:38 -07:00
John MacFarlane
c76ef95308 Parser: Changed types to use type alias Parser, not Parsec. 2012-07-27 20:50:03 -07:00
John MacFarlane
0380aa63d5 Updated extension labels in README. 2012-07-27 19:04:27 -07:00
John MacFarlane
eb99b7e7b9 Commented out extensions that don't yet do anything. 2012-07-27 19:04:11 -07:00
John MacFarlane
7905feac3f Removed deprecated writerXeTeX. 2012-07-27 16:01:17 -07:00
John MacFarlane
f0b9d52fd3 Markdown reader: Added sensitivity to Ext_example_lists. 2012-07-27 16:00:27 -07:00
John MacFarlane
ec7c1631a5 More documentation of extensions 2012-07-27 16:00:22 -07:00
John MacFarlane
b516082997 Markdown reader: Check fancy_lists and startnum extensions. 2012-07-27 15:45:47 -07:00
John MacFarlane
6e548b8a8f Started documenting individual syntax extensions in README. 2012-07-27 15:45:30 -07:00
John MacFarlane
fc738c6315 Benchmark: default to sample size of 20 for speed. 2012-07-27 11:13:18 -07:00
John MacFarlane
5b6e70c3b5 Use README + testsuite in benchmarks. 2012-07-27 11:06:24 -07:00
John MacFarlane
38c452b342 Added --disable and --enable options for markdown extensions. 2012-07-27 10:49:53 -07:00
John MacFarlane
b98219773b Replaced writerStrict with writerExtensions in WriterOptions.
Still have not implemented individual tests for all the extensions
in the markdown writer.
2012-07-27 09:18:51 -07:00
John MacFarlane
00dc1e715e Moved WriterOptions and associated types Shared -> Options. 2012-07-26 22:59:56 -07:00
John MacFarlane
6d7f0a1b81 Fixed whitespace errors. 2012-07-26 22:32:53 -07:00
John MacFarlane
e797ab9136 Textile reader: Replace failIfStrict with guardEnabled. 2012-07-26 22:21:00 -07:00
John MacFarlane
14c911ba06 Parsing: Removed failIfStrict. 2012-07-26 22:20:44 -07:00
John MacFarlane
33fdea67b5 Use readerExtensions instead of readerStrict in readers.
Test individually for the extensions.
2012-07-26 20:29:08 -07:00
John MacFarlane
5186da929d Parsing: Added guardEnabled, guardDisabled. 2012-07-26 19:10:56 -07:00
John MacFarlane
631e5c16fc pandoc: Set readerExtensions instead of readerStrict. 2012-07-26 18:56:19 -07:00
John MacFarlane
f4c7ad6caf Revert "Require Cabal 0.14."
This reverts commit f6cc63de41.

Older versions of cabal supposedly just ignore the benchmark
stanza.
2012-07-26 11:51:37 -07:00
John MacFarlane
f6cc63de41 Require Cabal 0.14. 2012-07-26 11:09:25 -07:00
John MacFarlane
786d01fd1d Bump version to 1.10. 2012-07-26 10:02:27 -07:00
John MacFarlane
1de26d0857 Added type signature. 2012-07-26 10:02:00 -07:00
John MacFarlane
50f2641f63 Updated INSTALL for new test/benchmarks. 2012-07-26 10:01:23 -07:00
John MacFarlane
c936b25ebf Changed travis instructions for new test. 2012-07-26 09:56:01 -07:00
John MacFarlane
acbb4a5e46 Integrated test suite with cabal.
To run tests, configure with --enable-tests, then 'cabal test'.
You can specify particular tests using --test-options='-t markdown'.

No output is shown unless tests fail.  In the future, we can move
to the detailed-1.0 interface.
2012-07-26 09:43:27 -07:00
John MacFarlane
c414a08bcf Integrated benchmark into cabal.
Can now do:

cabal configure --enable-benchmarks && cabal build
cabal bench --benchmark-option='markdown' --benchmark-option='-s 20'
2012-07-26 09:19:40 -07:00
John MacFarlane
45e4c123a4 Moved tests to tests/, modified cabal file so lib isn't recompiled. 2012-07-26 08:37:36 -07:00
John MacFarlane
3053267280 Fixed MakeManPage for new reader signature. 2012-07-26 08:37:14 -07:00
John MacFarlane
800e772d6e Fixed Benchmark to compile with latest changes. 2012-07-25 22:38:59 -07:00
John MacFarlane
acde1e82d2 Changed reader parameters from ParserState to ReaderOptions. 2012-07-25 22:35:41 -07:00