common-comment-parser
A universal comment parser (supports more than 30 languages)
Usage
npm install common-comment-parser
; const context = `// line1 const cc = 111;/*block1*/console.log(222); console.log(11); /* block2 */ const c = 111; /* block3 */ console.log(111); // line2 const aaa = 111; // line3 const ddd = `//ddd//ddd//dddd`;const eee = '//eee//eee//eee';const fff = "//ddd//ddd//dddd"; const dd = `\`ddddd//dddd`;const ee = '\'ddddd//dddd';const ff = "\"ddddd//dddd";` const ext = 'js'; console.log(parser(context, ext));// [ { "type": "CommentLine", "value": " line1", "loc": { "start": { "line": 1, "column": 3 }, "end": { "line": 1, "column": 9 } } }, { "type": "CommentBlock", "value": "\nblock1\n", "loc": { "start": { "line": 4, "column": 2 }, "end": { "line": 6, "column": 1 } } }, { "type": "CommentBlock", "value": " block2 ", "loc": { "start": { "line": 9, "column": 19 }, "end": { "line": 9, "column": 27 } } }, { "type": "CommentBlock", "value": " block3 ", "loc": { "start": { "line": 9, "column": 47 }, "end": { "line": 9, "column": 55 } } }, { "type": "CommentLine", "value": " line2", "loc": { "start": { "line": 9, "column": 78 }, "end": { "line": 9, "column": 84 } } }, { "type": "CommentLine", "value": " line3", "loc": { "start": { "line": 12, "column": 19 }, "end": { "line": 12, "column": 25 } } }]
parser(context, ext)
-
context: What needs to be parsed
-
ext: File extension
AST
commentsAST type: string; value: string; loc: start: line: number column: number end: line: number column: number
License
MIT
Copyright (c) 2019 蓝色的秋风