UNPKG

504 BJavaScriptView Raw
1'use strict';
2
3exports.isMarkdown = extname => {
4 return /^\.(md|mdown|mkdown|markdown)$/.test(extname);
5};
6
7/**
8 * Escape pipes in <code> inside tables
9 */
10
11exports.escapePipesInTables = str => {
12 let lines = str.split('\n');
13 for (let i = 0; i < lines.length; i++) {
14 let line = lines[i];
15
16 if (/^\s*\|.*?\|\s*$/.test(line)) {
17 lines[i] = line.replace(/(?<!`)`((?:\\`|[^`])+)`(?!`)/g, m => {
18 return m.replace(/\s*\|\s*/g, '\\|');
19 });
20 }
21 }
22 return lines.join('\n');
23};