diff --git a/package.json b/package.json
index 972d82138..8cee4082a 100644
--- a/package.json
+++ b/package.json
@@ -31,7 +31,7 @@
"test:mustache-syntax:inline": "jest '.*(mustache-syntax).*' -t '^Inline:.*' --verbose --noStackTrace",
"test:mustache-syntax:block": "jest '.*(mustache-syntax).*' -t '^Block:.*' --verbose --noStackTrace",
"test:mustache-syntax:injection": "jest '.*(mustache-syntax).*' -t '^Injection:.*' --verbose --noStackTrace",
- "test:marked-extensions": "jest '.*(marked-extensions).*' --verbose --noStackTrace",
+ "test:marked-extensions": "jest tests/markdown/marked-extensions.test.js --verbose --noStackTrace",
"test:route": "jest tests/routes/static-pages.test.js --verbose",
"phb": "node scripts/phb.js",
"prod": "set NODE_ENV=production && npm run build",
diff --git a/shared/naturalcrit/markdown.js b/shared/naturalcrit/markdown.js
index 227b9ad35..defd4100e 100644
--- a/shared/naturalcrit/markdown.js
+++ b/shared/naturalcrit/markdown.js
@@ -401,12 +401,12 @@ const definitionLists = {
}
},
renderer(token) {
- let returnVal = `
`;
+ let returnVal = ``;
token.definitions.forEach((def)=>{
let dds = def.ddo.map((s)=>{
- return `- ${this.parser.parseInline(s).trim()}
`;
- }).join('\n');
- returnVal += `- ${this.parser.parseInline(def.dt)}
${dds.indexOf('\n') > -1 ? '\n' : ''}${dds}\n`;
+ return `${token.inlineDefinitions ? '' : '\n'}- ${this.parser.parseInline(s).trim()}
`;
+ }).join('');
+ returnVal += `- ${this.parser.parseInline(def.dt)}
${dds}\n`;
});
returnVal = returnVal.trim();
return `${returnVal}
`;
diff --git a/tests/markdown/marked-extensions.test.js b/tests/markdown/marked-extensions.test.js
index 5a8603ab8..6d3be056f 100644
--- a/tests/markdown/marked-extensions.test.js
+++ b/tests/markdown/marked-extensions.test.js
@@ -2,23 +2,23 @@
const Markdown = require('naturalcrit/markdown.js');
-describe('Dictionary Terms', ()=>{
+describe('Definition Terms', ()=>{
test('Single Definition', function() {
const source = 'My term :: My First Definition\n\n';
const rendered = Markdown.render(source);
- expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- My term
- My First Definition
');
+ expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- My term
- My First Definition
');
});
test('Multiple Definition Terms, single line, single definition', function() {
const source = 'Term 1::Definition of Term 1\nTerm 2::Definition of Term 2\n\n';
const rendered = Markdown.render(source);
- expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- Term 1
- Definition of Term 1
\n- Term 2
- Definition of Term 2
');
+ expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- Term 1
- Definition of Term 1
\n- Term 2
- Definition of Term 2
');
});
test('PANdoc style list - Single Term, Single Definition', function() {
const source = 'Term 1\n::Definition 1\n\n';
const rendered = Markdown.render(source);
- expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- Term 1
- Definition 1
');
+ expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- Term 1
\n- Definition 1
');
});
test('PANdoc style list - Single Term, Plural Definitions', function() {
@@ -30,7 +30,7 @@ describe('Dictionary Terms', ()=>{
test('PANdoc style list - Multiple Term, Single Definitions', function() {
const source = 'Term 1\n::Definition 1\nTerm 2\n::Definition 1\n\n';
const rendered = Markdown.render(source);
- expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- Term 1
- Definition 1
\n- Term 2
- Definition 1
');
+ expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- Term 1
\n- Definition 1
\n- Term 2
\n- Definition 1
');
});
test('PANdoc style list - Multiple Term, Plural Definitions', function() {
@@ -42,15 +42,12 @@ describe('Dictionary Terms', ()=>{
test('PANdoc style list - Single Term, Single multiple line definition', function() {
const source = 'Term 1\n::Definition 1\nand more and\nmore and more\n\n';
const rendered = Markdown.render(source);
- expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- Term 1
- Definition 1 and more and more and more
');
-
+ expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- Term 1
\n- Definition 1 and more and more and more
');
});
test('PANdoc style list - Multiple Term, Single multiple line definition', function() {
const source = 'Term 1\n::Definition 1\nand more and\nmore and more\n\n::Definition 2\n\n::Definition 3\n\n';
const rendered = Markdown.render(source);
expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('- Term 1
\n- Definition 1 and more and more and more
\n- Definition 2
\n- Definition 3
');
-
});
-
});
diff --git a/themes/V3/5ePHB/style.less b/themes/V3/5ePHB/style.less
index 50cb5c977..ed3e8604c 100644
--- a/themes/V3/5ePHB/style.less
+++ b/themes/V3/5ePHB/style.less
@@ -319,30 +319,6 @@
padding : 0px;
margin-bottom : 0.325cm;
- dl {
- padding: 0px;
- }
-
- dt::before {
- display: block;
- }
-
- dt:nth-child(1n+2)::before {
- content: "";
- display: block;
- }
-
- dt {
- display: inline;
- margin-right : 5px;
- margin-left : 0em;
- padding: 0px;
- }
-
- dd {
- display: inline;
- }
-
//Headers
h2 {
margin : 0;
@@ -886,36 +862,14 @@
dl {
line-height : 1.25em;
& + * { margin-top : 0.17cm; }
- white-space: normal !important;
-
}
-
- dd {
- display: block
- }
-
p + dl { margin-top : 0.17cm; }
-
- dt {
- display : inline;
+ dt {
margin-right : 5px;
margin-left : -1em;
}
}
-// *****************************
-// * Inline Definition Lists
-// *****************************/
-.inlineDL dd {
- display: inline !important
- }
-
- .inlineDL dd:after{
- display: block;
- content: '';
- }
-
-
// *****************************
// * WIDE
// *****************************/