/, "").replace(/<\/b>$/, "").trim(); // fix for google doc copy paste
- return markdown.replace(/\r/g, "").replace(/\n \n/g, "\n\n").replace(/\n{3,}/g, "\n\n");
+ markdown = markdown.replace(/\r/g, "").replace(/\n \n/g, "\n\n").replace(/\n{3,}/g, "\n\n");
+ return replacePlaceholders(markdown, placeholders);
} catch(err) {
return "";
}
diff --git a/app/assets/javascripts/discourse/lib/utilities.js.es6 b/app/assets/javascripts/discourse/lib/utilities.js.es6
index 58a7b4234d..dde738d9a8 100644
--- a/app/assets/javascripts/discourse/lib/utilities.js.es6
+++ b/app/assets/javascripts/discourse/lib/utilities.js.es6
@@ -447,7 +447,7 @@ export function clipboardData(e, canUpload) {
const canUploadImage = canUpload && files.filter(f => f.type.match('^image/'))[0];
const canPasteHtml = Discourse.SiteSettings.enable_rich_text_paste && types.includes("text/html") && !canUploadImage;
- return { clipboard: clipboard, types: types, canUpload: canUpload, canPasteHtml: canPasteHtml };
+ return { clipboard, types, canUpload, canPasteHtml };
}
// This prevents a mini racer crash
diff --git a/test/javascripts/lib/to-markdown-test.js.es6 b/test/javascripts/lib/to-markdown-test.js.es6
index eb5c7c729f..9d6111aaa6 100644
--- a/test/javascripts/lib/to-markdown-test.js.es6
+++ b/test/javascripts/lib/to-markdown-test.js.es6
@@ -129,7 +129,7 @@ QUnit.test("converts img tag", assert => {
assert.equal(toMarkdown(html), ``);
});
-QUnit.test("suppring html tags by keeping them", assert => {
+QUnit.test("supporting html tags by keeping them", assert => {
let html = "Lorem ipsum dolor sit amet, consectetur";
let output = html;
assert.equal(toMarkdown(html), output);
@@ -148,3 +148,25 @@ QUnit.test("suppring html tags by keeping them", assert => {
output = `Lorem [ipsum \n dolor sit.](http://example.com)`;
assert.equal(toMarkdown(html), output);
});
+
+QUnit.test("converts code tags", assert => {
+ let html = `Lorem ipsum dolor sit amet,
+ var helloWorld = () => {
+ alert(' hello \t\t world ');
+ return;
+}
+helloWorld();
+ consectetur.`;
+ let output = `Lorem ipsum dolor sit amet,\n\n\`\`\`\nvar helloWorld = () => {\n alert(' hello \t\t world ');\n return;\n}\nhelloWorld();\n\`\`\`\n\nconsectetur.`;
+
+ assert.equal(toMarkdown(html), output);
+
+ html = `Lorem ipsum dolor sit amet, var helloWorld = () => {
+ alert(' hello \t\t world ');
+ return;
+}
+helloWorld(); consectetur.`;
+ output = `Lorem ipsum dolor sit amet, \`var helloWorld = () => {\n alert(' hello \t\t world ');\n return;\n}\nhelloWorld();\` consectetur.`;
+
+ assert.equal(toMarkdown(html), output);
+});