Commit graph

1345 commits

Author SHA1 Message Date
John MacFarlane
d8272d0356 Support Sphinx style math in RST reader.
Inline:  :math:`E=mc^2`

Block:

.. math: E = mc^2

.. math::

   E = mc^2

   a = b^2

(This latter will turn into a paragraph with two
display math elements.)

Closes #117.
2011-12-30 23:46:43 -08:00
John MacFarlane
3e526918f8 Fixed layout bug in ConTeXt and LaTeX writers.
This was a regression introduced by the recent internal
links changes.
2011-12-30 16:28:44 -08:00
John MacFarlane
506a5b07d1 LaTeX writer: only use hyperdef on section if there's a link to it. 2011-12-30 16:14:35 -08:00
John MacFarlane
2c1569a0da Added support for internal links in ConTeXt writer.
Based on a patch by B. Scott Michel.

Also simplified use of \hyphenateurl. We no longer try to go within
an Inline list to find URLs.  This is resource-heavy, and the main
use case is autolinks, which can be readily recognized.
2011-12-30 14:32:49 -08:00
John MacFarlane
e3dfb2646d Add support for internal links to LaTeX writer.
Based on a patch by B. Scott Michel.
2011-12-30 14:30:45 -08:00
B. Scott Michel
a5ee02c659 ConTeXt writer: Add section labels and internal links as in HTML.
Add the ability to refer to internal links to the ConTeXt writer, just
like the HTML writer can. The 'hierarchicalize' function generates
unique names for sections, which can be used for references in ConTeXt,
just as they can be in HTML.

The ConTeXt writer adds these unique identifiers to each \section and
does special processing of the Link target to see if it starts with a
'#' (hash symbol), which is the tip-off that the link is an internal
link.
2011-12-30 13:10:15 -08:00
John MacFarlane
673c044a15 HTML writer: Better handling of authors in meta tags.
Footnotes and email addresses now come out in a more pleasing
way.

Modified from a patch by B. Scott Michel.
2011-12-30 13:03:31 -08:00
John MacFarlane
edf646a90d ConTeXt writer: Made --toc work even without --number-sections. 2011-12-30 11:42:05 -08:00
John MacFarlane
352ee2dc4f Small tweaks to hyphenatedurl patch.
Use isURI instead of isAbsoluteURI, as it also matches
absolute URIs with '#...' at the end.
2011-12-30 11:08:42 -08:00
B. Scott Michel
80ba468535 ConTeXt_url_hyphenation
Deeply scan through the [Inline] associated with a Link and ensure that
all URLs are hyphenated using SYB primitives.
2011-12-30 10:48:57 -08:00
John MacFarlane
b76ba44c52 LaTeX writer: Improved detection of book classes.
We now check the `documentclass` variable, and if that is
not set, we look through the template itself.  Also, we
have added the KOMA classes scrreprt and scrbook.

You can now make a book using

    markdown2pdf -V documentclass:book
2011-12-30 09:57:00 -08:00
John MacFarlane
7702d2ca82 EPUB: Get correct environment variable for LANG.
This should fix `<dc:language>` problems.
2011-12-30 09:55:36 -08:00
John MacFarlane
925a4c5164 Better smart quote parsing.
* Added stateLastStrPos to ParserState. This lets us keep track
  of whether we're parsing the position immediately after a 'str'.
  If we encounter a ' in such a location, it must be an apostrophe,
  and can't be a single quote start.

* Set this in the markdown, textile, html, and rst str parsers.

* Closes #360.
2011-12-29 23:44:12 -08:00
John MacFarlane
a0a31979ff Merge pull request #366 from gridaphobe/master
Use Link instead of RawInline for reference backlinks
2011-12-29 22:00:54 -08:00
John MacFarlane
ea39a607ed Added 'beamer' as an output format.
Beamer output uses the default LaTeX template, with some
customizations via variables.

Added `writerBeamer` to `WriterOptions`.

Added `--beamer` option to `markdown2pdf`.
2011-12-29 13:26:04 -08:00
John MacFarlane
012405e8c3 Preserve attributes in highlighted HTML.
The container element will have the classes, id, and
key-value attributes you specified in the delimited code
block.

Previously these were stripped off.
2011-12-28 22:04:38 -08:00
John MacFarlane
4fd9fb9ea2 EPUB: Correctly handle internal links.
Previously they were ignored.  Now all links are preserved,
but purely internal links are modified so that they point
to the proper place in the EPUB.

This is nontrivial, since the heading you refer to in your
markdown source with 'my-section-1' might end up as
'ch16.xhtml#my-section' in the EPUB.

Closes #76.
2011-12-28 19:40:03 -08:00
John MacFarlane
16629bf1ce Added --highlight-style and --no-highlight options. 2011-12-27 23:46:47 -08:00
John MacFarlane
3122959064 Highlighting: Add language as class name.
This restores behavior of 1.8.2.1. Adjusted tests.
2011-12-27 22:24:31 -08:00
John MacFarlane
a579e2c892 Replaced Apostrophe, Ellipses, EmDash, EnDash w/ unicode strings. 2011-12-27 15:45:34 -08:00
John MacFarlane
8838f473a8 LaTeX reader: Return Str instead of Apostrophe. 2011-12-27 11:19:23 -08:00
John MacFarlane
4f76fe5a1d Markdown reader: Improved previous patch to allow unicode apostrophe. 2011-12-27 11:01:34 -08:00
John MacFarlane
8f1da35917 Pretty: return Str with unicode instead of Apostrophe. 2011-12-27 11:01:10 -08:00
John MacFarlane
de79021543 EPUB writer: Make external (absolute) links active. 2011-12-26 23:18:32 -08:00
John MacFarlane
dd96267626 Modified str parser to capture apostrophes in smart mode.
This solves a problem stemming from the fact that a parser
doesn't know what came *before* in the input stream.

