markdown-it-copy
Version:
A markdown-it-plugin that copy code and others.
34 lines (32 loc) • 762 B
JavaScript
const x = {
getCodeLang(str = '') {
// <div class="language-
// <code class="language-
// etc.
const reg = / class="language-([a-z]+)/;
reg.test(str);
return RegExp.$1 || '';
},
getFragment(str = '') {
return str ? `<span class="u-mdic-copy-code_lang">${str}</span>` : '';
},
};
module.exports = {
// generate Unique id
generateUuid() {
return `${+Date.now()}-${parseInt(Math.random() * 100000)}`;
},
strEncode(str = '') {
if (!str || str.length === 0) {
return '';
}
return str
.replace(/</g, '<')
.replace(/>/g, '>')
.replace(/'/g, '\'')
.replace(/"/g, '"');
},
getCodeLangFragment(oriStr = '') {
return x.getFragment(x.getCodeLang(oriStr));
},
};