aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Shared.hs
AgeCommit message (Collapse)AuthorFilesLines
2015-07-23Added odt readerMarLinn1-6/+6
Fully implemented features: * Paragraphs * Headers * Basic styling * Unordered lists * Ordered lists * External Links * Internal Links * Footnotes, Endnotes * Blockquotes Partly implemented features: * Citations Very basic, but pandoc can't do much more * Tables No headers, no sizing, limited styling
2015-07-21Use newManager instead of withManager in recent http-client.John MacFarlane1-1/+10
This avoids a deprecation warning.
2015-07-12Changed hierarchicalize so it treats references div as top-level header.John MacFarlane1-0/+5
Fixes a bug with `--section-divs`, where the final references section added by pandoc-citeproc, enclosed in its own div, got put in the div for the section previous to it. This fixes #2294. Longer term, we might think about how hierarchicalize should interact with Div elements.
2015-06-28Added a needed import in Shared.John MacFarlane1-0/+1
2015-06-28Let reference.docx/odt behave as if they are virtual data files.John MacFarlane1-1/+72
Now they are constructed on the fly from their components, but we now allow them to be printed with `--print-default-data-file` and to override the defaults if placed in the user data directory. Shared now exports getDefaultReferenceDocx and getDefaultReferenceODT (API change). These functions have been removed from the Docx and ODT writers. Shared.readDataFile has been modified so that requests to read a reference.odt or reference.docx will use these functions to generate the files.
2015-06-28Minor fixes to previous commit.John MacFarlane1-8/+3
* Instead of defining readmeFile in Text.Pandoc.Data (which we forgot to export anyway), we simply add a record for "README" to the `dataFiles` lookup table. This allows simplifying some of the code for `readDefaultDataFile` in SHared. * As a bonus, `pandoc --print-default-data-file README` now works.
2015-06-28New method for producing man pages.John MacFarlane1-6/+14
This change adds `--man1` and `--man5` options to pandoc, so pandoc can generate its own man pages. It removes the old overly complex method of building a separate executable (but not installing it) just to create the man pages. The man pages are no longer automatically created in the build process. The man/ directory has been removed. The man page templates have been moved to data/. New unexported module: Text.Pandoc.ManPages. Text.Pandoc.Data now exports readmeFile, and `readDataFile` knows how to find README. Closes #2190.
2015-05-27Fixed svg handling in EPUB writer.John MacFarlane1-0/+1
This is a crude workaroud for #2183. A correct fix would require having openURL and fetchItem return a content encoding as well as a content type.
2015-04-26Updated copyright notices to -2015. Closes #2111.John MacFarlane1-2/+2
2015-02-18Move utility error functions to Text.Pandoc.SharedMatthew Pickering1-0/+10
2015-02-18Make safeRead safe.Matthew Pickering1-3/+3
Fixes #1801
2014-12-19Added Text.Pandoc.Compat.Locale to assist with transition to time 1.5.John MacFarlane1-1/+1
2014-10-08fix inDirectory to reset to the original directory in case an exception occursFreiric Barral1-6/+4
2014-09-25Shared: Make collapseFilePath OS-agnosticmpickering1-5/+9
2014-08-31Shared: Moved import of toChunks outside of conditional.John MacFarlane1-1/+1
Closes #1590.
2014-08-30Merge branch 'mime' of https://github.com/Aelve/John into Aelve-mimeJohn MacFarlane1-4/+4
Conflicts: src/Text/Pandoc/Writers/Docx.hs
2014-08-22Fixed --self-contained with Windows paths.John MacFarlane1-1/+2
Previously C:\foo.js was being wrongly interpreted as a URI. Closes #1558.
2014-08-17MIME cleanup.Artyom Kazak1-4/+4
* Create a type synonym for MIME type (instead of `String`). * Add `getMimeTypeDef` function. * Avoid recreating MIME type `Map`s every time. * Move “Formula-...” case handling into `getMimeType`.
2014-08-13Fixed haddock comment.John MacFarlane1-9/+7
2014-08-13Removed unneeded import.John MacFarlane1-1/+0
2014-08-08Shared: Added collapseFilePath functionMatthew Pickering1-1/+26
This function removes intermediate "." and ".." from a path.
2014-08-04Add PatternGuards pragmas.Artyom Kazak1-1/+1
2014-08-04Use `stripPrefix` where appropriate.Artyom Kazak1-7/+7
2014-08-03Correctly implement capitalisation.Artyom Kazak1-0/+13
Using `map toUpper` to capitalise text is wrong, as e.g. “Straße” should be converted to “STRASSE”, which is 1 character longer. This commit adds a `capitalize` function and replaces 2 identical implementations in different modules (`toCaps` and `capitalize`) with it.
2014-08-02fetchItem: improved mime type guessing.John MacFarlane1-4/+5
Strip a fragment like `?#iefix` from the extension before doing the mime lookup.
2014-08-02Shared: fetchItem improvements.John MacFarlane1-11/+12
* More consistent logic: absolute URIs are fetched from the net; other things are treated as relative URIs if sourceURL is a Just, otherwise as file paths. * We escape characters that are not allowed in URIs before trying to parse them (e.g. '|', which often occurs in the wild). * When treating relative paths as local file paths, we drop any fragment or query. This is useful e.g. when you've downloaded web fonts locally, but your source still contains the original relative URLs. Together with the previous commit, this should close #1477.
2014-07-31New module, Text.Pandoc.MediaBag.John MacFarlane1-75/+4
Moved `MediaBag` definition and functions from Shared: `lookupMedia`, `mediaDirectory`, `insertMedia`, `extractMediaBag`. Removed `emptyMediaBag`; use `mempty` instead, since `MediaBag` is a Monoid.
2014-07-31Made MediaBag a newtype, and added mime type information to media.John MacFarlane1-15/+65
Shared now exports functions for interacting with a MediaBag: - `emptyMediaBag` - `lookuMedia` - `insertMedia` - `mediaDirectory` - `extractMediaBag`
2014-07-31Shared: Added function insertMedia which is an alias for M.insertMatthew Pickering1-1/+8
2014-07-30PDF, Docx, EPUB, and ODT writers now automatically use MediaBag.John MacFarlane1-3/+2
The MediaBag is thread through from the reader, with no need to extract to files.
2014-07-30Shared: Added fetchItem', which searches a media bag too.John MacFarlane1-0/+14
2014-07-30Moved MediaBag back from Shared to Options, to avoid module cycle.John MacFarlane1-0/+11
2014-07-30Moved MediaBag from Shared to Options.John MacFarlane1-11/+0
This will allow us to put a MediaBag in WriterOptions.
2014-07-30Moved withTempDir from PDF to Shared, export from Shared.John MacFarlane1-1/+16
API change.
2014-07-30Shared: Make MediaBag available through Shared.Jesse Rosenthal1-0/+11
2014-07-25Fixed runtime error with compactify'DL on certain lists.John MacFarlane1-11/+13
Closes #1452. Added test.
2014-07-21Revert "Shared.hierarchicalize: Don't number subsections of unnumbered ↵John MacFarlane1-25/+18
sections." This reverts commit 2a46042661a088096ac54097db5cd3674438bb63.
2014-07-21Shared.hierarchicalize: Don't number subsections of unnumbered sections.John MacFarlane1-18/+25
They were previously numbered, starting from the previous numbered section, which was wrong.
2014-07-15Shared.fetchItem: unescape URI encoding before reading local file.John MacFarlane1-1/+1
Close #1427.
2014-07-13Better comment on removeFormatting.John MacFarlane1-1/+1
2014-07-13Shared: Generalized type of removeFormatting.John MacFarlane1-1/+1
2014-07-13Shared: Added removeFormatting.John MacFarlane1-0/+14
API change (addition of exported function).
2014-07-12Removed space at ends of lines in source.John MacFarlane1-2/+2
2014-07-07normalize: consolidate adjacent RawBlocks when possible.John MacFarlane1-0/+5
2014-06-29Rewrote normalize for efficiency. (Closes #1385.)John MacFarlane1-60/+131
* Added normalizeInlines, normalizeBlocks. * Type signature is now more narrow, `Pandoc -> Pandoc` instead of `Data a :: a -> a`. Some users may need to change their uses of `normalize` to the newly exported `normalizeInlines` or `normalizeBlocks`.
2014-06-16Moved extractSpaces to Shared.hsmpickering1-0/+16
Generalised and move the extractSpaces function from `HTML.hs` to `Shared.hs` so that the docx reader can also use it.
2014-06-03Shared: Added ordNub.John MacFarlane1-0/+9
API change (adds export).
2014-05-18Removed dependency on conduit.John MacFarlane1-6/+8
* http-conduit flag is now https. * Instead of http-conduit, we depend on http-client and http-client-tls.
2014-05-12Shared addMetaField: if old and new values both lists, concatenate.John MacFarlane1-1/+3
2014-05-09Update copyright notices for 2014, add missing noticesAlbert Krewinkel1-2/+2