diff --git a/lib/rules_block/paragraph.js b/lib/rules_block/paragraph.js index 634824c..99aaf6d 100644 --- a/lib/rules_block/paragraph.js +++ b/lib/rules_block/paragraph.js @@ -4,31 +4,26 @@ module.exports = function paragraph(state, startLine/*, endLine*/) { - var endLine, content, terminate, i, l, token, + var content, terminate, i, l, token, nextLine = startLine + 1, - terminatorRules; - - endLine = state.lineMax; + terminatorRules = state.md.block.ruler.getRules('paragraph'), + endLine = state.lineMax; // jump line-by-line until empty one or EOF - if (nextLine < endLine && !state.isEmpty(nextLine)) { - terminatorRules = state.md.block.ruler.getRules('paragraph'); - - for (; nextLine < endLine && !state.isEmpty(nextLine); nextLine++) { - // this would be a code block normally, but after paragraph - // it's considered a lazy continuation regardless of what's there - if (state.tShift[nextLine] - state.blkIndent > 3) { continue; } - - // Some tags can terminate paragraph without empty line. - terminate = false; - for (i = 0, l = terminatorRules.length; i < l; i++) { - if (terminatorRules[i](state, nextLine, endLine, true)) { - terminate = true; - break; - } + for (; nextLine < endLine && !state.isEmpty(nextLine); nextLine++) { + // this would be a code block normally, but after paragraph + // it's considered a lazy continuation regardless of what's there + if (state.tShift[nextLine] - state.blkIndent > 3) { continue; } + + // Some tags can terminate paragraph without empty line. + terminate = false; + for (i = 0, l = terminatorRules.length; i < l; i++) { + if (terminatorRules[i](state, nextLine, endLine, true)) { + terminate = true; + break; } - if (terminate) { break; } } + if (terminate) { break; } } content = state.getLines(startLine, nextLine, state.blkIndent, false).trim(); diff --git a/lib/rules_block/reference.js b/lib/rules_block/reference.js index 73fe5a0..7f57a23 100644 --- a/lib/rules_block/reference.js +++ b/lib/rules_block/reference.js @@ -43,24 +43,22 @@ module.exports = function reference(state, startLine, _endLine, silent) { endLine = state.lineMax; // jump line-by-line until empty one or EOF - if (nextLine < endLine && !state.isEmpty(nextLine)) { - terminatorRules = state.md.block.ruler.getRules('reference'); - - for (; nextLine < endLine && !state.isEmpty(nextLine); nextLine++) { - // this would be a code block normally, but after paragraph - // it's considered a lazy continuation regardless of what's there - if (state.tShift[nextLine] - state.blkIndent > 3) { continue; } - - // Some tags can terminate paragraph without empty line. - terminate = false; - for (i = 0, l = terminatorRules.length; i < l; i++) { - if (terminatorRules[i](state, nextLine, endLine, true)) { - terminate = true; - break; - } + terminatorRules = state.md.block.ruler.getRules('reference'); + + for (; nextLine < endLine && !state.isEmpty(nextLine); nextLine++) { + // this would be a code block normally, but after paragraph + // it's considered a lazy continuation regardless of what's there + if (state.tShift[nextLine] - state.blkIndent > 3) { continue; } + + // Some tags can terminate paragraph without empty line. + terminate = false; + for (i = 0, l = terminatorRules.length; i < l; i++) { + if (terminatorRules[i](state, nextLine, endLine, true)) { + terminate = true; + break; } - if (terminate) { break; } } + if (terminate) { break; } } str = state.getLines(startLine, nextLine, state.blkIndent, false).trim();