本文整理匯總了TypeScript中marked.lexer函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript lexer函數的具體用法?TypeScript lexer怎麽用?TypeScript lexer使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了lexer函數的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: makeHtml
export function makeHtml(content) {
var tokens = marked.lexer(content);
var headings = tokens.filter(item => item.type === 'heading');
var toc = makeToc(headings);
var content2 = marked.parser(tokens);
content2 = content2.replace(/(<table>)/g, '<div class="table-responsive"><table class="table table-hover">');
content2 = content2.replace(/(<\/table>)/g, '</table></div>');
return toc + content2;
}
示例2: callback
function callback() {
console.log('callback called');
}
const myOldMarked: typeof marked = marked.setOptions(options);
console.log(marked('i am using __markdown__.'));
console.log(marked('i am using __markdown__.', options));
console.log(marked('i am using __markdown__.', callback));
console.log(marked('i am using __markdown__.', options, callback));
console.log(marked.parse('i am using __markdown__.'));
console.log(marked.parse('i am using __markdown__.', options));
console.log(marked.parse('i am using __markdown__.', callback));
console.log(marked.parse('i am using __markdown__.', options, callback));
const text = 'something';
const tokens: marked.TokensList = marked.lexer(text, options);
console.log(marked.parser(tokens));
const lexer = new marked.Lexer(options);
const tokens2 = lexer.lex(text);
console.log(tokens2);
const re: RegExp | marked.Rules = lexer.rules['code'];
const renderer = new marked.Renderer();
renderer.heading = (text, level, raw) => {
return text + level.toString() + raw;
};
示例3: callback
},
langPrefix: 'lang-',
smartypants: false,
renderer: new marked.Renderer()
};
function callback() {
console.log('callback called');
}
marked.setOptions(options);
console.log(marked('i am using __markdown__.'));
console.log(marked('i am using __markdown__.', options));
console.log(marked('i am using __markdown__.', callback));
console.log(marked('i am using __markdown__.', options, callback));
console.log(marked.parse('i am using __markdown__.'));
console.log(marked.parse('i am using __markdown__.', options));
console.log(marked.parse('i am using __markdown__.', callback));
console.log(marked.parse('i am using __markdown__.', options, callback));
var text = 'something';
var tokens = marked.lexer(text, options);
console.log(marked.parser(tokens));
var renderer = new marked.Renderer();
renderer.heading = function(text, level, raw) {
return text + level.toString() + raw;
};
示例4:
}
const myOldMarked: typeof marked = marked.setOptions(options);
console.log(marked('1) I am using __markdown__.'));
console.log(marked('2) I am using __markdown__.', options));
console.log(marked('3) I am using __markdown__.', callback));
console.log(marked('4) I am using __markdown__.', options, callback));
console.log(marked.parse('5) I am using __markdown__.'));
console.log(marked.parse('6) I am using __markdown__.', options));
console.log(marked.parse('7) I am using __markdown__.', callback));
console.log(marked.parse('8) I am using __markdown__.', options, callback));
const text = 'Something';
const tokens: marked.TokensList = marked.lexer(text, options);
console.log(marked.parser(tokens));
const lexer = new marked.Lexer(options);
const tokens2 = lexer.lex(text);
console.log(tokens2);
const re: RegExp | marked.Rules = lexer.rules['code'];
const renderer = new marked.Renderer();
const slugger = new marked.Slugger();
renderer.heading = (text, level, raw, slugger) => {
return text + level.toString() + slugger.slug(raw);
};
const textRenderer = new marked.TextRenderer();
console.log(textRenderer.strong(text));
示例5: function
fs.readFile(path.join(directory, element), "utf8", function (err: any, data: string) {
if (!data) {
throw "data is empty";
}
let moduleName = path.parse(element).name.replace("-", "_");
let lexed = marked.lexer(data);
let functions: FunctionType[] = [];
let index = 0;
let funcObj: any = null;
let nodeType: string = "";
while (lexed.length !== index) {
let lexElement = lexed[index];
if (nodeType === "syntax" && lexElement.type === "paragraph") {
let signature: string = lexElement.text;
funcObj.signature = replaceAll(signature, "`", "").replace(moduleName + ".", "".trim());
nodeType = null;
} else if (nodeType === "function" && lexElement.type === "paragraph") {
let desc: string = lexElement.text;
funcObj.description = replaceAll(desc, "`", "'").trim();
funcObj.description = replaceAll(funcObj.description, "\n", " ");
funcObj.description = replaceAll(funcObj.description, "\r", " ");
funcObj.description = replaceAll(funcObj.description, "\t", " ");
funcObj.description = replaceAll(funcObj.description, "<br />", " ");
funcObj.description = replaceAll(funcObj.description, "\0xa", " ");
nodeType = null;
}
if (lexElement.depth === 2 && lexElement.type === "heading") {
funcObj = { parameters: [] };
functions.push(funcObj);
// function found
let funcName: string = lexElement.text;
funcObj.label = funcName.replace(moduleName + ".", "").replace("()", "").trim();
funcObj.data = funcName.replace("()", "").trim();
nodeType = "function";
} else if (lexElement.depth === 4 && lexElement.type === "heading" && lexElement.text === "Syntax") {
nodeType = "syntax";
}
index++;
}
let fileData: string = "import { CompletionItem, CompletionItemKind } from 'vscode-languageserver';\n";
fileData += "\n";
fileData += "const " + moduleName + ": CompletionItem[] = [\n";
functions.forEach(element => {
fileData += "\t{\n";
fileData += "\t\tkind: CompletionItemKind.Function,\n";
fileData += "\t\tlabel: '" + element.label + "',\n";
fileData += "\t\tdata: '" + element.data + "',\n";
fileData += "\t\tdetail: '" + (element.signature == null ? "" : element.signature) + "',\n";
fileData += "\t\tdocumentation: `" + (element.description == null ? "" : element.description) + "`\n";
fileData += "\t},\n";
});
fileData += "];\n";
fs.writeFile("d:\\" + moduleName + ".ts", fileData);
});