This commit is contained in:
38
node_modules/remark-stringify/lib/visitors/emphasis.js
generated
vendored
Normal file
38
node_modules/remark-stringify/lib/visitors/emphasis.js
generated
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = emphasis
|
||||
|
||||
var underscore = '_'
|
||||
var asterisk = '*'
|
||||
|
||||
// Stringify an `emphasis`.
|
||||
//
|
||||
// The marker used is configurable through `emphasis`, which defaults to an
|
||||
// underscore (`'_'`) but also accepts an asterisk (`'*'`):
|
||||
//
|
||||
// ```markdown
|
||||
// *foo*
|
||||
// ```
|
||||
//
|
||||
// In `pedantic` mode, text which itself contains an underscore will cause the
|
||||
// marker to default to an asterisk instead:
|
||||
//
|
||||
// ```markdown
|
||||
// *foo_bar*
|
||||
// ```
|
||||
function emphasis(node) {
|
||||
var marker = this.options.emphasis
|
||||
var content = this.all(node).join('')
|
||||
|
||||
// When in pedantic mode, prevent using underscore as the marker when there
|
||||
// are underscores in the content.
|
||||
if (
|
||||
this.options.pedantic &&
|
||||
marker === underscore &&
|
||||
content.indexOf(marker) !== -1
|
||||
) {
|
||||
marker = asterisk
|
||||
}
|
||||
|
||||
return marker + content + marker
|
||||
}
|
||||
Reference in New Issue
Block a user