expose as a helper to be used from templates

This commit is contained in:
Kevin Ngo 2017-06-25 16:25:18 -07:00
parent a144d00ed0
commit 9295e5f7ff
2 changed files with 37 additions and 17 deletions

View file

@ -79,25 +79,37 @@ if (options.enable !== false) {
hexo.extend.filter.register('before_post_render', function (data) {
data.content = data.content.replace(/:(\w+):/ig, function (match, p1) {
if (emojis[p1]) {
var codepoints = emojis[p1].codepoints
if (options.unicode && codepoints) {
codepoints = codepoints.map(function (code) {
return '&#x' + code + ';'
}).join('')
return '<span class="' + options.className +
'" title="' + match +
'" data-src="' + emojis[p1].src +
'">' + codepoints + '</span>'
} else {
return '<img class="' + options.className +
'" title="' + match + '" alt="' + match + '" src="' +
emojis[p1].src + '" height="20" width="20" />'
}
return getRender(p1);
} else {
return match
}
})
return data
})
hexo.extend.helper.register('github_emoji', function (name) {
return getRender(name);
});
function getRender (emojiName) {
if (emojis[emojiName]) {
var codepoints = emojis[emojiName].codepoints
if (options.unicode && codepoints) {
codepoints = codepoints.map(function (code) {
return '&#x' + code + ';'
}).join('')
return '<span class="' + options.className +
'" title="' + emojiName +
'" data-src="' + emojis[emojiName].src +
'">' + codepoints + '</span>'
} else {
return '<img class="' + options.className +
'" title="' + emojiName + '" alt="' + emojiName + '" src="' +
emojis[emojiName].src + '" height="20" width="20" />'
}
} else {
return emojiName;
}
}
}