add hack-a-round for language specified markdown code blocks
When language is specified in a markdown code block such as:
````
```c
printf("Hello, world!\n");
```
````
is used, the resulting HTML as produced by `pandoc(1)` combined
with our revised `ioccc.css` is not intent the code block well.
A temporary "_hack-a-round_" is to turn the "markdown code language
specifier" into an HTML comment. For example:
````
```<!---c-->
printf("Hello, world!\n");
```
````
This commits turns off existing markdown code language specifiers
for now, while preserving our ability to restore them in the future
when a better "_hack-a-round_" to the "markdown code language
specifier" problem is found.
The HTML impact if this "_hack-a-round_" is to produce HTML that
looks like this:
```
<pre class="<!---c-->"><code> .. </code></pre>
```
We might be able to create a complex set of classes for each markdown
code language (there won't be very many) in `ioccc.css`, or we might
find a more general CSS (or maybe `pandoc(1)`?) solution.
For now, this hack-a-round will have to do.
This commit is contained in:
1 parent
3919df50fb
commit
b66c79254a
700 files changed
+7052
-7056
No files matched your search
+7
-7
@@ -1,20 +1,20 @@
|
||||
## To build:
|
||||
|
||||
```sh
|
||||
```<!---<!---sh-->-->
|
||||
make
|
||||
```
|
||||
|
||||
|
||||
## To use:
|
||||
|
||||
```sh
|
||||
```<!---<!---sh-->-->
|
||||
./prog [PIN] < input.txt > output.c
|
||||
```
|
||||
|
||||
|
||||
## Try:
|
||||
|
||||
```sh
|
||||
```<!---<!---sh-->-->
|
||||
./try.sh
|
||||
```
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
The author provided the file [cppp.cc](cppp.cc) which can preprocess the
|
||||
generated output to make them more acceptable to typical compilers. To build:
|
||||
|
||||
```sh
|
||||
```<!---<!---sh-->-->
|
||||
make cppp
|
||||
```
|
||||
|
||||
@@ -44,7 +44,7 @@ spoiler](spoiler.html) that shows how this entry was written.
|
||||
|
||||
### Synopsis
|
||||
|
||||
```sh
|
||||
```<!---<!---sh-->-->
|
||||
echo "Hello world" | ./prog 12345 > encoded.c
|
||||
|
||||
gcc -DPIN=12345 encoded.c -o ./decoded && ./decoded
|
||||
@@ -63,14 +63,14 @@ Mile is a C code generator. Run without arguments for the help message below:
|
||||
When run with an encoding PIN (first command line argument), Mile will
|
||||
read bytes from `stdin` and generate C code on `stdout`. Example:
|
||||
|
||||
```sh
|
||||
```<!---<!---sh-->-->
|
||||
echo "Hello, world!" | ./prog 56789 > encoded.c
|
||||
```
|
||||
|
||||
This generated code will reproduce the same input bytes on `stdout` when
|
||||
executed, if it was compiled with the same encoding PIN.
|
||||
|
||||
```sh
|
||||
```<!---<!---sh-->-->
|
||||
gcc -DPIN=56789 encoded.c -o decoded
|
||||
```
|
||||
|
||||
|
||||
@@ -141,14 +141,14 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
|
||||
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
|
||||
|
||||
<h2 id="to-build">To build:</h2>
|
||||
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
|
||||
<pre class="<!---<!---sh-->-->"><code> make</code></pre>
|
||||
<h2 id="to-use">To use:</h2>
|
||||
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./prog</span> <span class="pp">[</span><span class="ss">PIN</span><span class="pp">]</span> <span class="op"><</span> input.txt <span class="op">></span> output.c</span></code></pre></div>
|
||||
<pre class="<!---<!---sh-->-->"><code> ./prog [PIN] < input.txt > output.c</code></pre>
|
||||
<h2 id="try">Try:</h2>
|
||||
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./try.sh</span></span></code></pre></div>
|
||||
<pre class="<!---<!---sh-->-->"><code> ./try.sh</code></pre>
|
||||
<p>The author provided the file <a href="cppp.cc">cppp.cc</a> which can preprocess the
|
||||
generated output to make them more acceptable to typical compilers. To build:</p>
|
||||
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> cppp</span></code></pre></div>
|
||||
<pre class="<!---<!---sh-->-->"><code> make cppp</code></pre>
|
||||
<p>See the author’s remarks for more details.</p>
|
||||
<h2 id="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>You might think of this entry as code obfuscater with a code.
|
||||
@@ -159,9 +159,9 @@ What is compiling this entry about?
|
||||
spoiler</a> that shows how this entry was written.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<h3 id="synopsis">Synopsis</h3>
|
||||
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="bu">echo</span> <span class="st">"Hello world"</span> <span class="kw">|</span> <span class="ex">./prog</span> 12345 <span class="op">></span> encoded.c</span>
|
||||
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a></span>
|
||||
<span id="cb5-3"><a href="#cb5-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">gcc</span> <span class="at">-DPIN</span><span class="op">=</span>12345 encoded.c <span class="at">-o</span> ./decoded <span class="kw">&&</span> <span class="ex">./decoded</span></span></code></pre></div>
|
||||
<pre class="<!---<!---sh-->-->"><code> echo "Hello world" | ./prog 12345 > encoded.c
|
||||
|
||||
gcc -DPIN=12345 encoded.c -o ./decoded && ./decoded</code></pre>
|
||||
<h3 id="details">Details</h3>
|
||||
<p>Mile is a C code generator. Run without arguments for the help message below:</p>
|
||||
<pre><code> usage: [PIN] < input.txt > output.c
|
||||
@@ -169,10 +169,10 @@ spoiler</a> that shows how this entry was written.</p>
|
||||
where [PIN] is an integer in the range of 1..65535</code></pre>
|
||||
<p>When run with an encoding PIN (first command line argument), Mile will
|
||||
read bytes from <code>stdin</code> and generate C code on <code>stdout</code>. Example:</p>
|
||||
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a> <span class="bu">echo</span> <span class="st">"Hello, world!"</span> <span class="kw">|</span> <span class="ex">./prog</span> 56789 <span class="op">></span> encoded.c</span></code></pre></div>
|
||||
<pre class="<!---<!---sh-->-->"><code> echo "Hello, world!" | ./prog 56789 > encoded.c</code></pre>
|
||||
<p>This generated code will reproduce the same input bytes on <code>stdout</code> when
|
||||
executed, if it was compiled with the same encoding PIN.</p>
|
||||
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">gcc</span> <span class="at">-DPIN</span><span class="op">=</span>56789 encoded.c <span class="at">-o</span> decoded</span></code></pre></div>
|
||||
<pre class="<!---<!---sh-->-->"><code> gcc -DPIN=56789 encoded.c -o decoded</code></pre>
|
||||
<p>The generated code reconstructs all data at compile time by seeding a
|
||||
random number generator with the given PIN to reproduce the input bytes,
|
||||
and simply does one <code>fwrite(3)</code> call at run time to print those bytes. Not
|
||||
|
||||
Reference in new issue
Block a user