aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc
AgeCommit message (Collapse)AuthorFilesLines
2020-04-18Fix round-trip bug with HTML tables....John MacFarlane1-9/+13
introduced by parsing of table attributes. (The writer always added a style with width, and we would get multiple such styles through successive round trips.)
2020-04-18HTML reader: parse attributes into table attributes.John MacFarlane1-14/+18
2020-04-17Markdown writer: avoid unnecessary escapes before intraword `_`John MacFarlane1-1/+6
when `intraword_underscores` extension is enabled. Closes #6296.
2020-04-17Merge pull request #6211 from tarleb/lua-pandocerrorJohn MacFarlane20-430/+683
API change: create PandocLua type, use PandocError for exceptions
2020-04-17API change: use new type PandocLua for all pandoc Lua operationsAlbert Krewinkel8-207/+244
The new type `PandocLua` is an instance of the `PandocMonad` typeclass and can thus be used in a way similar to `PandocIO`.
2020-04-17Class: generalize PandocIO functions to MonadIOAlbert Krewinkel2-167/+252
2020-04-17LaTeX reader: don't put surrounding Div around Table.John MacFarlane1-2/+5
This reverts a change in the last release; the Div is no longer needed, because we can now put the id right in the Table's attributes. However, writers may still need to be modified to do something with the id in a Table (e.g. create an anchor), so in the short term we may lose the ability to link to tables in some writers.
2020-04-17API change: use PandocError for exceptions in Lua subsystemAlbert Krewinkel13-60/+191
The PandocError type is used throughout the Lua subsystem, all Lua functions throw an exception of this type if an error occurs. The `LuaException` type is removed and no longer exported from `Text.Pandoc.Lua`. In its place, a new constructor `PandocLuaError` is added to PandocError.
2020-04-17Merge pull request #6224 from despresc/better-tablesJohn MacFarlane58-380/+789
2020-04-17Revert 0e48a02 and dependency on base-noprelude...John MacFarlane1-2/+2
which hasn't been updated for ghc 8.10. See discussion at #6187.
2020-04-16Shared: renderTags': use self-closing tag for col element.John MacFarlane1-1/+1
Closes #6295.
2020-04-15Markdown reader: Remove unnecessary qualificationdespresc1-8/+8
2020-04-15Lua: support new tablesAlbert Krewinkel1-17/+99
2020-04-15Modify toLegacyTable to cut up cells, add testsdespresc1-8/+43
Now a cell with dimension (h, w) will be cut up into h*w cells of dimension (1,1), all in the same grid position, with the upper-left holding the original cell contents and the rest being empty.
2020-04-15Use the new builders, modify readers to preserve empty headersdespresc24-69/+169
The Builder.simpleTable now only adds a row to the TableHead when the given header row is not null. This uncovered an inconsistency in the readers: some would unconditionally emit a header filled with empty cells, even if the header was not present. Now every reader has the conditional behaviour. Only the XWiki writer depended on the header row being always present; it now pads its head as necessary.
2020-04-15Adapt to the removal of the RowSpan, ColSpan, RowHeadColumns accessorsdespresc1-1/+1
2020-04-15Adapt to the newest Table type, fix some previous adaptation issuesdespresc54-168/+210
- Writers.Native is now adapted to the new Table type. - Inline captions should now be conditionally wrapped in a Plain, not a Para block. - The toLegacyTable function now lives in Writers.Shared.
2020-04-15Remove the onlySimpleCellBodies function from Shareddespresc5-18/+7
2020-04-15Implement the new Table typedespresc56-316/+477
2020-04-15Markdown Reader: Fix inline code in lists (#6284)Nikolay Yakimov1-6/+11
Closes #6284. Previously inline code containing list markers was sometimes parsed incorrectly.
2020-04-15JATS reader: handle "label" element in section title.John MacFarlane1-1/+7
Closes #6288.
2020-04-13Add an option to disable certificate validation (#6156)Cédric Couralet6-2/+24
This commit adds the option `--no-check-certificate`, which disables certificate checking when resources are fetched by HTTP. Co-authored-by: Cécile Chemin <cecile.chemin@insee.fr> Co-authored-by: Juliette Fourcot <juliette.fourcot@insee.fr>
2020-04-12RST reader: handle "date::" directive.John MacFarlane1-1/+10
Closes #6276.
2020-04-11LaTeX writer: ensure that `-M csquotes` works even in fragment mode.John MacFarlane1-10/+11
Closes #6265.
2020-04-11HTML reader: support <bdo> (#6271)Tristan de Cacqueray1-0/+13
See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/bdo Closes #5794
2020-04-09Jira reader: improve icon conversionAlbert Krewinkel1-12/+12
Icons are now converted as follows: `(/)` to ✔, `(x)` to ❌, `(!)` to ❗, `(+)` to ➕, `(-)` to ➖, `(off)` to 🌙, and `(*)` to ☆. The new icons render well in most fonts. Furthermore, the UTF-8 characters all fit into 4-bytes. Closes: #6264
2020-04-07LaTeX reader: better handling of `\lettrine`.John MacFarlane1-1/+8
- SmallCaps instead of Span for the part after the initial capital. - Ensure that both arguments are parsed, so that in Markdown both are treated as raw LateX. (Closes #6258.)
2020-04-06Vimwiki reader: Add nested syntax highlighting (#6257)Vlad Hanciuta1-1/+5
Nested syntaxes are specified like this: {{{sql SELECT * FROM table }}} The preformatted code block parser has been extended to check if the first attribute of the block is not a `key=value` pair, and in that case it will be considered as a class. Closes #6256.
2020-04-04Jira: support citations, attachment links, and user linksAlbert Krewinkel2-4/+40
Closes: #6231 Closes: #6238 Closes: #6239
2020-04-02HTML reader: fix parsing unclosed th elements in a table.John MacFarlane1-0/+1
Closes #6247.
2020-04-01Docbook writer: Add personname element to docbook author.John MacFarlane1-1/+2
Closes #6244.
2020-03-31Markdown writer: ensure consistent padding for pipe tables.John MacFarlane1-2/+2
Previously there was no space between text and bar in right-aligned table cells. This commit also ensures space on both sides for centered cells. Closes #6240.
2020-03-31Jira reader: use span with class `underline` for inserted textAlbert Krewinkel1-1/+1
Jira text which is marked as `+inserted+` is converted into pandoc's default representation for underlined text: a span with class `underline`. Previously, the span was marked with the non-standard class `inserted`. Closes: #6237
2020-03-31Jira writer: convert spans with class `underline` to inserted textAlbert Krewinkel1-1/+9
Spans with class `underline` as converted into Jira text marked as `+inserted+`, i.e. surrounded by plus-signs.
2020-03-30Jira writer: add image attributesAlbert Krewinkel1-1/+13
Image attributes are added to the output as image parameters. If the image has a class "thumbnail", then a thumbnail image is generated; all other attributes are discarded in this case. Closes: #6234
2020-03-30Jira reader: retain image attributesAlbert Krewinkel1-1/+13
Jira images attributes as in `!image.jpg|align=right!` are retained as key-value pairs. Thumbnail images, such as `!example.gif|thumbnail!`, are marked by a `thumbnail` class in their attributes. Related to #6234.
2020-03-30Jira reader: read `(?)` icon as "small questionmark" characterAlbert Krewinkel1-1/+1
Closes: #6236
2020-03-30Fix #6228 (#6230)Joseph C. Sible2-7/+8
UUID: Remove `getUUID`, fix `getRandomUUID` and make it polymorphic in PandocMonad.
2020-03-29Clean up and simplify Text.Pandoc.Readers.Docx (#6225)Joseph C. Sible1-61/+43
* Simplify resolveDependentRunStyle * Simplify runToInlines * Simplify isAnchorSpan * Simplify parStyleToTransform * Only call getStyleName once * Simplify ils'' * Use case matching to simplify bodyPartToBlocks * Simplify key expiration
2020-03-29Clean up and simplify Text.Pandoc.Writers.Docx (#6229)Joseph C. Sible1-56/+48
* Use <|> to simplify the Semigroup instance * Use map instead of reimplementing it * Simplify isValidChar * Remove an unnecessary nested do block * Simplify pgContentWidth * Simplify addLang * Simplify newStyles * Avoid an unnecessary fmap in headerFooterEntries * Remove unnecessary monadicity from mkNumbering and mkAbstractNum * Use randomRs instead of constantly messing with the RNG state * Lift common functions out of ifs * Hoist not * Clarify withTextPropM and withParaPropM
2020-03-29Clean up some fmaps (#6226)Joseph C. Sible7-22/+22
* Avoid fmapping when we're just binding right after anyway * Clean up unnecessary fmaps in the LaTeX reader
2020-03-29Split the RNG so they don't end up equal again after 1 call to next (#6227)Joseph C. Sible1-5/+5
2020-03-29Docx reader: better error messages.John MacFarlane1-8/+12
Distinguish between docx parsing and docx container unpacking errors.
2020-03-28More cleanup (#6209)Joseph C. Sible1-4/+3
* Simplify by collapsing a do block into a single <$> * Remove an unnecessary variable: `all` takes any Foldable, so only blocksToInlines needs toList.
2020-03-28Simplify fixAuthors (#6223)Joseph C. Sible1-6/+1
2020-03-22Finer grained imports of Text.Pandoc.Class submodules (#6203)Albert Krewinkel89-111/+120
This should speed-up recompilation after changes in `Text.Pandoc.Class`, as the number of modules affected by a change will be smaller in general. It also offers faster insights into the parts of `T.P.Class` used within a module.
2020-03-22Text.Pandoc.Class: extract submodules PandocIO, PandocPureAlbert Krewinkel3-393/+446
2020-03-21Class: fix missing import when data files are not embeddedAlbert Krewinkel1-0/+3
2020-03-19Add to html5 attributes.John MacFarlane1-0/+7
Add: allow, autocapitalize, decoding, enterkeyhint, imagesizes, imagesrcset, loading.
2020-03-15Use implicit Prelude (#6187)Albert Krewinkel158-310/+2
* Use implicit Prelude The previous behavior was introduced as a fix for #4464. It seems that this change alone did not fix the issue, and `stack ghci` and `cabal repl` only work with GHC 8.4.1 or newer, as no custom Prelude is loaded for these versions. Given this, it seems cleaner to revert to the implicit Prelude. * PandocMonad: remove outdated check for base version Only base versions 4.9 and later are supported, the check for `MIN_VERSION_base(4,8,0)` is therefore unnecessary. * Always use custom prelude Previously, the custom prelude was used only with older GHC versions, as a workaround for problems with ghci. The ghci problems are resolved by replacing package `base` with `base-noprelude`, allowing for consistent use of the custom prelude across all GHC versions.