Commit graph

879 commits

Author SHA1 Message Date
John MacFarlane
8d43e08ce7 Markdown writer: Fixed bugs in YAML header output. 2013-09-06 22:26:38 -07:00
John MacFarlane
8b0052ba5b Mathjax in HTML slide shows: include explicit "Typeset" instruction.
This seems to be needed for some formats (e.g. slideous) and won't
hurt in others.

Closes #966.
2013-09-01 15:05:51 -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
b1d08a8aa8 Merge branch 'altcite' 2013-08-20 22:00:39 -07:00
John MacFarlane
7048c130ec Create Cite element even if no matching reference in the biblio.
* Add ??? as fallback text for non-resolved citations.
* Biblio:  Put references (including a header at the end of
  the document, if one exists) inside a Div with class "references".
  This gives some control over styling of references, and allows
  scripts to manipulate them.
* Markdown writer:  Print markdown citation codes, and disable
  printing of references, if `citations` extension is enabled.

NOTE:  It would be good to improve what citeproc-hs does for
a nonexistent key.
2013-08-20 20:47:06 -07:00
John MacFarlane
e8ddcfd997 Scale LaTeX tables so they don't exceed columnwidth. 2013-08-19 16:03:22 -07:00
John MacFarlane
8d441af3da Adjusted writers and tests for change in parsing of div/span.
Textile, MediaWiki, Markdown, Org, RST will emit raw HTML div tags for divs.
Otherwise Div and Span are "transparent" block containers.
2013-08-18 14:36:40 -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
3e8bd8aa15 Updated for removed unMeta, unFormat in pandoc-types. 2013-08-14 23:24:45 -07:00
John MacFarlane
eb0c0b86ed ODT/OpenDocument writer: Minor changes for ODF 1.2 conformance.
See #939.  We leave the nonconforming contextual-spacing attribute,
which is provided by LibreOffice itself and seems to be supported.
2013-08-11 17:13:46 -07:00
John MacFarlane
e279175ea5 Options: Changed writerSourceDir to writerSourceURL (now a Maybe).
Previously we used to store the directory of the first input file,
even if it was local, and used this as a base directory for
finding images in ODT, EPUB, Docx, and PDF.

This has been confusing to many users.  It seems better to look for
images relative to the current working directory, even if the first
file argument is in another directory.

writerSourceURL is set to 'Just url' when the first command-line
argument is an absolute URL.  (So, relative links will be resolved
in relation to the first page.)  Otherwise, 'Nothing'.

The ODT, EPUB, Docx, and PDF writers have been modified accordingly.

Note that this change may break some existing workflows.  If you
have been assuming that relative links will be interpreted relative
to the directory of the first file argument, you'll need to
make that the current directory before running pandoc.

Closes #942.
2013-08-11 15:58:09 -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
802dc9a8b9 Added Text.Pandoc.Compat.Monoid.
This allows pandoc to compile with base < 4.5, where Data.Monoid
doesn't export `<>`.  Thanks to Dirk Ullirch for the patch.
2013-08-08 10:41:39 -07:00
John MacFarlane
7d18770b00 Added support for MetaBool. 2013-08-06 23:31:16 -07:00
John MacFarlane
2d6e0b1530 Remove CPP from default-extensions; add pragmas to modules as needed. 2013-08-04 14:12:13 -07:00
John MacFarlane
4a84b78100 MediaWiki writer: Use native mediawiki tables instead of HTML.
Closes #720.
2013-08-03 23:05:14 -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
93e096fe1d Fixed warning. 2013-07-18 21:51:11 -07:00
John MacFarlane
7c980f39bf Improved fetching of external resources.
* In Shared, openURL and fetchItem now return an Either, for
  better error handling. (API change.)
* Better error message when fetching a URL fails with
  `--self-contained`.
* EPUB writer: If resource not found, skip it, as in Docx writer.
* Closes #916.
2013-07-18 20:58:14 -07:00
John MacFarlane
b2385d0e9b Text.Pandoc.ImageSize: Handle EPS.
Closes #903.  This change will make EPS images properly sized
on conversion to Word.
2013-07-16 22:04:59 -07:00
Alexander Kondratskiy
0b49f810f4 Fixing wrong numbered-list indentation in open document format 2013-07-14 14:33:58 -04:00
John MacFarlane
f42095b7b7 Docx writer: Make --no-highlight work properly. 2013-07-13 13:48:50 -07:00
Alexander Kondratskiy
6a235ba606 Checking options before applying syntax highlighting for HTML output 2013-07-13 02:23:27 -04:00
John MacFarlane
bd1079e48e Docx writer: Ignore most components of reference.docx.
We take the word/styles.xml, docProps/app.xml, word/theme/theme1.xml,
and word/fontTable.xml from reference.docx, ignoring everything else.

Perhaps this will help with the corruption problems caused when
different versions of Word resave the reference.docx and
reorganize things.
2013-07-12 20:58:15 +01:00
John MacFarlane
e7b5f2deb5 Docx writer: Use w:br with w:type 'textWrapping' for linebreaks.
Previously we used w:cr.

I don't see a difference between these in my version of Word,
but apparently some do.  Closes #873.
2013-07-04 16:37:44 -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
3cd62d7c35 Rename Ext_yaml_title_block -> Ext_yaml_metadata_block. 2013-07-02 20:54:30 -07:00
John MacFarlane
0da863f951 Markdown writer: Changed condition for rendering title block.
Previously it was only rendered if title, author, or date set.
Now any metadata field can be set.
2013-07-02 20:44:19 -07:00
John MacFarlane
1f7ce4a2cd Write full metadata in MMD style title blocks. 2013-07-02 09:03:54 -07:00
John MacFarlane
9009a7e4a8 Markdown writer: Commas are okay in plain yaml scalars.
It's just commas with brackets that can cause problems.
2013-07-01 21:00:46 -07:00
John MacFarlane
e7a68fc7e8 Markdown writer: Render yaml title block fields in alpha order.
This makes the output predictable; previously it varied across
implementations.
2013-07-01 20:56:27 -07:00
John MacFarlane
7f83d88a65 Added Text.Pandoc.Writers.Shared to repository.
This should have been in last commit.
2013-07-01 20:49:22 -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
19ad69b1c6 Improvements to yaml title block writer. 2013-07-01 16:28:34 -07:00
John MacFarlane
2d46828b1c Revert "Markdown writer: Don't include variables in metadata."
This reverts commit 0ec8573347.
2013-07-01 14:17:04 -07:00
John MacFarlane
0ec8573347 Markdown writer: Don't include variables in metadata. 2013-07-01 12:48:13 -07:00
John MacFarlane
5d01e9a117 Markdown writer: Support yaml title block. 2013-06-30 23:37:27 -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
5cb0f0bbf1 ConTeXt writer: Properly handle tables without captions.
The old output only worked in MkII. This should work in MkIV
as well.

Closes #837.
2013-06-28 21:30:27 -07:00
John MacFarlane
644e3239a9 Custom writer: Pass full metadata, not just tit/auth/date. 2013-06-27 22:55:10 -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
dd96213c05 Man writer: give more fine-grained control in template.
Now the `title`, `section`, `header`, and `footer` can all be set
individually in metadata.  The `description` variable has been
removed.

Quotes have been added so that spaces are allowed in the title.

If you have a title that begins

    COMMAND(1) footer here | header here

pandoc will parse it as before into a title, section, header, and
footer.  But you can also specify these elements explicitly.

Closes #885.
2013-06-27 19:32:28 -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
70eeeb82b5 Fixed regression with RTF table of contents. 2013-06-25 22:32:50 -07:00