|
|
@ -45,7 +45,7 @@ default_rules.fence = function (tokens, idx, options, env, slf) { |
|
|
|
highlighted = escapeHtml(token.content); |
|
|
|
} |
|
|
|
|
|
|
|
return '<pre><code' + slf.renderAttrs(token) + '>' |
|
|
|
return '<pre><code' + slf.renderAttrs(token, options) + '>' |
|
|
|
+ highlighted |
|
|
|
+ '</code></pre>\n'; |
|
|
|
}; |
|
|
@ -131,9 +131,13 @@ function Renderer() { |
|
|
|
* |
|
|
|
* Render token attributes to string. |
|
|
|
**/ |
|
|
|
Renderer.prototype.renderAttrs = function renderAttrs(token) { |
|
|
|
Renderer.prototype.renderAttrs = function renderAttrs(token, options) { |
|
|
|
var i, l, result; |
|
|
|
|
|
|
|
if (('default_attributes' in options) && (token.tag in options.default_attributes)) { |
|
|
|
token.attrs = (token.attrs || []).concat(options.default_attributes[token.tag]); |
|
|
|
} |
|
|
|
|
|
|
|
if (!token.attrs) { return ''; } |
|
|
|
|
|
|
|
result = ''; |
|
|
@ -181,7 +185,7 @@ Renderer.prototype.renderToken = function renderToken(tokens, idx, options) { |
|
|
|
result += (token.nesting === -1 ? '</' : '<') + token.tag; |
|
|
|
|
|
|
|
// Encode attributes, e.g. `<img src="foo"`
|
|
|
|
result += this.renderAttrs(token); |
|
|
|
result += this.renderAttrs(token, options); |
|
|
|
|
|
|
|
// Add a slash for self-closing tags, e.g. `<img src="foo" /`
|
|
|
|
if (token.nesting === 0 && options.xhtmlOut) { |
|
|
|