Formatting Sandbox

Notes:

• Answers will occasionally be moved to the Sandbox archive when there are too many of them. When using them to report bugs, keep an eye on the post.
• This site, Meta Stack Exchange, is usually used as a "test bed" for pending changes happening to the way text is rendered on all network sites. Changes to text rendering that are going to be rolled out to the network are usually deployed here first to test them out and fix any potential glitches. Currently, there are no such changes pending, but if there were, keep in mind that text posted here may render differently from the other sites until the changes roll out to them as well.

As per Jeff's suggestion in this comment:

You can use this question as a formatting sandbox. You can:

• edit this question itself (Community Wiki questions such as this one require only 100 reputation to edit instead of 2,000)
• post answers to this question (This question might be protected, requiring earning 10 reputation on this site to answer)
• test suspected bugs with the editor or the rendering
• post ponies (only when mods are asleep)

Beware that since the changes to syntax highlighting in December 2010, and the inline hints added in March 2011, no syntax highlighting is applied unless the question's tags or an inline hint enable it. So, to test highlighting here in the sandbox:

1. As of January 8, 2019, you can use GitHub-flavor fenced code blocks in your posts, specifying the language after the opening fence:

html
While not hinted otherwise: <html></html> source <b>goes</b> "here".


js
var a = 3;
while (not (a > 0)) {
}


2. Or:

• Create code blocks in any way (using the fence notation above, the four-space indent form, or using HTML <pre><code> tags).

• Use your browser's developer tools to edit the resulting HTML. To open developer tools, press F12, or ⌥⌘ I on Mac.

• Find the <pre> element and add the attribute class="prettyprint", or change it into one of the valid syntax hints linked above, like class="lang-vb prettyprint".

• Run the following in the location bar: javascript:prettyPrint(); or prettyPrint() in the console.

Answers that are considered annoying or obnoxious, or that cause breakage for users, will be deleted. This is codified as a policy as of March 29, 2018.