Previously pandoc would parse

D'oh l'*aide*

as containing a single quoted "oh l", when both `'`s should
be apostrophes.  (Issue #360.)  There are two issues here.

(a) It is obvious that the first `'` is not an open quote,
becaues of the preceding `D`. This patch solves the problem.

(b) It is obvious to us that the second `'` is not an
open quote, because we see that *aide* is some text.
But getting a good algorithm that has good performance is
a bit tricky.  You can't assume that `'` followed by `*`
is always an apostrophe:

*'this is quoted'*

This patch does not fix (b).
2011-12-26 23:04:45 -08:00
John MacFarlane
45958de0e1 Updated highlighting for highlighting-kate 0.4.
Text.Pandoc.Highlighting now exports just one new function,
'highlight', and reexports all the other functions from
highlighting-kate that are used in the writers.  This should
make it easy to switch highlighting engines if that is ever
desired.
2011-12-26 22:49:50 -08:00
Eric Seidel
6cd20c98fd change reference backlink from RawInline to Link so it gets rendered properly when using the xmlhtml package 2011-12-24 21:49:38 -06:00
John MacFarlane
cc18291baf LaTeX writer: Support highlighting for inline code. 2011-12-23 18:37:52 -08:00
John MacFarlane
77815c63db LaTeX writer: Have LHS files set the "listings" variable. 2011-12-23 18:26:03 -08:00
John MacFarlane
3fa98607db LaTeX writer: Implemented syntax highlighting for CodeBlocks. 2011-12-23 18:05:14 -08:00
John MacFarlane
fca95bf43c Removed highlighting flag. Highlighting support is now standard. 2011-12-22 13:24:43 -08:00
John MacFarlane
f61e09cb9a Added writerHighlight to WriterOptions. 2011-12-22 13:12:08 -08:00
John MacFarlane
b892b29eac Removed writerAscii in WriterOptions.
No longer needed or used.
2011-12-22 11:41:35 -08:00
John MacFarlane
7046cef263 Changed types of highlighting functions.
* highlightLaTeX, highlightHtml now return Maybe, not Either.
* This is because h-k's higdlightAs no longer returns an Either.
2011-12-22 00:33:38 -08:00
John MacFarlane
6636b894d1 Added a newline at end of footnotes ol. 2011-12-20 11:36:51 -08:00
John MacFarlane
5ff7f81b85 Restore xhtml style self-closed tags in HTML writer.
This requires blaze-html >= 0.4.3.0.
2011-12-20 11:26:10 -08:00
John MacFarlane
569fc4c67a Added highlightLaTeX stub when not compiled w/ highlighting. 2011-12-19 21:59:53 -08:00
John MacFarlane
a936e5d34f Added highlightLaTeX to Text.Pandoc.Highlighting. 2011-12-19 11:51:17 -08:00
John MacFarlane
5e38d6a689 HTML writer: Put classes "section" and "level[1-6]" on section divs.
(In HTML 5, the "section" class is omitted, since the tag itself
is "section.")
2011-12-18 13:09:58 -08:00
John MacFarlane
fba4f1f37e EPUB: Added customizable templates for epub pages.
epub-page.html, epub-coverimage.html, epub-titlepage.html.
2011-12-18 12:33:44 -08:00
John MacFarlane
1a22e75352 HTML writer: Retain ID attribute in highlighted code blocks. 2011-12-18 12:33:11 -08:00
John MacFarlane
f0e0e1e5d4 Highlighting: Use reads instead of read.
Fixes crash on startNum="abc".
2011-12-18 11:42:24 -08:00
John MacFarlane
bfa5ca01bc HTML writer: Use <del> for strikeout. 2011-12-18 11:08:04 -08:00
John MacFarlane
1c521519d9 HTML writer: Don't escape '.
This requires using a custom string escaper. If we use toHtml
from Blaze, we get &#39;, which is pointless unless you're
writing attributes in single quotes.
2011-12-17 23:58:15 -08:00
John MacFarlane
eaa41a677a Fixed line breaks in tds in table cells. 2011-12-17 23:52:59 -08:00
John MacFarlane
89c962a18c Use blaze-html instead of xhtml for HTML generation.
* This is a breaking API change for `writeHtml`.
* It introduces a new dependency on blaze-html.
* Pandoc now depends on highlighting-kate >= 0.4, which
  also uses blaze-html.
* The --ascii option has been removed, because of differences
  in blaze-html's and xhtml's escaping.
* Pandoc will no longer transform leading newlines in code
  blocks to `<br/>` tags.
2011-12-17 22:46:03 -08:00
John MacFarlane
412580c223 EPUB: Don't use any decimal entities.
kindlegen doesn't like them - even &#39;.
It should be safe to use the unescaped ' character, since
we know that all attributes are double quoted in the relevant
files.
2011-12-13 08:13:27 -08:00
John MacFarlane
d8d68c5110 EPUB writer: made unEntity handle errors better. 2011-12-12 09:17:54 -08:00
John MacFarlane
bdb7648de2 Fixed previous patch so it doesn't swallow a character! 2011-12-12 09:02:26 -08:00
John MacFarlane
1adb807407 EPUB: Use UTF-8 rather than decimal entities.
This addresses a problem with kindlegen pointed out by
Axel Kielhorn.
2011-12-12 00:12:44 -08:00