aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Shared.hs
AgeCommit message (Collapse)AuthorFilesLines
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
2014-04-19Merge pull request #1256 from tarleb/org-reader-improvementsJohn MacFarlane1-3/+17
Org reader improvements
2014-04-19Move `compactify'DL` from Markdown reader into SharedAlbert Krewinkel1-3/+17
The function `compactify'DL`, used to change the final definition item of a definition list into a `Plain` iff all other items are `Plain`s as well, is useful in many parsers and hence moved into Text.Pandoc.Shared.
2014-04-15Shared: Fixed bug in toRomanNumeral.John MacFarlane1-2/+2
9 and numbers ending in 9 would end with "IXIV." Thanks to Jesse Rosenthal. Closes #1249.
2014-04-05Shared.openURL: Set proxy with value of http_proxy env variable.John MacFarlane1-3/+11
Note: proxies with non-root paths are not supported, because of limitations in http-conduit. Closes #1211.
2014-01-08fetchItem: Handle image URLs beginning with '//'.John MacFarlane1-4/+9
2013-12-19HLint: use `elem` and `notElem`Henry de Valence1-8/+4
Replaces long conditional chains with calls to `elem` and `notElem`.
2013-12-19HLint: Use allHenry de Valence1-1/+1
Replace `and . map` with `all`.
2013-12-09Added `withSocketsDo` around http conduit code in `openURL`.John MacFarlane1-1/+2
This should address #1080, but further testing on Windows is needed before we can close the bug.
2013-12-01normalizeDate: Allow dates with year only (%Y)Shaun Attfield1-1/+1
2013-11-19Shared: Fixed bug in openURL with data: URIs.John MacFarlane1-1/+2
Previously the base-64 encoded bytestring was returned. We now decode it so it's a proper image! This should fix parsing of data: URLs.
2013-10-16Use isURI instead of isAbsoluteURI.John MacFarlane1-2/+2
It allows fragments identifiers.
2013-08-28Generalized type of stringify.John MacFarlane1-3/+4
2013-08-16Shared: Changed stringify so it ignores notes.John MacFarlane1-1/+5
Also documented this in README.
2013-08-16Revert "Shared: stringify now skips over footnotes."John MacFarlane1-1/+0
This reverts commit 19591df739a6c50a3d0a9af55ba90b883264b21d. This change didn't work; query has already written the contents of the note by the time it gets to Note.
2013-08-16Shared: stringify now skips over footnotes.John MacFarlane1-0/+1
That is usually the right thing to do for section labels, etc.
2013-08-15Shared: Better error message when default data file not found.John MacFarlane1-3/+7
Listing the full path can confuse people who are using `--self-contained`: they might have intended the file to be found locally. So now we just list the data file name.