Fix not rendered autocomplete emojis

Currently we have some emojis that are autocompleted but won't show up
in the resulting document.

This patch adds all emojis that are pushed to Codemirror and applies
them to the markdown rendering process, so they become usable.

Signed-off-by: Sheogorath <sheogorath@shivering-isles.com>
This commit is contained in:
Sheogorath 2018-10-10 21:24:24 +02:00
parent c7478c1694
commit 2063eb8bdf
No known key found for this signature in database
GPG key ID: 1F05CC3635CDDFFD

View file

@ -1145,6 +1145,20 @@ const pdfPlugin = new Plugin(
} }
) )
const emojijsPlugin = new Plugin(
// regexp to match emoji shortcodes :something:
/:([\d\D]*):/,
(match, utils) => {
const emoji = match[1] ? match[1].toLowerCase() : undefined
if (window.emojify.emojiNames.includes(emoji)) {
const div = $(`<img class="emoji" src="${serverurl}/build/emojify.js/dist/images/basic/${emoji}.png"></img>`)
return div[0].outerHTML
}
return match[0]
}
)
// yaml meta, from https://github.com/eugeneware/remarkable-meta // yaml meta, from https://github.com/eugeneware/remarkable-meta
function get (state, line) { function get (state, line) {
const pos = state.bMarks[line] const pos = state.bMarks[line]
@ -1189,6 +1203,7 @@ function metaPlugin (md) {
} }
md.use(metaPlugin) md.use(metaPlugin)
md.use(emojijsPlugin)
md.use(youtubePlugin) md.use(youtubePlugin)
md.use(vimeoPlugin) md.use(vimeoPlugin)
md.use(gistPlugin) md.use(gistPlugin)