Age | Commit message (Collapse) | Author | Files | Lines |
|
This gives 20-30% speedup and reduction of memory
usage in most of the writers.
|
|
Note that as a result of this change, the following,
which formerly produced a header with two lines separated
by a line break, will now produce a header followed by a
paragraph:
# Hi\
there
This may affect some existing documents that relied on
this undocumented and unintended behavior.
This change makes pandoc more consistent with other
Markdown implementations, and with itself (since the two-space
version of a line break doesn't work inside ATX headers, and
neither version works inside Setext headers).
Closes #3730.
|
|
- Export new NamedTag class from HTML reader.
- Effect on memory usage is modest (< 10%).
|
|
|
|
Readers: Renamed StringReader -> TextReader.
Updated tests.
API change.
|
|
|
|
|
|
|
|
|
|
It is already in the eitherBlockOrInlineTag list, and
should be both places.
Closes #3717.
Note: the result of this change is that there will be
p tags around the whole paragraph. That is the right
result, because the `button` tags are treated as inline
HTML here, and the whole chunk of text is a Markdown
paragraph.
|
|
Currently we only handle the form `0.9\linewidth`.
Anything else would have to be converted to a percentage,
using some kind arbitrary assumptions about line widths.
See #3709.
|
|
|
|
This makes room for doing something with widths.
|
|
minipage is no longer required.
Closes #3709.
|
|
Odt reader: remove dead code
|
|
Tags are appended to headlines by default, but will be omitted when the
`tags` export option is set to nil.
Closes: #3713
|
|
The Emacs default is to include tags in the headline when exporting.
Instead of just empty spans, which contain the tag name as attribute,
tags are rendered as small caps and wrapped in those spans.
Non-breaking spaces serve as separators for multiple tags.
|
|
Babel result blocks can have block attributes like captions and names.
Result blocks with attributes were not recognized and were parsed as
normal blocks without attributes.
Fixes: #3706
|
|
Copy-pasting had lead to haddock module descriptions containing the
wrong module names.
|
|
The ODT reader contained a lot of general code useful for working with
arrows. However, many of these utils weren't used and are hence removed.
|
|
This used to live in the Markdown reader.
|
|
Closes #3708.
|
|
Closes #3707.
|
|
Markdown reader: use anyLineNewline
|
|
|
|
Until now, org-ref cite keys included special characters also at the
end. This caused problems when citations occur right before colons or
at the end of a sentence.
With this change, all non alphanumeric characters at the end of a cite
key are ignored.
This also adds `,` to the list of special characters that are legal
in cite keys to better mirror the behaviour of org-export.
|
|
By not checking for the end condition before the first parse, the
parser was applied too often, consuming too much of the input.
This fixes the behaviour of
`testStringWith (many1Till (oneOf "ab") (string "aa")) "aaa"`
which before incorrectly returned `Right "a"`. With this change, it
instead correctly fails with `Left (PandocParsecError ...)` because it
is not able to parse at least one occurence of `oneOf "ab"` that is
not `"aa"`.
Note that this only affects `many1Till p end` where `p` matches on a
prefix of `end`.
|
|
|
|
With `--reference-location` of `section` or `block`, pandoc
will now repeat references that have been used in earlier
sections.
The Markdown reader has also been modified, so that *exactly*
repeated references do not generate a warning, only
references with the same label but different targets.
The idea is that, with references after every block,
one might want to repeat references sometimes.
Closes #3701.
|
|
Emacs parses org documents into a tree structure, which is then
post-processed during exporting. The reader is changed to do the same,
turning the document into a single tree of headlines starting at
levelĀ 0.
Fixes: #3695
|
|
This is now the default for pandoc's Markdown.
It allows whitespace between the two parts of a
reference link: e.g.
[a] [b]
[b]: url
This is now forbidden by default.
Closes #2602.
|
|
Closes #1718.
Parsing.ParserState: Make stateNotes' a Map, add stateNoteRefs.
|
|
Even if `+smart`.
See #3585.
|
|
Closes #3585.
|
|
E.g. in
*foo*'s 'foo'
Closes #2228.
|
|
Now these commands are parsed as raw if `+raw_tex`;
otherwise, their argument is parsed as a bracketed string.
|
|
This is a verison of parseFromString specialied to
ParserState, which resets stateLastStrPos at the end.
This is almost always what we want.
This fixes a bug where `_hi_` wasn't treated as emphasis in
the following, because pandoc got confused about the
position of the last word:
- [o] _hi_
Closes #3690.
|
|
if `raw_tex` extension is selected.
Otherwise skip with a warning.
This is better than trying to parse it as text!
Closes #3692.
|
|
Closes #3694.
|
|
|
|
Closes #3432.
|
|
We also export the set of known `schemes`.
The new function replaces the function of the same name
from `Network.URI`, as the latter did not check whether a scheme is
well-known. E.g. MediaWiki wikis frequently feature pages with names
like `User:John`. These links were interpreted as URIs, thus turning
internal links into global links. This is prevented by also checking
whether the scheme of a URI is frequently used (i.e. is IANA registered
or an otherwise well-known scheme).
Fixes: #2713
Update set of well-known URIs from IANA list
All official IANA schemes (as of 2017-05-22) are included in the set of
known schemes. The four non-official schemes doi, isbn, javascript, and
pmid are kept.
|
|
|
|
* Default is just working directory.
* Working directory must be explicitly specifide if
`--resource-path` option is used.
|
|
|
|
Parsing of smart quotes and special characters can either be enabled via
the `smart` language extension or the `'` and `-` export options. Smart
parsing is active if either the extension or export option is enabled.
Only smart parsing of special characters (like ellipses and en and em
dashes) is enabled by default, while smart quotes are disabled.
This means that all smart parsing features will be enabled by adding the
`smart` language extension. Fine-grained control is possible by leaving
the language extension disabled. In that case, smart parsing is
controlled via the aforementioned export OPTIONS only.
Previously, all smart parsing was disabled unless the language extension
was enabled.
|
|
This addresses a subsidiary issue in #3674.
|
|
Txt2Tags parser: newline is not indentation
|
|
Move anyLineNewline to Parsing.hs
|
|
|