@mfgames-writing/format 3.3.1 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/markdown.d.ts.map +1 -1
- package/lib/markdown.js +9 -10
- package/lib/markdown.js.map +1 -1
- package/package.json +2 -1
package/lib/markdown.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAyB,MAAM,4BAA4B,CAAC;AAKhF;;GAEG;AACH,wBAAgB,qBAAqB,CACjC,OAAO,EAAE,WAAW,GACrB,OAAO,CAAC,WAAW,CAAC,CA8JtB"}
|
package/lib/markdown.js
CHANGED
|
@@ -3,15 +3,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.renderContentMarkdown = void 0;
|
|
4
4
|
const plugins_1 = require("./plugins");
|
|
5
5
|
const markdownIt = require("markdown-it");
|
|
6
|
+
const smartypants_1 = require("smartypants");
|
|
6
7
|
/**
|
|
7
8
|
* Renders a Markdown file as HTML.
|
|
8
9
|
*/
|
|
9
10
|
function renderContentMarkdown(content) {
|
|
10
11
|
return new Promise((resolve) => {
|
|
11
12
|
var _a;
|
|
12
|
-
// Set up a new markdown-it renderer with our defaults.
|
|
13
|
+
// Set up a new markdown-it renderer with our defaults. We don't include
|
|
14
|
+
// typographer because we use Smartypants instead which seems to handle
|
|
15
|
+
// some edge cases better.
|
|
13
16
|
var markdown = markdownIt({
|
|
14
|
-
typographer:
|
|
17
|
+
typographer: false,
|
|
15
18
|
xhtmlOut: true,
|
|
16
19
|
});
|
|
17
20
|
if (content.edition.markdown) {
|
|
@@ -44,6 +47,9 @@ function renderContentMarkdown(content) {
|
|
|
44
47
|
}
|
|
45
48
|
}
|
|
46
49
|
}
|
|
50
|
+
// First process the code using Smartypants.
|
|
51
|
+
content.logger.debug("formatting output with SmartyPants");
|
|
52
|
+
const formatted = (0, smartypants_1.smartypantsu)(content.text, 2);
|
|
47
53
|
// Set up the theme overrides.
|
|
48
54
|
setThemeRenderRule(content, content.theme.renderRule, markdown, "hr");
|
|
49
55
|
setThemeRenderRule(content, content.theme.renderStrongOpen, markdown, "strong_open");
|
|
@@ -54,14 +60,7 @@ function renderContentMarkdown(content) {
|
|
|
54
60
|
setThemeRenderRule(content, content.theme.renderBlockQuoteOpen, markdown, "blockquote_open");
|
|
55
61
|
setThemeRenderRule(content, content.theme.renderBlockQuoteClose, markdown, "blockquote_close");
|
|
56
62
|
// Process the markdown content.
|
|
57
|
-
let html = markdown.render(
|
|
58
|
-
// For some reason, certain authors like me insist on having a em-dash
|
|
59
|
-
// at the end of a quote to represent interruptions. However, the
|
|
60
|
-
// typography park of Marked doesn't really handle quotes properly in
|
|
61
|
-
// that case.
|
|
62
|
-
html = html.replace(/—“/g, "—”");
|
|
63
|
-
// We also have a problem with italics at the end of quotes.
|
|
64
|
-
html = html.replace(/<\/em>“/g, "</em>”");
|
|
63
|
+
let html = markdown.render(formatted);
|
|
65
64
|
// Markdown has an interesting quirk that a "break" is actually a
|
|
66
65
|
// backslash followed by a space. However, trailing spaces are difficult
|
|
67
66
|
// to work with when you use EditorConfig to remove trailing them
|
package/lib/markdown.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mfgames-writing/format",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "A command-line framework for formatting books into a variety of formats and themes.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ebook",
|
|
@@ -53,6 +53,7 @@
|
|
|
53
53
|
"mkdirp-promise": "^2.0.0",
|
|
54
54
|
"mz": "^2.7.0",
|
|
55
55
|
"read-pkg-up": "^4.0.0",
|
|
56
|
+
"smartypants": "^0.1.6",
|
|
56
57
|
"source-map-support": "^0.4.2",
|
|
57
58
|
"tracer": "^0.8.3",
|
|
58
59
|
"uuid": "^2.0.2",
|