• Bold code block.Italic code block. Mar 4 '19 at 12:36
• Is new line working correct? Adding two spaces at the end of this line And now the new line... And another another... No new lines :( Mar 5 '19 at 11:14
• New line </br> continue in new line... Mar 5 '19 at 11:16
• – Alex
Mar 17 '19 at 2:35
• Do HTML &quot; entities &quot; work&nbsp;? Guess not. Apr 1 '19 at 22:18
• A comment with some weird markdown, to test and help this user. Look tags work too, and so does tour. Apr 6 '19 at 1:59
• Note: Do not remove @BhargavRao's comment, or you will break this answer Apr 6 '19 at 17:16
• @BhargavRao When sandbox answers are moved to the archive, comments such as this one -- on the question itself -- aren't migrated; they're deleted. Apr 9 '19 at 19:37
• ‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮⁯‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮⁯‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮⁯‬‭‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮⁯‬‭‮ Such an odd comment...‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮⁯‬‭‮‬ Jun 18 '20 at 1:16
• ‮sdrawkcab si tnemmoc sihT Jul 4 '20 at 1:03
• SOBotics Tool to get the source text of this comment. Single backslash and single backtick: \, . Type: \, \. Jul 12 '20 at 23:23
• Note: Do not remove @wizzwizz4's comment, or you will not know that you don't have to delete Bhargav Rao's comment. Jul 18 '20 at 11:49
• ‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮⁯‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮⁯‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮⁯‬‭‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ ‬⁪⁪⁫⁬⁭⁮⁯‬‭backward comment‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‮‭‬⁮‭‭⁪⁯‬ ‭⁭⁫⁪⁬⁯‮‬⁪⁫⁬⁭⁮‬⁯⁪⁪⁪⁪⁭⁮⁯ Nov 30 '20 at 1:32
• @ppwater pasting the contents of your comment after selecting the spaces after it too into TextEdit and hitting backspace crashes on macOS Catalina. ¯\_(ツ)_/¯ It appears it split my cursor in two???? Jan 31 at 21:14
• Oh, and [something](//) behaves just like [something](https://), too. May 5 at 11:56

С#:

public string X {get; set;}


default:

public string X {get; set;}


Very good! Fantastic! Very good! Fantastic! Very good! Fantastic!frefferfgerger

This is a test.

Still a test.

• List item

I keep testing.

Until it breaks.

• Another list item

And it doesn't break if you indent by 4 spaces

this post is so not by Stormblessed it’s just incredible how written-by-a-different-person it is (this is going to be for a bug report)

Hi this is a person who is very non-blessed-by-the-storms.

.bold text after a dot works in answers

.it can also be done using HTML tags

– wimi
Jun 26 '20 at 21:07
• .<b>HTML tags do not work in comments</b>
– wimi
Jun 27 '20 at 8:39
• .&zwj;**bold** test Jun 27 '20 at 9:40
• . bold test Jun 27 '20 at 9:41
• .<!-->**bold** after comment tag Jun 27 '20 at 10:01
• word\.**bold** test Jun 27 '20 at 10:02
• .**bold** with unicode Jun 27 '20 at 10:42
• .​**bold** with zero-width space
– wimi
Jun 27 '20 at 11:53

<$‮ !oboRhceTehT m'I ,iH Try editing the above sentence post to say something else (but dont remove the <$), you'll have nightmares >:)

• Aha! Unicode hacks! ‮‮⁫ Jun 30 '20 at 14:00

Hi I keep seeing posts that start with "hi" so I want to check to see if "hi" still gets removed.

Apparently "Hi," or "Hi everyone," gets removed, but just "Hi" without the comma doesn't.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi eget nunc sed dui ullamcorper suscipit sit amet vitae arcu. Donec egestas dolor vitae pretium consectetur. Mauris consequat, purus eu dignissim feugiat, dui massa venenatis felis, ut luctus felis felis id nunc. Fusce tristique ultrices mauris bibendum finibus. In hac habitasse platea dictumst. Proin facilisis odio vel vulputate euismod. Quisque finibus a libero eu pulvinar. Aliquam porta urna non neque laoreet, vel malesuada libero efficitur. Donec consectetur tellus in nunc auctor, id feugiat sapien pretium. Sed at metus dui. Sed ipsum metus, interdum nec erat et, tempor feugiat dui. Integer rutrum.

In line code span may be nice

function dummy() {
p1=$1 printf "Dummy gets$p1"
}

• How to
This way
Besides that way is ok, the other way is quite better
• Whith what?
With this and that
• When?
Right now

And as Zaratustra in Ein Buch für Alle und Keinen said...

Nicht reden einmal will ich wieder mit dem Volke; zum letzten Male sprach ich zu einem Todten

crystal clear

Some other matters

I love linux and I accept windows...and doors as well

Working code in this rextester

• Refreshing the syntax/ Tks for this sandbox
– Fico
Sep 30 '20 at 18:18

Naming

Standards

Why do you use x in your for loop when the standard is i?

Inconsistencies

You use the name repeatLoop for one function but sdl_bindings for a class.

Your use of goto makes this code very unreadable

Look up Goto considered harmful

Just checking inline img tag with svg.

Normal (PNG) image:

PNG inline image:

SVG image:

SVG inline image:

Is it because of the link descriptions?

• Message length In Cryptography, usually, the message length is not considered secret. There are approaches that you can add random values to the end or beginning or both if this is really an information leak for you. The random approach depends on your actual data case...

• The (IV, key) pair reuse problem that can eliminate the confidentiality with the crib-dragging technique.

• Lack of authentication Like all unauthenticated encryption modes, the bare CTR mode lacks integrity and authentication. A single bit of flipping can have catastrophic results. The AES-GCM mode that used the CTR mode of operation provides you all-in-once, however, it has the same (IV, key) pair reuse problem. There is a Synthetic Initialization Vector (SIV) mode as nonce-misuse resistance ( paper, rfc8452 ) that eliminates this.

• Long message distinguisher: The CTR mode is designed with a Pseudo-Random-Function (PRF). When using AES in CTR mode, we use it with Pseudo Random Permutation (PRP); $$E_k\colon {0,1}^n \to {0,1}^n.$$ Whit PRP as long as the message blocks are not repeated the sequence $E_k(0), E_k(1), \dots, E_k(\ell - 1)$ with $\ell < 2^n$ is not repeated. If the message with length $\ell$-block has no repeated block this is no problem. If we approach the message as uniform random block then we expect a collision $\ell \approx \sqrt{2^n} = 2^{n/2}$ by the birthday paradox/attack.

When used with AES-128 for long messages check for the repeat. The repeat enables the attacker to distinguish this from uniform random with non-negligible probability.

In short, a duplicate ciphertext leaks that the messages are different.

1. No need the decryption: Doesn't require decryption of the block cipher. This is very helpful in constraint environments. Simplifies the software and hardware code, too.

2. No need PRP: Doesn't need a block cipher (PRP) at all. A hash function can be used like in the ChaCha series.

3. Prepocessing: the keystream generated by the CTR mode can be prepared before. This can help to use buffers.

A little history of CTR

CTR mode was introduced by Whitfield Diffie and Martin Hellman in 1979

asdasfasf
affa
affa
affa

snippet

<html>
<body>
<p>Wow. </p>
</body>
</html>

Just a test

• A Markdown based <ul>. This does not appear to require the syntax be uniform. With a & ampersand a real amp & "something in quotes", "something in quot", copyright©, ", and section §

A non breaking space.

An indented Markdown code block


Some inline code to help.

A code-fenced Markdown-based, syntax highlighted code with <code>an in-code code block</code>
And a <pre><code>in-code pre-block in a pre-code</code></pre>
A HTML entity in code: non&nbsp;breaking&nbsp;space.

The same text that is in a Markdown unordered list above, but here in code:
- A Markdown based &lt;ul&gt;.
With a &amp; ampersand a real amp & "something in quotes",
&quot;something in quot&quot;, copyright&copy;, &quot;, and section &sect;


Same code, but using HTML, so no syntax highlighting. Code with an in-code code block
And a in-code pre-block in a pre-code
A HTML entity in code: non breaking space.
The same text that is in a Markdown unordered list above, but here in code:

A Markdown based <ul>.
This is HTML bold or italics in a code block.
This is Markdown bold or italics in a code block.
With a & ampersand a real amp & "something in quotes", "something in quot", copyright©, ", and section §A <ul> with a <li> in a <blockquote> in <code>. - An HTML based <ul>.
This is HTML bold or italics in a code block.
This is Markdown bold or italics in a code block.
With a & ampersand a real amp & "something in quotes", "something in quot", copyright©, ", and section §

A <ul> with a <li>. - An HTML based <ul>.
This is HTML bold or italics in a code block.
This is Markdown **bold** or *italics* in a code block.
With a & ampersand a real amp & "something in quotes", "something in quot", copyright©, ", and section §
A <ul> with a <li>. - An HTML based <ul> without closing </li> tag.
This is HTML bold or italics in a code block.
This is Markdown **bold** or *italics* in a code block.
With a & ampersand a real amp & "something in quotes", "something in quot", copyright©, ", and section §
A <ul> with a <li>. - An HTML based <ul> without closing </ul> or </ul> tags.
This is HTML bold or italics in a code block.
This is Markdown **bold** or *italics* in a code block.
With a & ampersand a real amp & "something in quotes", "something in quot", copyright©, ", and section §

Editing so that other reviewers don't have to waste their time on a formatting sandbox answer (editing from the review queue marks the review item as completed).

• Thanks for the answer! Apr 25 '19 at 15:36

I've deleted 5 answers today, let's see if I can delete this one as well.

Edit: That's weird, the system let me delete 6 answers in just 5 minutes. According to this that shouldn't be possible. Maybe it's because some of them were already deleted and I undeleted them before deleting them again.

• You did trigger the automatic vandalism flag for moderators at least :P When trying to resolve the flag I looked at your profile, and indeed not all deletions show up as having been in the last 35 or so minutes, so I think the problem is indeed with the undelete/delete cycle. Still, I would not recommend posting 5 new answers to try and find that limit/message: Many deleted answers can count towards an answer ban, and while I don't know the specific rules, I know I can't get you out of that one! I can confirm the message most likely still exists, there are complaints about it from time to time
– Tinkeringbell Mod
Nov 13 '20 at 9:07

I'm going to need this since I will probably delete some of these in the future. When they're deleted they won't be visible in my profile (by the way plese implement this feature request), and it's easier to have all links in one place than to go through all the answers in the formatting sandbox until I find them.

Lorem Ipsum Dolor Sit Amet

Repeated dynamic function call

Unfortunately, this technique alone won't be able to implement $P(n, f, args...) = f(f(...(f(args))...)). (this is not necessary for the computations, but it's more convenient this way) Define an auxiliary macro $M: $M(f, args...) expands to f, f(args). (note that args... is a GNU CPP extension; however this is only for convenience, all usages of it can be replaced with the standard __VA_ARGS__ identifier) Observe that $M($M($M(f, args...))) will expands to:

