aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Writers/Markdown.hs
AgeCommit message (Collapse)AuthorFilesLines
2014-04-24Markdown writer: Use proper escapes to avoid unwanted lists.John MacFarlane1-11/+16
Previously we used 0-width spaces, an ugly hack. Closes #980.
2014-03-30Markdown writer: Use longer backtick fences if needed.John MacFarlane1-1/+5
If the content contains a backtick fence and there are attributes, make sure longer fences are used to delimit the code. Note: This works well in pandoc, but github markdown is more limited, and will interpret the first string of three or more backticks as ending the code block. Closes #1206.
2013-12-19HLint: use `elem` and `notElem`Henry de Valence1-5/+6
Replaces long conditional chains with calls to `elem` and `notElem`.
2013-12-09Don't use tilde code blocks with braced attributes in gfm output.John MacFarlane1-9/+9
A consequence of this change is that the backtick form will be preferred in general if both are enabled. I think that is good, as it is much more widespread than the tilde form. Closes #1084.
2013-11-30Markdown writer: Fix rendering of tight sublists.John MacFarlane1-1/+8
E.g. - foo - bar - baz Previously a spurious blank line was included before the last item. Closes #1050.
2013-11-06Don't print `<span>` tags in 'plain' output.John MacFarlane1-1/+4
2013-11-01TexMath: Export readTeXMath', which attends to display/inline.John MacFarlane1-3/+3
Deprecate readTeXMath, and use readTeXMath' in all the writers. Require texmath >= 0.6.5.
2013-10-16Use isURI instead of isAbsoluteURI.John MacFarlane1-2/+2
It allows fragments identifiers.
2013-09-19Markdown reader: small code improvement.John MacFarlane1-5/+5
2013-09-12Markdown writer: Print references if output is 'plain'.John MacFarlane1-1/+2
2013-09-06Markdown writer: Fixed bugs in YAML header output.John MacFarlane1-3/+3
2013-08-20Create Cite element even if no matching reference in the biblio.John MacFarlane1-14/+21
* 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-18Adjusted writers and tests for change in parsing of div/span.John MacFarlane1-5/+12
Textile, MediaWiki, Markdown, Org, RST will emit raw HTML div tags for divs. Otherwise Div and Span are "transparent" block containers.
2013-08-10Use walk, walkM in place of bottomUp, bottomUpM when possible.John MacFarlane1-4/+4
They are significantly faster.
2013-08-08Preliminary support for new Div and Span elements in writers.John MacFarlane1-0/+3
Currently these are "transparent" containers, except in HTML, where they produce div and span elements with attributes.
2013-07-02Rename `Ext_yaml_title_block` -> `Ext_yaml_metadata_block`.John MacFarlane1-4/+4
2013-07-02Markdown writer: Changed condition for rendering title block.John MacFarlane1-4/+3
Previously it was only rendered if title, author, or date set. Now any metadata field can be set.
2013-07-02Write full metadata in MMD style title blocks.John MacFarlane1-7/+23
2013-07-01Markdown writer: Commas are okay in plain yaml scalars.John MacFarlane1-1/+1
It's just commas with brackets that can cause problems.
2013-07-01Markdown writer: Render yaml title block fields in alpha order.John MacFarlane1-2/+3
This makes the output predictable; previously it varied across implementations.
2013-07-01Created Text.Pandoc.Writers.Shared, improved metaToJSON.John MacFarlane1-7/+5
* 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-01Improvements to yaml title block writer.John MacFarlane1-24/+37
2013-07-01Revert "Markdown writer: Don't include variables in metadata."John MacFarlane1-41/+35
This reverts commit 0ec8573347d53e0cba70552a50dba697f39216b6.
2013-07-01Markdown writer: Don't include variables in metadata.John MacFarlane1-35/+41
2013-06-30Markdown writer: Support yaml title block.John MacFarlane1-8/+30
2013-06-29Metadata changes: Variables now completely shadow metadata.John MacFarlane1-2/+2
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-27Writers: Use defField for defaults.John MacFarlane1-3/+3
This way explicitly specified fields not overridden. Fixes a problem e.g. with specifying a documentclass via the command line using -V.
2013-06-24Use new flexible metadata type.John MacFarlane1-21/+26
* 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-11Markdown writer: Don't wrap attributes in fenced code blocks.John MacFarlane1-2/+2
2013-04-14Markdown/RST writers: Only autolink absolute URIs.John MacFarlane1-1/+3
This fixes a regression and closes #830. $ echo '<a href="x">x</a>' | pandoc -f html -t markdown <x>
2013-04-08Markdown writer: Put multiple authors on separate lines in titleblock.John MacFarlane1-1/+1
Also, don't wrap long author entries, as new lines get treated as new authors.
2013-03-28Allow simple tables to be printed as grid tables.John MacFarlane1-11/+14
if other table options are disabled. This means you can do pandoc -t markdown-pipe_tables-simple_tables-multiline_tables and all tables will render as grid tables.
2013-03-17Markdown writer: New approach for citations.John MacFarlane1-14/+4
* Reverts 1.11 change that caused citations to be rendered as markdown citations, even if `--biblio` was specified, unless `citation` extension is disabled. Now, formatted citations are always printed if `--biblio` was specified. If you want to reformat markdown keeping pandoc markdown citations intact, just don't specify `--biblio`. * Reverted now unnecessary changes to Text.Pandoc.Biblio adding the raw block to mark the bibliography, and to Text.Pandoc.Writers.Markdown to remove the bibliography if `citations` not specified. * If the content of a `Cite` inline is a `RawInline "latex"`, which means that a LaTeX citation command was parsed and `--biblio` wasn't specified, then render it as a pandoc markdown citation. This means that `pandoc -f latex -t markdown`, without `--biblio`, will convert LaTeX citation commands to pandoc markdown citations.
2013-03-17Markdown writer: Omit bibliography when `citations` enabled.John MacFarlane1-2/+12
In 1.11, citations would be rendered as pandoc markdown citations, but the bibliography would still be printed. We avoid that by adding a `RawBlock "pandoc" "references"` before the references. This allows the markdown writer to find the references and strip them off when `citations` is enabled.
2013-03-17Revert "LaTeX reader: citation handling changes."John MacFarlane1-2/+1
This reverts commit f7229b147314042f946dfded3b441ab0fae260a0.
2013-03-11Fixed spacing bugs involving code block attributes.John MacFarlane1-1/+1
Closes #763.
2013-03-09LaTeX reader: citation handling changes.John MacFarlane1-1/+2
Previously, a LaTeX citation would always be parsed as a Citation element, with the raw LaTeX in the [Inline] part. Now, the LaTeX citation is parsed as a Citation element only if `--biblio` was specified (i.e. only if there is a nonempty set of references in readerReferences). Otherwise it is parsed as raw LaTeX. This will make it possible to simplify some things in the markdown writer. It also makes the LaTeX reader behave more like the Markdown reader.
2013-03-07Markdown writer: Render citations as pandoc-markdown citations.John MacFarlane1-1/+1
Previously citations were rendered as citeproc-formatted citations by default. Now we render them as pandoc citations, e.g. `[@item1]`, unless the `citations` extension is disabled. If you still want formatted citations in your markdown output, use `pandoc -t markdown-citations`.
2013-02-28Markdown writer: Use grid tables when needed, and if enabled.John MacFarlane1-1/+31
Closes #740.
2013-02-06Revert "Citation changes."John MacFarlane1-3/+1
This reverts commit d46f434d4b8906ae3b983e568549213de94fd1a2.
2013-02-03Citation changes.John MacFarlane1-1/+3
* Citations will work in markdown even if `--biblio` isn't specified. Note: this may cause unexpected behavior for people who use strings of the form `@foo` that are not citations! * If `--biblio` isn't used, the markdown writer will write markdown citations rather than CSL-rendered citations. * This means, for example, that you can do `pandoc -f latex -t markdown` and convert biblatex or natbib citations into pandoc citations.
2013-01-28Markdown writer: Set title, author, date variables as before.John MacFarlane1-0/+3
These are no longer used in the default template, since we use titleblock, but we set them anyway for nondefault template users.
2013-01-26Markdown writer: Use autolink when link text matches url.John MacFarlane1-3/+3
Previously we also checked for a null title, but this test fails for links produced by citeproc-hs in bibliographies. So, if the link has a title, it will be lost on conversion to an autolink, but that seems okay.
2013-01-16Implemented Ext_mmd_header_identifiers in markdown writer.John MacFarlane1-0/+2
2013-01-15Use 'fig:' instead of '\SOH' in title to indicate figure.John MacFarlane1-2/+2
Revises 1a4b47e93368bfbd31daccdfedbd9527ee740201
2013-01-14Implemented Ext_implicit_figures.John MacFarlane1-0/+3
* 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-12Markdown writer: Support Ext_auto_identifiers and Ext_header_attributes.John MacFarlane1-13/+23
2013-01-09Added Attr field to Header.John MacFarlane1-1/+1
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-06Don't put the text of an autolink in Code font.John MacFarlane1-2/+2
2013-01-05Implemented --toc-depth for markdown writer.John MacFarlane1-7/+7