Matthew Pickering
ad39bc7009
Move utility error functions to Text.Pandoc.Shared
2015-02-18 21:09:07 +00:00
Matthew Pickering
615aa94c3d
Make safeRead safe.
...
Fixes #1801
2015-02-18 21:09:07 +00:00
John MacFarlane
2c3310a592
Added Text.Pandoc.Compat.Locale to assist with transition to time 1.5.
2014-12-19 16:13:38 -08:00
Freiric Barral
24231623f3
fix inDirectory to reset to the original directory in case an exception occurs
2014-10-08 23:25:01 +02:00
mpickering
cc07d0c6bf
Shared: Make collapseFilePath OS-agnostic
2014-09-25 12:42:53 +01:00
John MacFarlane
611bc27862
Shared: Moved import of toChunks outside of conditional.
...
Closes #1590 .
2014-08-31 11:17:53 -07:00
John MacFarlane
f70e3c3297
Merge branch 'mime' of https://github.com/Aelve/John into Aelve-mime
...
Conflicts:
src/Text/Pandoc/Writers/Docx.hs
2014-08-30 11:49:50 -07:00
John MacFarlane
2956ef251c
Fixed --self-contained with Windows paths.
...
Previously C:\foo.js was being wrongly interpreted as a URI.
Closes #1558 .
2014-08-22 23:21:57 -07:00
Artyom Kazak
cca9e8feb4
MIME cleanup.
...
* 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-17 21:00:50 +04:00
John MacFarlane
17b2fd567b
Fixed haddock comment.
2014-08-13 13:59:50 -07:00
John MacFarlane
05b7fd8dee
Removed unneeded import.
2014-08-13 11:35:09 -07:00
Matthew Pickering
2d956677ef
Shared: Added collapseFilePath function
...
This function removes intermediate "." and ".." from a path.
2014-08-08 22:31:02 +01:00
Artyom Kazak
141fdf944a
Add PatternGuards pragmas.
2014-08-04 19:58:25 +04:00
Artyom Kazak
82118b3328
Use stripPrefix
where appropriate.
2014-08-04 19:57:42 +04:00
Artyom Kazak
ec88d47f23
Correctly implement capitalisation.
...
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-03 17:37:37 +04:00
John MacFarlane
85ff3c5771
fetchItem: improved mime type guessing.
...
Strip a fragment like `?#iefix` from the extension before doing
the mime lookup.
2014-08-02 16:32:11 -07:00
John MacFarlane
1d137fbed6
Shared: fetchItem improvements.
...
* 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-08-02 16:12:05 -07:00
John MacFarlane
6dd2418476
New module, Text.Pandoc.MediaBag.
...
Moved `MediaBag` definition and functions from Shared:
`lookupMedia`, `mediaDirectory`, `insertMedia`, `extractMediaBag`.
Removed `emptyMediaBag`; use `mempty` instead, since `MediaBag`
is a Monoid.
2014-07-31 12:00:21 -07:00
John MacFarlane
00662faefb
Made MediaBag a newtype, and added mime type information to media.
...
Shared now exports functions for interacting with a MediaBag:
- `emptyMediaBag`
- `lookuMedia`
- `insertMedia`
- `mediaDirectory`
- `extractMediaBag`
2014-07-31 11:05:35 -07:00
Matthew Pickering
31e7c1b67c
Shared: Added function insertMedia which is an alias for M.insert
2014-07-31 15:47:49 +01:00
John MacFarlane
234652a4b8
PDF, Docx, EPUB, and ODT writers now automatically use MediaBag.
...
The MediaBag is thread through from the reader, with no need
to extract to files.
2014-07-30 14:07:31 -07:00
John MacFarlane
28321a18bf
Shared: Added fetchItem', which searches a media bag too.
2014-07-30 13:47:07 -07:00
John MacFarlane
67c5c7a575
Moved MediaBag back from Shared to Options, to avoid module cycle.
2014-07-30 13:46:48 -07:00
John MacFarlane
555f9b746d
Moved MediaBag from Shared to Options.
...
This will allow us to put a MediaBag in WriterOptions.
2014-07-30 13:00:54 -07:00
John MacFarlane
d3cf53a956
Moved withTempDir from PDF to Shared, export from Shared.
...
API change.
2014-07-30 12:29:04 -07:00
Jesse Rosenthal
f78d2f6219
Shared: Make MediaBag available through Shared.
2014-07-30 12:47:26 -04:00
John MacFarlane
18f4490482
Fixed runtime error with compactify'DL on certain lists.
...
Closes #1452 . Added test.
2014-07-25 10:53:04 -07:00
John MacFarlane
5debb492ef
Revert "Shared.hierarchicalize: Don't number subsections of unnumbered sections."
...
This reverts commit 2a46042661
.
2014-07-21 20:47:18 -07:00
John MacFarlane
2a46042661
Shared.hierarchicalize: Don't number subsections of unnumbered sections.
...
They were previously numbered, starting from the previous numbered
section, which was wrong.
2014-07-21 12:35:11 -07:00
John MacFarlane
b80577b395
Shared.fetchItem: unescape URI encoding before reading local file.
...
Close #1427 .
2014-07-15 12:17:45 -07:00
John MacFarlane
ea1bb4ed27
Better comment on removeFormatting.
2014-07-13 15:10:27 -07:00
John MacFarlane
5dba2e2192
Shared: Generalized type of removeFormatting.
2014-07-13 14:56:20 -07:00
John MacFarlane
172a184274
Shared: Added removeFormatting.
...
API change (addition of exported function).
2014-07-13 10:13:22 -07:00
John MacFarlane
4676bfdf82
Removed space at ends of lines in source.
2014-07-12 22:57:22 -07:00
John MacFarlane
8c7abf173a
normalize: consolidate adjacent RawBlocks when possible.
2014-07-07 15:53:59 -06:00
John MacFarlane
3fbbafd391
Rewrote normalize for efficiency. (Closes #1385.)
...
* 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-29 23:05:08 -07:00
mpickering
7807564d44
Moved extractSpaces to Shared.hs
...
Generalised and move the extractSpaces function from `HTML.hs` to
`Shared.hs` so that the docx reader can also use it.
2014-06-16 20:45:54 +01:00
John MacFarlane
2a627f85fe
Shared: Added ordNub.
...
API change (adds export).
2014-06-03 11:00:54 -07:00
John MacFarlane
ee8c8da8cc
Removed dependency on conduit.
...
* http-conduit flag is now https.
* Instead of http-conduit, we depend on http-client and http-client-tls.
2014-05-18 22:07:00 -07:00
John MacFarlane
2348f07b11
Shared addMetaField: if old and new values both lists, concatenate.
2014-05-12 13:05:42 -07:00
Albert Krewinkel
8fdbef841d
Update copyright notices for 2014, add missing notices
2014-05-09 00:46:08 +02:00
John MacFarlane
6a2361c457
Merge pull request #1256 from tarleb/org-reader-improvements
...
Org reader improvements
2014-04-19 20:35:41 -07:00
Albert Krewinkel
efebade38b
Move compactify'DL
from Markdown reader into Shared
...
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-19 15:03:33 +02:00
John MacFarlane
7f036c0b57
Shared: Fixed bug in toRomanNumeral.
...
9 and numbers ending in 9 would end with "IXIV."
Thanks to Jesse Rosenthal. Closes #1249 .
2014-04-15 19:53:58 -07:00
John MacFarlane
c0309a60bc
Shared.openURL: Set proxy with value of http_proxy env variable.
...
Note: proxies with non-root paths are not supported,
because of limitations in http-conduit.
Closes #1211 .
2014-04-05 10:58:32 -07:00
John MacFarlane
aada7b495b
fetchItem: Handle image URLs beginning with '//'.
2014-01-08 12:04:08 -08:00
Henry de Valence
0c5e7cf8cb
HLint: use elem
and notElem
...
Replaces long conditional chains with calls to `elem` and `notElem`.
2013-12-19 20:19:24 -05:00
Henry de Valence
1ed2c467c9
HLint: Use all
...
Replace `and . map` with `all`.
2013-12-19 17:06:27 -05:00
John MacFarlane
142f81889b
Added withSocketsDo
around http conduit code in openURL
.
...
This should address #1080 , but further testing on Windows is needed
before we can close the bug.
2013-12-09 22:35:57 -08:00
Shaun Attfield
82813b5585
normalizeDate: Allow dates with year only (%Y)
2013-12-01 10:19:08 +02:00