-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathmarked.js
121 lines (106 loc) · 2.98 KB
/
marked.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
/**
* This is an override of marked to be compatible with Blessed tags.
*
* It will override all the Renderer methods.
*/
var chalk = require('chalk');
var marked = require('marked');
var Renderer = Object.create(marked.Renderer);
// Const declaration.
var ITALIC_COLOR = '#989898';
Renderer.prototype.code =
Renderer.prototype.codespan =
Renderer.prototype.paragraph = function (text) {
return text;
};
// Renderer.prototype.blockquote = function(quote) {
// return '<blockquote>\n' + quote + '</blockquote>\n';
// };
//
// Renderer.prototype.html = function(html) {
// return html;
// };
//
// Renderer.prototype.heading = function(text, level, raw) {
// return '<h'
// + level
// + ' id="'
// + this.options.headerPrefix
// + raw.toLowerCase().replace(/[^\w]+/g, '-')
// + '">'
// + text
// + '</h'
// + level
// + '>\n';
// };
//
// Renderer.prototype.hr = function() {
// return this.options.xhtml ? '<hr/>\n' : '<hr>\n';
// };
//
// Renderer.prototype.list = function(body, ordered) {
// var type = ordered ? 'ol' : 'ul';
// return '<' + type + '>\n' + body + '</' + type + '>\n';
// };
//
// Renderer.prototype.listitem = function(text) {
// return '<li>' + text + '</li>\n';
// };
//
// Renderer.prototype.paragraph = function(text) {
// return '<p>' + text + '</p>\n';
// };
//
// Renderer.prototype.table = function(header, body) {
// return '<table>\n'
// + '<thead>\n'
// + header
// + '</thead>\n'
// + '<tbody>\n'
// + body
// + '</tbody>\n'
// + '</table>\n';
// };
//
// Renderer.prototype.tablerow = function(content) {
// return '<tr>\n' + content + '</tr>\n';
// };
//
// Renderer.prototype.tablecell = function(content, flags) {
// var type = flags.header ? 'th' : 'td';
// var tag = flags.align
// ? '<' + type + ' style="text-align:' + flags.align + '">'
// : '<' + type + '>';
// return tag + content + '</' + type + '>\n';
// };
// span level renderer
Renderer.prototype.strong = function(text) {
return '{bold}' + text + '{/bold}';
};
Renderer.prototype.em = function(text) {
return '{' + ITALIC_COLOR + '-fg}*' + text + '*{/' + ITALIC_COLOR + '-fg}';
};
Renderer.prototype.br = function() {
return '\n';
};
Renderer.prototype.del = function(text) {
return chalk.strikethrough(text);
};
Renderer.prototype.link = function(href, title, text) {
return '{underline}' + href + '{/underline}';
};
// Renderer.prototype.image = function(href, title, text) {
// var out = '<img src="' + href + '" alt="' + text + '"';
// if (title) {
// out += ' title="' + title + '"';
// }
// out += this.options.xhtml ? '/>' : '>';
// return out;
// };
Renderer.prototype.mention = function(href, title, text) {
var screenName = text.charAt(0) === '@' ? text.substring(1) : text;
// return util.format('<span data-link-type="mention" data-screen-name="%s" class="mention">%s</span>', screenName, text);
return 'hohohoh' + screenName;
};
marked.Renderer = Renderer;
exports = module.exports = marked;