Quotes containing code block must start with newline

When including a quote with a code block, it will not render correctly unless the quote starts with an extra newline character. For example, the following will display correctly:

[quote="abarker"]
Sample quote 1, without any code.
[/quote]

However, insert a code block into the quote, and things will become problemeatic.

[quote="abarker"]
Sample quote 2, with a small code block.
```
n = 2;
```
This will not work
[/quote]

Then again, if you add an extra line break to the beginning of the quote, it starts working again:

[quote="abarker"]

Sample quote 3, with a small code block.
```
n = 2;
```
This will work
[/quote]
5 Likes

If the quote only consists of code, I’ve found adding an extra line has no effect to fix formatting. But inserting two backticks before the code block, and none after it, works.

A single backtick will fix the #, but shows up in the code.

Becomes

Testing fail condition for current status:

Appears to still be an issue.

1 Like

Status check:

<hidden comment to get around the absurdly long 20 character limit that meta.d imposes.

This one was a pain to debug. I’ve included a workaround, but this is a core markdown parser bug and it should be revisited.

PR is ready here:
https://github.com/discourse/discourse/pull/3715

3 Likes

This seems to have regressed. If a code block plus a line of non-code text are quoted, the formatting of the code block is preserved. If a code block is quoted on its own, the formatting is not preserved.

I’ve posted an example of the problem here: https://try.discourse.org/t/testing-issue-with-quoted-code-blocks/1401/2.

2 Likes

Sure can you assign this @eviltrout?

Took a bit to find the right place to fix it, but here we go!

https://github.com/discourse/discourse/pull/9632

6 Likes

Something’s wrong here, the behavior on Meta isn’t matching what I saw during development.

1 Like

Figured it out, jQuery tricked me.

https://github.com/discourse/discourse/pull/9784

6 Likes