mirror of
https://github.com/codeninjasllc/discourse.git
synced 2024-12-04 21:01:27 -05:00
38 lines
1.1 KiB
JavaScript
38 lines
1.1 KiB
JavaScript
window.PagedownCustom = {
|
|
insertButtons: [
|
|
{
|
|
id: 'wmd-quote-post',
|
|
description: I18n.t("composer.quote_post_title"),
|
|
execute: function() {
|
|
// AWFUL but I can't figure out how to call a controller method from outside our app
|
|
return Discourse.__container__.lookup('controller:composer').send('importQuote');
|
|
}
|
|
}
|
|
],
|
|
|
|
appendButtons: [],
|
|
|
|
customActions: {
|
|
"doBlockquote": function(chunk, postProcessing, oldDoBlockquote) {
|
|
|
|
// When traditional linebreaks are set, use the default Pagedown implementation
|
|
if (Discourse.SiteSettings.traditional_markdown_linebreaks) {
|
|
return oldDoBlockquote.call(this, chunk, postProcessing);
|
|
}
|
|
|
|
// Our custom blockquote for non-traditional markdown linebreaks
|
|
var result = [];
|
|
chunk.selection.split(/\n/).forEach(function (line) {
|
|
var newLine = "";
|
|
if (line.indexOf("> ") === 0) {
|
|
newLine += line.substr(2);
|
|
} else {
|
|
if (/\S/.test(line)) { newLine += "> " + line; }
|
|
}
|
|
result.push(newLine);
|
|
});
|
|
chunk.selection = result.join("\n");
|
|
|
|
}
|
|
}
|
|
};
|