mirror of
https://github.com/naturalcrit/homebrewery.git
synced 2026-01-04 19:02:38 +00:00
Revert previous simplification as it breaks the original purpose of this PR
Added test for inside a code block.
This commit is contained in:
@@ -395,7 +395,9 @@ const definitionListsSingleLine = {
|
|||||||
.map((emoji)=>firstLine = firstLine.replace(emoji.raw, 'x'.repeat(emoji.raw.length)));
|
.map((emoji)=>firstLine = firstLine.replace(emoji.raw, 'x'.repeat(emoji.raw.length)));
|
||||||
|
|
||||||
const newMatch = /^([^\n]*?)::([^\n]*)(?:\n|$)/ym.exec(firstLine);
|
const newMatch = /^([^\n]*?)::([^\n]*)(?:\n|$)/ym.exec(firstLine);
|
||||||
if(newMatch) {
|
if((newMatch) && ((newMatch[2].length > 0) && newMatch[2][0] != ':')) {
|
||||||
|
// Test the length to handle two : paragraph breaks exception
|
||||||
|
// Test the first position on the dictionary term to handle three + paragraph breaks exception
|
||||||
definitions.push({
|
definitions.push({
|
||||||
dt : this.lexer.inlineTokens(originalLine.slice(0, newMatch[1].length).trim()),
|
dt : this.lexer.inlineTokens(originalLine.slice(0, newMatch[1].length).trim()),
|
||||||
dd : this.lexer.inlineTokens(originalLine.slice(newMatch[1].length + 2).trim())
|
dd : this.lexer.inlineTokens(originalLine.slice(newMatch[1].length + 2).trim())
|
||||||
@@ -856,8 +858,7 @@ module.exports = {
|
|||||||
varsQueue = []; //Could move into MarkedVariables()
|
varsQueue = []; //Could move into MarkedVariables()
|
||||||
globalPageNumber = pageNumber;
|
globalPageNumber = pageNumber;
|
||||||
|
|
||||||
rawBrewText = rawBrewText.replace(/^\\column$/gm, `\n<div class='columnSplit'></div>\n`)
|
rawBrewText = rawBrewText.replace(/^\\column$/gm, `\n<div class='columnSplit'></div>\n`);
|
||||||
.replace(/^(:+)$/gm, (match)=>`${`:\n\n`.repeat(match.length)}\n`);
|
|
||||||
const opts = Marked.defaults;
|
const opts = Marked.defaults;
|
||||||
|
|
||||||
rawBrewText = opts.hooks.preprocess(rawBrewText);
|
rawBrewText = opts.hooks.preprocess(rawBrewText);
|
||||||
|
|||||||
@@ -12,12 +12,19 @@ describe('Hard Breaks', ()=>{
|
|||||||
test('Double Break', function() {
|
test('Double Break', function() {
|
||||||
const source = '::\n\n';
|
const source = '::\n\n';
|
||||||
const rendered = Markdown.render(source).trim();
|
const rendered = Markdown.render(source).trim();
|
||||||
expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('<div class=\'blank\'></div>\n<div class=\'blank\'></div>');
|
expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('<div class=\'blank\'></div><div class=\'blank\'></div>');
|
||||||
});
|
});
|
||||||
|
|
||||||
test('Triple Break', function() {
|
test('Triple Break', function() {
|
||||||
const source = ':::\n\n';
|
const source = ':::\n\n';
|
||||||
const rendered = Markdown.render(source).trim();
|
const rendered = Markdown.render(source).trim();
|
||||||
expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('<div class=\'blank\'></div>\n<div class=\'blank\'></div>\n<div class=\'blank\'></div>');
|
expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('<div class=\'blank\'></div><div class=\'blank\'></div><div class=\'blank\'></div>');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('Ignored inside a code block', function() {
|
||||||
|
const source = '```\n\n:\n\n```\n';
|
||||||
|
const rendered = Markdown.render(source).trim();
|
||||||
|
expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('<pre><code>\n:\n</code></pre>');
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user