[-] darklightxi@lemmy.ca 2 points 7 months ago

Thanks for the feedback and glad you got it resolved!

1
submitted 1 year ago* (last edited 9 months ago) by darklightxi@lemmy.ca to c/testing@lemmy.ca

The following syntaxes work as expected (they create one spoiler tag).

The general rule here is that we allow 0-3 whitespaces before the starting colon, 3 or more colons, any number of optional whitespaces, and the "spoiler" keyword with any non-whitespace character after it.

Normal

spoilerHello!

spoilerHello!


No whitespace

spoiler with no whitespaceHello!

spoiler with no whitespaceHello!


Leading whitespace

   
titleHello!

titleHello!


Any number of whitespaces between : and "spoiler"

:::              spoiler title
Hello!
:::

::: spoiler title Hello! :::


Any number of whitespaces between "spoiler" and the first non-whitespace character

titleHello!

titleHello!


Three or more colons

::::::::::::::::::::::::              spoiler title
Hello!
::::::::::::::::::::::::

:::::::::::::::::::::::: spoiler title Hello! ::::::::::::::::::::::::



Here's where we run into some weird edge cases:

If there is an ending :::, Lemmy will consume the first instance of ::: only if ::: is on a new line with no other text (and up to 3 white spaces)

atext (no whitespaces before
) :::

atext (no whitespaces before
) :::


atext (1 whitespaces before
) :::

atext (1 whitespaces before
) :::


atext (2 whitespaces before
) :::

atext (2 whitespaces before
) :::


atext (3 whitespaces before
) :::

atext (3 whitespaces before
) :::


atext (4 whitespaces before
) :::

atext (4 whitespaces before
) :::



Lemmy doesn't need an ::: ending in order to display the spoiler. If ::: is not present, it will assume the spoiler continues until the end:

a
 spoiler a
text


Lemmy will create nested spoilers if it cannot find ::: before another ::: spoiler:

atext
spoiler b more text

atext
spoiler b more text :::



The following examples will show the ::: within the spoiler, and will make the spoilers nested

atext (4 whitespaces before
) :::

atext (4 whitespaces before
) :::


atext

atext


atext

atext


atext a

atext a

darklightxi

joined 1 year ago
MODERATOR OF