$M($M(f, f(args)))
$M(f, f(f(args))) f, f(f(f(args)))  Taking the second argument will result in f(f(f(args))). In reality, some defer/eval is required to make the expression expands correctly. Then, use the previous macro $P to evaluate $M$n$times on f, args..., and it's possible to get f applied on args...$n$times. At the moment, it's possible to use $P to implement the multiplication function:

#define mul_1(x,y) x y, y
#define mul(x,y) $P(x,mul_1, ,y)  In this example, mul_1 is repeatedly applied on the argument (<empty>, y)$x$times. For each application, mul_1 transforms (accumulator, y) to (accumulator+y, y); therefore after$x$iterations the result is (x*y, y). Blue-painting/Recursion Let's say, you want to implement a function that uses $P based on another function that uses $P. #define add(x,y) x y #define pre_1(x,y) y,y() #define pre(x)$P(x,pre_1,,) // <-- this function uses $P #define sub(x,y)$P(y,pre,x) // <-- this function uses pre
// similar to the implementation of subtraction using pair in lambda calculus
// returns x-y if x>=y, 0 otherwise.
// (terribly inefficient.)


This will immediately raises a problem -- the inner $P is not expanded. Which makes sense, because the inner $P is created during the expansion of the outer $P. There's a trivial workaround for that problem, however -- define a function $P2 with the same definition as $P (and its helper functions) This restriction makes sense, because cpp is not Turing-complete and it should not be possible for two functions to call each other. Some example functions With these tools, it should not be too hard to build some simple functions. Ideas from lambda calculus should be useful here. #define equ(x,y) sub((),sub(x,y) sub(y,x)) // return 1 == () if x and y are equal, 0 == <empty> otherwise. #define modz_1(result, x, y, value) result equ(x, i), x, y, y value // modz_1(result, x, y, value) = (result + [x == value], x, y, value + y) // x and y are the dividend and the divisor. // value iterates through the first x positive multiples of y, // and check if any of them are equal to x. #define modz(x,y)$P3(x,modz_1,,x,y,y)
// returns 1 if x is a multiple of y, 0 otherwise.
// apply modz_1 on (0, x, y, y) x times, then return the first value of the result.