Commit graph

297 commits

Author SHA1 Message Date
John MacFarlane
8053ba2123 LaTeX writer: Better treatment of footnotes in tables.
Notes now appear in the regular sequence, rather than in the
table cell.  (This was a regression in 1.10.)
2013-12-17 20:53:59 -08:00
John MacFarlane
a3f6f2827c LaTeX writer: Factored out function for table cell creation. 2013-12-17 20:10:09 -08:00
Jose Luis Duran
fdaeec0c48 Add booktabs package for LaTeX tables
[ci skip]
2013-12-04 04:26:22 +00:00
John MacFarlane
b82ef0e29a LaTeX writer: Handle csl flipflopping spans (csl-no-emph, etc.) 2013-11-23 14:41:22 -08:00
John MacFarlane
892ba2dd16 LaTeX writer: Properly escape pdftitle, pdfauthor.
Closes #1059.
2013-11-16 14:09:09 -08:00
John MacFarlane
e63aafd620 Fix definition lists with internal links in terms (closes #1032).
This fix puts braces around a term that contains an internal
link, to avoid problems with square brackets.
2013-10-21 17:33:42 -07:00
John MacFarlane
1f29f4678e LaTeX writer: Specially escape non-ascii characters in labels.
Otherwise we can get compile errors and other bugs when
compiled with pdflatex.  Closes #1007.

Thanks to begemotv2718 for the fix.
2013-10-17 22:06:39 -07:00
John MacFarlane
6e1c24da8e LaTeX writer: Add link anchors for code blocks with identifiers.
Closes #1025.
2013-10-17 13:23:38 -07:00
John MacFarlane
386e933432 Use isURI instead of isAbsoluteURI.
It allows fragments identifiers.
2013-10-16 09:48:11 -07:00
John MacFarlane
0df7cce37d Treat div with class "notes" as speaker notes in slide formats.
Currently beamer goes to `\note{}`, revealjs to `<aside class="notes">`,
and the notes are simply suppressed in other formats.

Closes #925.
2013-10-13 15:37:25 -07:00
John MacFarlane
e135955b1e LaTeX writer: Don't print biblio if --natbib or --biblatex option used. 2013-09-19 10:08:49 -07:00
John MacFarlane
e7a4bcc6fe Merge pull request #961 from nougad/add_latex_listings_label
Write id for code block to label attr in latex when listing is used
2013-08-25 20:48:38 -07:00
John MacFarlane
deb59b6235 Removed dependency on citeproc-hs.
Going forward we'll use pandoc-citeproc, as an external filter.

The `--bibliography`, `--csl`, and `--citation-abbreviation` fields
have been removed.  Instead one must include `bibliography`, `csl`,
or `csl-abbrevs` fields in the document's YAML metadata.  The filter
can then be used as follows:

    pandoc --filter pandoc-citeproc

The `Text.Pandoc.Biblio` module has been removed.  Henceforth,
`Text.CSL.Pandoc` from pandoc-citations can be used by library users.

The Markdown and LaTeX readers now longer format bibliographies and
citations.  That must be done using `processCites` or `processCites'`
from Text.CSL.Pandoc.

All bibliography-related fields have been removed from `ReaderOptions`
and `WriterOptions`: `writerBiblioFiles`, `readerReferences`,
`readerCitationStyle`.

API change.
2013-08-24 22:33:01 -07:00
Florian Eitel
5f09cf7ff0 Write id for code block to label attr in latex when listing is used
The code:

    ~~~{#test}
    asdf
    ~~~

gets compiled to html:

    <pre id="test">
    asdf
    </pre>

So it is possible to link to the identifier `test`

But this doesn't happen on latex

When using the listings package (`--listings`) it is possible to set the
identifier using the `label=test` property:

    \begin{lstlisting}[label=id]
    hi
    \end{lstlisting}

And this is exactly what this patch is doing.

Modified LaTeX Reader/Writer and added tests for this.
2013-08-22 20:15:36 +02:00
John MacFarlane
e8ddcfd997 Scale LaTeX tables so they don't exceed columnwidth. 2013-08-19 16:03:22 -07:00
John MacFarlane
441a7aebf8 LaTeX writer: Avoid problem with footnotes in unnumbered headers.
Closes #940.
Added test case.
2013-08-16 13:03:38 -07:00
John MacFarlane
02a125d0aa Use walk, walkM in place of bottomUp, bottomUpM when possible.
They are significantly faster.
2013-08-10 18:45:00 -07:00
John MacFarlane
9152fa1a95 Use query instead of queryWith. 2013-08-10 18:13:38 -07:00
John MacFarlane
cbfa932106 Adjustments for new Format newtype. 2013-08-10 17:24:54 -07:00
John MacFarlane
e9de0f0e22 Preliminary support for new Div and Span elements in writers.
Currently these are "transparent" containers, except in HTML,
where they produce div and span elements with attributes.
2013-08-08 23:14:12 -07:00
John MacFarlane
a97f39c12e Beamer: add allowframebreaks to slide if set in header classes.
It's recommended that your bibliography slide have this
attribute:

    # References {.allowframebreaks}

This causes multiple slides to be created if necessary, depending
on the length of the bibliography.
2013-07-26 12:40:56 -07:00
John MacFarlane
d5fad2306a LaTeX writer: Change \ to / in paths.
`/` works even on Windows in LaTeX.  `\` will cause major problems
if unescaped.
2013-07-25 20:29:42 -07:00
John MacFarlane
3f1937f78e LaTeX writer: Don't use ligatures in escaping inline code. 2013-07-04 15:06:23 -07:00
John MacFarlane
956425709d Created Text.Pandoc.Writers.Shared, improved metaToJSON.
* Text.Pandoc.Writers.Shared contains shared functions used
  only in writers.
* metaToJSON now takes a WriterOptions parameter, and will
  return an empty object if standalone is not specified.
2013-07-01 20:47:26 -07:00
John MacFarlane
a1f010de78 Metadata changes: Variables now completely shadow metadata.
Previously if you set a value both in metadata and with a variable,
they'd be combined into a list.  Now the variable replaces the
value in document metadata.  If many variables with the same
name are set, a list is created.

Shared:  metaToJSON now has an argument for a variable list.
2013-06-29 22:14:01 -07:00
John MacFarlane
899a65b7d1 Writers: Use defField for defaults.
This way explicitly specified fields not overridden.

Fixes a problem e.g. with specifying a documentclass via
the command line using -V.
2013-06-27 22:42:55 -07:00
John MacFarlane
79a4ea03e2 Stop escaping | in LaTeX math.
This caused problems with array environments.  Closes #891.
2013-06-26 20:54:31 -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
8d19e45b97 LaTeX writer: Always create labels for sections.
Previously the labels were only created when there were links to
the section in the document.

Closes #871.
2013-06-02 14:38:18 -07:00
John MacFarlane
7d7c1f2f8e Fixed footnote numbers in LaTeX/PDF tables.
This fixes a bug wherein notes were numbered incorrectly
in tables.  Closes #827.

Now that we are using longtable, we can just use regular
`\footnote` commands for notes, which simplifies the code
considerably.
2013-04-15 09:10:29 -07:00
John MacFarlane
6217623d0a Added syntax for "pauses" in beamer or reaveljs slide shows.
This gives

    . . .

    a pause.
2013-03-24 21:03:04 -07:00
John MacFarlane
3b63cb0903 Hide Text.Pandoc.Highlighting.
* Moved code for translating listings language names to
  highlighting-kate names and back from LaTeX reader to Highlighting.
* Text.Pandoc.Highlighting no longer exposed (API change)
* Text.Pandoc.Highlighting exports toListingsLang, fromListingsLang
2013-03-05 22:09:42 -08:00
John MacFarlane
0bbee1bcf6 LaTeX writer: Support line numbering with --listings.
If "numberLines" class is present, we add "numbers=left";
if "startFrom" is present, we add "firstnumber=".

Partially addresses #763.
2013-03-04 09:31:31 -08:00
John MacFarlane
8dd00b93e2 LaTeX writer: Omit lists with no items.
Otherwise we get LaTeX errors.
2013-02-16 17:47:45 -08:00
John MacFarlane
11f7407445 LaTeX writer: Include unnumbered sections in TOC. 2013-02-15 19:23:51 -08:00
John MacFarlane
0d1fa0a763 Implemented "unnumbered" headers in LaTeX writer.
Starred variants of section commands used when header
has "unnumbered" class.
2013-02-14 19:50:11 -08:00
John MacFarlane
5330e63421 Shared: Changed type of Element.
Sec now includes a field for Attr rather than just String
(the identifier).

Note, this is an API change.
2013-02-12 20:13:23 -08:00
John MacFarlane
229c22582f LaTeX writer: Avoid extra space at start/end of table cell.
Thanks to Nick Bart for the suggestion of using @{}.
2013-01-28 10:21:18 -08:00
John MacFarlane
4aea26e8e1 Convert highlighting-kate language to listings language
if --listings is used.

Closes #704.
2013-01-17 19:47:03 -08:00
John MacFarlane
fa71969e81 LaTeX writer: Prevent paragraphs containing only linebreaks or spaces. 2013-01-15 23:02:08 -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
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
f07ce6fead Changed hspace in last commit to 0.333em.
This seems to match the spacing of ~ exactly.
2013-01-11 20:44:39 -08:00
John MacFarlane
c29a1942d0 LaTeX writer: Use \hspace* for nonbreaking space after line break.
Since `~` spaces after a line break are just ignored.
Closes #687.
2013-01-11 20:40:00 -08:00
John MacFarlane
0998f774ce Fixed regression in example lists.
This was associated with e1be934dc2.
2013-01-09 15:54:39 -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
1a9193c30d Implemented tight lists in context, latex writers. 2013-01-07 20:12:13 -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
dd6dab45fb LaTeX tables: Use minipage rather than parbox for block containers.
This allows verbatim code to be included in grid tables.
Closes #663.
2013-01-05 19:12:41 -08:00