Added `make markdown` to the top level `Makefile` to just build the `markdown.html` file. Sorted make rules that build individual HTML files. Performed `make gen_top_html` to accomplish the above and to test under macOS.
819 lines
34 KiB
HTML
819 lines
34 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||
<!-- START: two lines up starts content from: inc/top.default.html -->
|
||
|
||
<!-- END: this line ends content from: inc/top.default.html -->
|
||
<!-- START: this line starts content from: inc/head.default.html -->
|
||
|
||
<head>
|
||
<link rel="stylesheet" href="./ioccc.css">
|
||
<link href="https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap" rel="stylesheet">
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
|
||
<title>The International Obfuscated C Code Contest</title>
|
||
<link rel="icon" type="image/x-icon" href="./favicon.ico">
|
||
<meta name="description" content="IOCCC markdown guidelines">
|
||
<meta name="keywords" content="IOCCC, markdown">
|
||
</head>
|
||
|
||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
|
||
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
|
||
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
|
||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||
|
||
<!-- END: this line ends content from: inc/head.default.html -->
|
||
|
||
<!-- -->
|
||
<!-- This web page was formed via the tool: bin/gen-top-html.sh -->
|
||
<!-- The content of main section of this web page came from: markdown.md -->
|
||
<!-- -->
|
||
|
||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||
<!-- !!! Do not modify this web page, instead modify the file: markdown.md !!! -->
|
||
<!-- !!! Do not modify this web page, instead modify the file: markdown.md !!! -->
|
||
<!-- !!! Do not modify this web page, instead modify the file: markdown.md !!! -->
|
||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||
|
||
<!-- Markdown content was converted into HTML via the tool: bin/md2html.sh -->
|
||
|
||
<!-- START: this line starts content from: inc/body.default.html -->
|
||
|
||
<body>
|
||
|
||
<!-- END: this line ends content from: inc/body.default.html -->
|
||
<!-- START: this line starts content from: inc/topbar.default.html -->
|
||
|
||
<div class="theader">
|
||
<nav class="topbar">
|
||
<div class="container">
|
||
<div class="logo">
|
||
<a href="./index.html" class="logo-link">
|
||
IOCCC
|
||
</a>
|
||
</div>
|
||
|
||
<div class="topbar-items">
|
||
<div class="item">
|
||
<span class="item-header">
|
||
Entries
|
||
</span>
|
||
|
||
<div class="sub-item">
|
||
<div class="outfit-font">
|
||
<a href="./years.html" class="sub-item-link">
|
||
Winning Entries
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./authors.html" class="sub-item-link">
|
||
Winning Authors
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./location.html" class="sub-item-link">
|
||
Location of winning authors
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./bugs.html" class="sub-item-link">
|
||
Bugs and (mis)features
|
||
</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="item">
|
||
<span class="item-header">
|
||
Status
|
||
</span>
|
||
|
||
<div class="sub-item">
|
||
<div class="outfit-font">
|
||
<a href="./news.html" class="sub-item-link">
|
||
IOCCC News
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./status.html" class="sub-item-link">
|
||
Contest status
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./next/index.html" class="sub-item-link">
|
||
Rules and Guidelines
|
||
</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="item">
|
||
<span class="item-header">
|
||
FAQ
|
||
</span>
|
||
|
||
<div class="sub-item">
|
||
<div class="outfit-font">
|
||
<a href="./faq.html" class="sub-item-link">
|
||
FAQ
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./faq.html#submit" class="sub-item-link">
|
||
How to enter the IOCCC
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./faq.html#fix_an_entry" class="sub-item-link">
|
||
Fixing IOCCC entries
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./faq.html#fix_web_site" class="sub-item-link">
|
||
Fixing the website
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./faq.html#fix_author" class="sub-item-link">
|
||
Updating author info
|
||
</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="item">
|
||
<span class="item-header">
|
||
About
|
||
</span>
|
||
|
||
<div class="sub-item">
|
||
<div class="outfit-font">
|
||
<a href="./index.html" class="sub-item-link">
|
||
IOCCC Home
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./judges.html" class="sub-item-link">
|
||
The IOCCC Judges
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./contact.html" class="sub-item-link">
|
||
Contacting the IOCCC
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./SECURITY.html" class="sub-item-link">
|
||
IOCCC Security Policy
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./thanks-for-help.html" class="sub-item-link">
|
||
Thanks for the help
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="./markdown.html" class="sub-item-link">
|
||
IOCCC markdown guidelines
|
||
</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
|
||
<div class="header-mobile-menu">
|
||
<noscript>
|
||
<a href="./nojs-menu.html" class="topbar-js-label">
|
||
Please Enable JavaScript
|
||
</a>
|
||
</noscript>
|
||
|
||
<button id="header-open-menu-button" class="topbar-mobile-menu">
|
||
<img
|
||
src="./png/hamburger-icon-open.png"
|
||
alt="hamburger style menu icon - open state"
|
||
width=48
|
||
height=48>
|
||
</button>
|
||
|
||
<button id="header-close-menu-button" class="hide-content">
|
||
<img
|
||
src="./png/hamburger-icon-closed.png"
|
||
alt="hamburger style menu icon - closed state"
|
||
width=48
|
||
height=48>
|
||
</button>
|
||
|
||
<div id="mobile-menu-panel" class="hide-content">
|
||
<div class="mobile-menu-container">
|
||
|
||
<div class="mobile-menu-wrapper">
|
||
<div class="mobile-menu-item">
|
||
Entries
|
||
</div>
|
||
<div class="mobile-submenu-wrapper">
|
||
|
||
<a class="mobile-submenu-item" href="./years.html">
|
||
Winning Entries
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./authors.html">
|
||
Authors of winning IOCCC entries
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./location.html">
|
||
Location of authors
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./bugs.html">
|
||
Bugs and (mis)features
|
||
</a>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="mobile-menu-wrapper">
|
||
|
||
<div class="mobile-menu-item">
|
||
Status
|
||
</div>
|
||
<div class="mobile-submenu-wrapper">
|
||
|
||
<a class="mobile-submenu-item" href="./status.html">
|
||
Contest status
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./next/index.html">
|
||
Rules and Guidelines
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./news.html">
|
||
IOCCC News
|
||
</a>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="mobile-menu-wrapper">
|
||
<div class="mobile-menu-item">
|
||
FAQ
|
||
</div>
|
||
<div class="mobile-submenu-wrapper">
|
||
|
||
<a class="mobile-submenu-item" href="./faq.html">
|
||
Frequently Asked Questions
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./faq.html#submit">
|
||
How to enter the IOCCC
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./faq.html#fix_an_entry">
|
||
Fixing IOCCC entries
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./faq.html#fix_web_site">
|
||
Fixing the website
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./faq.html#fix_author">
|
||
Fixing author info
|
||
</a>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="mobile-menu-wrapper">
|
||
<div class="mobile-menu-item">
|
||
About
|
||
</div>
|
||
<div class="mobile-submenu-wrapper">
|
||
|
||
<a class="mobile-submenu-item" href="./index.html">
|
||
IOCCC Home
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./judges.html">
|
||
The IOCCC Judges
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./contact.html">
|
||
Contacting the IOCCC
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="./thanks-for-help.html">
|
||
Thanks for the help
|
||
</a>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<script>
|
||
var headerOpenMenuButton = document.getElementById("header-open-menu-button");
|
||
var headerCloseMenuButton = document.getElementById("header-close-menu-button");
|
||
var mobileMenuPanel = document.getElementById("mobile-menu-panel");
|
||
|
||
headerOpenMenuButton.addEventListener("click", () => {
|
||
headerOpenMenuButton.classList.remove("topbar-mobile-menu");
|
||
headerOpenMenuButton.classList.add("hide-content");
|
||
|
||
headerCloseMenuButton.classList.remove("hide-content");
|
||
headerCloseMenuButton.classList.add("topbar-mobile-menu");
|
||
|
||
mobileMenuPanel.classList.remove("hide-content");
|
||
mobileMenuPanel.classList.add("topbar-mobile-panel");
|
||
});
|
||
|
||
headerCloseMenuButton.addEventListener("click", () => {
|
||
headerCloseMenuButton.classList.remove("topbar-mobile-menu");
|
||
headerCloseMenuButton.classList.add("hide-content");
|
||
|
||
mobileMenuPanel.classList.add("hide-content");
|
||
mobileMenuPanel.classList.remove("topbar-mobile-panel");
|
||
|
||
headerOpenMenuButton.classList.add("topbar-mobile-menu");
|
||
headerOpenMenuButton.classList.remove("hide-content");
|
||
});
|
||
</script>
|
||
|
||
<!-- END: this line ends content from: inc/topbar.default.html -->
|
||
<!-- START: this line starts content from: inc/header.default.html -->
|
||
|
||
<div class="header">
|
||
<a href="./2011/zucker/index.html">
|
||
<img src="./png/ioccc.png"
|
||
alt="IOCCC image by Matt Zucker"
|
||
width=300
|
||
height=110>
|
||
</a>
|
||
<h1>The International Obfuscated C Code Contest</h1>
|
||
<h2>IOCCC markdown guidelines</h2>
|
||
</div>
|
||
|
||
<!-- END: this line ends content from: inc/header.default.html -->
|
||
<!-- START: this line starts content from: inc/navbar.empty.html -->
|
||
|
||
<div class="navbar">
|
||
<a class="Right" href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2Fmarkdown.html">✓</a>
|
||
</div>
|
||
|
||
<!-- END: this line ends content from: inc/navbar.empty.html -->
|
||
<!-- START: this line starts content from: inc/before-content.default.html -->
|
||
|
||
<div class="content" id="content">
|
||
|
||
<!-- END: this line ends content from: inc/before-content.default.html -->
|
||
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
|
||
|
||
<!-- BEFORE: 1st line of markdown file: markdown.md -->
|
||
<div id="guidelines">
|
||
<h1 id="ioccc-markdown-guidelines">IOCCC markdown guidelines</h1>
|
||
</div>
|
||
<p>The IOCCC makes extensive use of <a href="https://daringfireball.net/projects/markdown/">markdown</a>.
|
||
For example, when submitting to the IOCCC
|
||
we have people
|
||
submit remarks about their entry in markdown format. Every
|
||
<a href="years.html">winning IOCCC entry</a> uses a <code>README.md</code> markdown file
|
||
as the basis for forming the <code>index.html</code> web page for that entry.
|
||
All generated HTML pages on the <a href="https://www.ioccc.org/index.html">Official IOCCC website</a>
|
||
start with some markdown content.</p>
|
||
<p>See the <a href="https://www.markdownguide.org/basic-syntax">markdown syntax</a> guide.
|
||
See also the <a href="https://spec.commonmark.org/current/">CommonMark Spec</a>.
|
||
See the
|
||
FAQ on “<a href="faq.html#submit">how to submit</a>”.</p>
|
||
<p>Nevertheless, the IOCCC does have certain practices that we ask authors to follow.
|
||
Some of these relate to use of markdown directly and others relate to injecting HTML
|
||
into the markdown file.</p>
|
||
<p>In particular there are things we ask people to please <strong>NOT</strong> use in
|
||
markdown files for the IOCCC:</p>
|
||
<div id="name">
|
||
<div id="anchor-name">
|
||
<h2 id="please-do-not-use-the-name-attributes-in-html-a...a-hyperlink-elements">Please do NOT use the <code>name</code> attributes in HTML <code><a>...</a></code> hyperlink elements</h2>
|
||
</div>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> use the HTML construct:</p>
|
||
<pre><code> <a name="string">...</a> <=== no thank you</code></pre>
|
||
<p>as those are <strong>NOT</strong> part of the HTML 5 standard.</p>
|
||
<p>Instead use:</p>
|
||
<pre><code> <div id="string">...</div></code></pre>
|
||
<p>where the <code>...</code> is the HTML you want to “name”. The <code><div></code>
|
||
encapsulates the HTML you want to name: i.e., the target of some
|
||
<code><a href="#string"></code> or some other <code><a href="URL#string"></code>
|
||
for the given page URL.</p>
|
||
<h3 id="important-point">IMPORTANT POINT:</h3>
|
||
<p>There are certain markdown constructs that <strong>CANNOT</strong> have an <strong>internal</strong> <code><div id="string">...</div></code> element.</p>
|
||
<p>An example is headings (lines that start with a <code>#</code>). For example:</p>
|
||
<pre><code> # <div id="string">THIS WILL NOT WORK!</div> <=== this will not work</code></pre>
|
||
<p>For things like headings, you have to surround them with the <code><div id="string">...</div></code> element, as in:</p>
|
||
<pre><code> <div id="string">
|
||
# This will work
|
||
</div></code></pre>
|
||
<p>While some browsers will still recognize the HTML construct <code><a name="string">...</a></code>, it is possible <strong>they MIGHT NOT</strong> in the future.</p>
|
||
<div id="links">
|
||
<h2 id="if-you-can-it-is-preferable-to-use-markdown-links-rather-than-a...a">If you can, it is PREFERABLE to use markdown links rather than <code><a>...</a></code></h2>
|
||
</div>
|
||
<p>It is easier and preferred to use markdown links rather than HTML <code><a>..</a></code>
|
||
anchors.</p>
|
||
<p>Instead of:</p>
|
||
<pre><code> Use of <a href="#links>HTML anchors</a>
|
||
is one option, however ...</code></pre>
|
||
<pre><code> [markdown links](#links) are easier and preferred</code></pre>
|
||
<div id="strike">
|
||
<div id="del">
|
||
<h2 id="please-do-not-use-the-strike-or-the-s-html-element">Please do NOT use the <code><strike></code> or the <code><s></code> HTML element</h2>
|
||
</div>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> use the obsolete <code><strike></code> or the obsolete <code><s></code>
|
||
(<del><strong>strikeout</strong></del>) HTML elements:</p>
|
||
<pre><code> <strike>...</strike> <=== no thank you
|
||
<s>...</s> <=== no thank you</code></pre>
|
||
<p>Use instead:</p>
|
||
<pre><code> <del>...</del></code></pre>
|
||
<div id="underline">
|
||
<div id="ins">
|
||
<h2 id="please-do-not-use-the-u-html-element">Please do NOT use the <code><u></code> HTML element</h2>
|
||
</div>
|
||
</div>
|
||
<p>Please <strong>NOT</strong> use the obsolete <code><u></code> (<ins><em>underline</em></ins>) HTML element:</p>
|
||
<pre><code> <u>...</u> <=== no thank you</code></pre>
|
||
<p>Use instead:</p>
|
||
<pre><code> <ins>...</ins></code></pre>
|
||
<div id="tt">
|
||
<div id="span">
|
||
<h2 id="please-do-not-use-the-tt-html-element">Please do NOT use the <code><tt></code> HTML element</h2>
|
||
</div>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> use the obsolete <code><tt></code>
|
||
(<span style="font-family: monospace;"><strong>teletype</strong></span>) HTML element:</p>
|
||
<pre><code> <tt>The tt element is obsolete</tt> <=== no thank you</code></pre>
|
||
<p>Instead use either a monospaced <code><span></code> or an inline markdown code block:</p>
|
||
<pre><code> <span style="font-family: monospace;">Use of a monospaced font
|
||
is one option,
|
||
however ... </span></code></pre>
|
||
<p>We recommend using the inline markdown code block method instead:</p>
|
||
<pre><code> Using the `inline markdown code block` is easier and is **preferred**.</code></pre>
|
||
<div id="unindented">
|
||
<div id="indented">
|
||
<h2 id="please-do-not-use-unindented-code-blocks">Please do NOT use unindented code blocks</h2>
|
||
</div>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> start code blocks at the first column.</p>
|
||
<p>For example:</p>
|
||
<pre class="<!---markdown-->"><code>``` <!---sh-->
|
||
echo "This code block is NOT indented" <=== no thank you
|
||
```</code></pre>
|
||
<p>We request that you indent the code block by multiples of 4 ASCII <strong>SPACES</strong>:</p>
|
||
<pre class="<!---markdown-->"><code>``` <!---sh-->
|
||
echo "This code block is indented by mutiples of 4 spaces"
|
||
|
||
# The top level starts with a 4 ASCII space indent.
|
||
#
|
||
# Only indent with multiples of 4 ASCII spaces.
|
||
# 2nd level indent needs 8 ASCII spaces (no tabs).
|
||
# 3rd level indent needs 12 ASCII spaces (no tabs).
|
||
# etc.
|
||
```</code></pre>
|
||
<p>Moreover:</p>
|
||
<pre class="<!---markdown-->"><code>```
|
||
The same thing applies to any markdown block surrounded by ``` lines.
|
||
```</code></pre>
|
||
<p>Please do <strong>NOT</strong> indent using ASCII tab characters in markdown files.</p>
|
||
<div id="tabs">
|
||
<div id="spaces">
|
||
<h2 id="please-do-not-use-ascii-tabs-in-markdown-files">Please do NOT use ASCII tabs in markdown files</h2>
|
||
</div>
|
||
</div>
|
||
<p>While we have nothing against the ASCII tab character in general,
|
||
we have discovered that ASCII tab characters create problems when
|
||
used as part of the leading whitespace within a markdown file.</p>
|
||
<p>If you need to indent 2 or more levels, use multiples of 4 ASCII
|
||
<strong>SPACES</strong>. Please do <strong>NOT</strong> indent with ASCII tabs, <strong>OR</strong> use any
|
||
ASCII tab characters anywhere inside a markdown file:</p>
|
||
<p>For example:</p>
|
||
<pre class="<!---markdown-->"><code>```
|
||
Please do **NOT** use ASCII tabs in markdown files. <=== no thank you
|
||
Please do **NOT** indent markdown with ASCII tabs. <=== no thank you
|
||
|
||
We don't mind tabs in general, <=== no thank you
|
||
We just ask that you NOT use them in markdown files.
|
||
```</code></pre>
|
||
<p>And to clarify, we are only talking about markdown files,
|
||
not C code or any other non-markdown content:</p>
|
||
<pre class="<!---c-->"><code> printf("It is fine to use tabs in Obfuscated C code.\n");
|
||
/* if you wish */
|
||
|
||
// We ask that you to NOT use ASCII tab characters in your remarks.md writeup,
|
||
// or in any other markdown files within your entry, please.</code></pre>
|
||
<p><strong>NOTE</strong>: Again, you are <strong>perfectly welcome</strong> to use ASCII tab characters in
|
||
your C code and other non-markdown files. We simply ask that you <strong>NOT</strong> use any
|
||
ASCII tab characters in markdown files.</p>
|
||
<div id="vim-tabs">
|
||
<h3 id="tip-for-vim-users">Tip for <code>vim</code> users</h3>
|
||
</div>
|
||
<p>If you use <code>vim</code> you can put in your <code>.vimrc</code> file (usually <code>~/.vimrc</code>) the
|
||
following settings to make sure the tabs are not put in without you noticing:</p>
|
||
<pre><code> set tabstop=8 " a tab is 8 spaces (or whatever you wish it to be set to)
|
||
set softtabstop=4 " ...but when inserting/backspacing use 4 spaces
|
||
set shiftwidth=4 " ...and auto-indent 4 spaces (when autoindent is set)
|
||
set expandtab " ...but don't expand tab to spaces.</code></pre>
|
||
<p>If you have file type detection enabled you can, if you prefer, have these
|
||
settings set just for markdown files:</p>
|
||
<pre><code> autocmd! Filetype markdown setlocal set tabstop=8 softtabstop=4 shiftwidth=4 expandtab</code></pre>
|
||
<p>or so.</p>
|
||
<p>This will prevent the tab key from inserting tabs; rather it will insert 4
|
||
spaces.</p>
|
||
<p>To <strong>VERIFY</strong> that there are no tabs in a file you may do, in command mode:</p>
|
||
<pre><code> /\t</code></pre>
|
||
<p>If you’re in insert mode hit <code>ESC</code> first.</p>
|
||
<div id="languages">
|
||
<div id="code">
|
||
<h2 id="please-do-not-directly-specify-a-language-for-a-code-block">Please do NOT <em>directly</em> specify a language for a code block</h2>
|
||
</div>
|
||
</div>
|
||
<p>We request that <a href="https://www.markdownguide.org/extended-syntax/#fenced-code-blocks">fenced markdown code
|
||
blocks</a>
|
||
<strong>NOT</strong> specify a language directly.</p>
|
||
<p>For example:</p>
|
||
<pre class="<!---markdown-->"><code>```c <=== no thank you
|
||
int main(void) {return 0;}
|
||
```</code></pre>
|
||
<p>Instead, put the language inside an HTML comment, separated from the
|
||
markdown code block starting fence by a space:</p>
|
||
<pre class="<!---markdown-->"><code>``` <!---c-->
|
||
int main(void) {return 0;}
|
||
```</code></pre>
|
||
<p><strong>IMPORTANT</strong>: The <strong>initial</strong> <strong>` ` `</strong> must be followed by an <strong>ASCII SPACE</strong>,
|
||
and <strong>THEN</strong> an <strong>opening</strong> <strong><code><!---</code></strong> (a “<code><</code>”, a “<code>!</code>” and then three “<code>-</code>”s), and
|
||
<strong>THEN</strong> the <strong>language</strong> and <strong>FINALLY</strong> a <strong>closing</strong> “<code>--></code>” (two “<code>-</code>”s
|
||
followed by a “<code>></code>”).</p>
|
||
<div id="slash">
|
||
<div id="void">
|
||
<h2 id="please-do-not-add-trailing-slash-to-void-html-elements">Please do NOT add trailing slash to void HTML elements</h2>
|
||
</div>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> use a trailing slash on <a href="https://github.com/validator/validator/wiki/Markup-»-Void-elements">void HTML
|
||
elements</a>.</p>
|
||
<p>See also this note on <a href="https://github.com/validator/validator/wiki/Markup-»-Void-elements#trailing-slashes-in-void-element-start-tags-do-NOT-mark-the-start-tags-as-self-closing">trailing slashes in void-element start
|
||
tags</a>.</p>
|
||
<p>The trailing slash on void HTML elements has no effect and interacts badly with
|
||
unquoted attribute values.</p>
|
||
<p>For example, please do <strong>NOT</strong> use:</p>
|
||
<pre><code> <br/> <=== no thank you</code></pre>
|
||
<p>Instead use just:</p>
|
||
<pre><code> <br></code></pre>
|
||
<p>And for example, please do <strong>NOT</strong> use:</p>
|
||
<pre><code> <hr/> <=== no thank you</code></pre>
|
||
<p>Instead use just:</p>
|
||
<pre><code> <br></code></pre>
|
||
<p>and</p>
|
||
<pre><code> <hr></code></pre>
|
||
<p>And for example, please do <strong>NOT</strong> use:</p>
|
||
<pre><code> <img src="1984-anonymous-tattoo.jpg"
|
||
alt="image of a tattoo of the 1984 anonymous C code"
|
||
width=600 height=401 /> <=== no thank you</code></pre>
|
||
<p>Instead use just:</p>
|
||
<pre><code> <img src="1984-anonymous-tattoo.jpg"
|
||
alt="image of a tattoo of the 1984 anonymous C code"
|
||
width=600 height=401></code></pre>
|
||
<p>etc.</p>
|
||
<div id="backslash">
|
||
<div id="br">
|
||
<h2 id="please-do-not-use-a-trailing-backslash-outside-of-a-code-block">Please do NOT use a TRAILING backslash (<code>\</code>) outside of a code block</h2>
|
||
</div>
|
||
</div>
|
||
<p>Unless the line is inside a markdown code block, please do <strong>NOT</strong>
|
||
end a markdown line with a trailing backslash (<code>\</code>). Instead use
|
||
a trailing <code><br></code>.</p>
|
||
<p>Instead of:</p>
|
||
<pre><code> In markdown,\ <=== no thank you
|
||
do NOT use trailing\
|
||
backslashes outside of\
|
||
a code block</code></pre>
|
||
<p>use:</p>
|
||
<pre><code> In markdown,<br>
|
||
use trailing<br>
|
||
br's outside of<br>
|
||
a code block</code></pre>
|
||
<p>Again, use of a trailing backslash (<code>\</code>) inside a markdown <a href="https://www.markdownguide.org/extended-syntax/#fenced-code-blocks"><strong>fenced code
|
||
block</strong></a> is fine:</p>
|
||
<pre class="<!---markdown-->"><code>```
|
||
This is OK\
|
||
inside a\
|
||
markdown code\
|
||
block
|
||
```</code></pre>
|
||
<p>This will prevent <code>pandoc(1)</code> from generating deprecated HTML elements such as
|
||
<code><br /></code>.</p>
|
||
<div id="images">
|
||
<div id="img">
|
||
<h2 id="please-do-not-use-markdown-style-images">Please do NOT use markdown style images</h2>
|
||
</div>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> use the markdown embedded image element.</p>
|
||
<p>Instead of using this markdown element to embed an image:</p>
|
||
<pre><code>  <=== no thank you</code></pre>
|
||
<p>Use an <code><img></code> HTML element with <code>alt=</code>, <code>width=</code> and <code>length=</code>
|
||
attributes:</p>
|
||
<pre><code> <img src="filename.png"
|
||
alt="describe the filename.png image for someone who cannot view it"
|
||
width=PIXEL_WIDTH height=PIXEL_HEIGHT></code></pre>
|
||
<p>For example, instead of:</p>
|
||
<pre><code>  <=== no thank you</code></pre>
|
||
<p>use this HTML:</p>
|
||
<pre><code> <img src="1984-anonymous-tattoo.jpg"
|
||
alt="image of a tattoo of the 1984 anonymous C code"
|
||
width=600 height=401></code></pre>
|
||
<p>The problem goes beyond the fact that <code>pandoc(1)</code> generates problematic
|
||
HTML from the markdown image construct, the resulting HTML does <strong>NOT</strong>
|
||
have <code>width</code> and <code>height</code> information so browsers have to slow down
|
||
on rendering text around the image until it can internally determine
|
||
the image size.</p>
|
||
<div id="hr">
|
||
<div id="horizontal">
|
||
<div id="lines">
|
||
<h2 id="please-do-not-use-markdown-style-horizontal-lines">Please do NOT use markdown style horizontal lines</h2>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> use <code>---</code> style lines in markdown to create horizontal
|
||
lines or to separate sections.</p>
|
||
<p>Unless something is inside a markdown <strong>code block</strong>, do <strong>NOT</strong> start a
|
||
line with 3 or more dashes (“<code>-</code>”s).</p>
|
||
<p>Such markdown causes <code>pandoc(1)</code> to generate <code><hr /></code>. The <code><hr /></code> has no
|
||
effect in standard HTML 5 and interacts badly with unquoted attribute values.</p>
|
||
<p>If a horizontal line is really needed, use:</p>
|
||
<pre><code> <hr></code></pre>
|
||
<p>If a short line is needed, use:</p>
|
||
<pre><code> <hr style="width:10%;text-align:left;margin-left:0"></code></pre>
|
||
<div id="closing-parentheses">
|
||
<h2 id="please-do-not-end-markdown-links-with">Please do NOT end markdown links with “<code>))</code>”</h2>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> end a markdown links with a double closed parenthesis “<code>))</code>”.</p>
|
||
<p>Markdown links that end in “<code>))</code>” complicate parsing and sometimes lead
|
||
to incorrect URLs or file paths.</p>
|
||
<p>Instead of:</p>
|
||
<pre><code> [some text](https://example.com/foo_(bar)) <=== no thank you</code></pre>
|
||
<p>use:</p>
|
||
<pre><code> [some text](https://example.com/foo_&#x28;bar&#x29;)</code></pre>
|
||
<p>As another example, instead of:</p>
|
||
<pre><code> This thing, ([some text](some/path)), is NOT ideal. <=== no thank you</code></pre>
|
||
<p>use:</p>
|
||
<pre><code> This thing, [some text](some/path), is better.</code></pre>
|
||
<div id="parentheses">
|
||
<h2 id="please-do-not-put-a-literal-or-in-markdown-link-titles">Please do NOT put a LITERAL “<code>(</code>” or “<code>)</code>” in markdown link titles</h2>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> use literal parentheses inside markdown link titles.</p>
|
||
<p>Instead of:</p>
|
||
<pre><code> [some (text)](https://example.com/cyrds) <=== no thank you</code></pre>
|
||
<p>use:</p>
|
||
<pre><code> [some &#x28;text&#x29;](https://example.com/cyrds)</code></pre>
|
||
<p>Instead of:</p>
|
||
<pre><code> [ls(1)](https://example.com/ls-man-page.1) <=== no thank you</code></pre>
|
||
<p>use:</p>
|
||
<pre><code> [ls&#x28;1&#x29;](https://example.com/ls-man-page.1)</code></pre>
|
||
<div id="code-text">
|
||
<div id="code-and-text">
|
||
<div id="text">
|
||
<h2 id="please-do-not-place-text-on-the-immediate-very-next-line-after-a-markdown-code-block">Please do NOT place text on the IMMEDIATE (very next) line after a markdown code block</h2>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> place text on the next line after a markdown code block.
|
||
Instead, place a blank line after the end of a markdown code block
|
||
as this makes it easier to detect when markdown code blocks are
|
||
<strong>NOT</strong> properly indented.</p>
|
||
<p>Instead of:</p>
|
||
<pre class="<!---markdown-->"><code>```
|
||
int
|
||
main(int foo)
|
||
{
|
||
return foo;
|
||
}
|
||
```
|
||
C compilers cannot be given a -Wno-main-arg-errors flag. <=== no thank you</code></pre>
|
||
<p>use:</p>
|
||
<pre class="<!---markdown-->"><code>```
|
||
int
|
||
main(int foo)
|
||
{
|
||
return foo;
|
||
}
|
||
```
|
||
|
||
C compilers cannot be given a -Wno-main-arg-errors flag.</code></pre>
|
||
<p><strong>BTW</strong>: Please note the blank line after the code block.</p>
|
||
<div id="italics">
|
||
<h2 id="please-use-_-for-italics-in-markdown">Please use <code>_</code> for italics in markdown</h2>
|
||
</div>
|
||
<p>Please do <strong>NOT</strong> use <code>*</code> (single asterisk) for italics in markdown. Instead use
|
||
an underscore (<code>_</code>). Using an asterisk can complicate parsing and sometimes lead
|
||
to incorrect results. This can especially go for when it is <strong><em>bold and
|
||
italic</em></strong>.</p>
|
||
<p>For example, instead of:</p>
|
||
<pre><code> *this text is italic* <=== no thank you</code></pre>
|
||
<p>use:</p>
|
||
<pre><code> _this text is italic_</code></pre>
|
||
<p>Another example, for <strong><em>bold italic</em></strong>:</p>
|
||
<p>Do <strong>NOT</strong> use:</p>
|
||
<pre><code> ***this text is bold italic*** <=== no thank you</code></pre>
|
||
<p>Instead use:</p>
|
||
<pre><code> **_this text is bold italic_**</code></pre>
|
||
<p>or:</p>
|
||
<pre><code> _**this text is bold italic**_</code></pre>
|
||
<!-- AFTER: last line of markdown file: markdown.md -->
|
||
|
||
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
|
||
<!-- START: this line starts content from: inc/after-content.default.html -->
|
||
|
||
</div>
|
||
|
||
<!-- END: this line ends content from: inc/after-content.default.html -->
|
||
<!-- START: this line starts content from: inc/footer.default.html -->
|
||
|
||
<!--
|
||
|
||
Copyright © 1984-2024 by Landon Curt Noll. All Rights Reserved.
|
||
|
||
You are free to share and adapt this file under the terms of this license:
|
||
|
||
Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
||
|
||
For more information, see:
|
||
|
||
https://creativecommons.org/licenses/by-sa/4.0/
|
||
|
||
-->
|
||
|
||
<div class="footer">
|
||
|
||
<div id="copyright"><h3>Copyright © 1984-2024 by Landon Curt Noll:
|
||
<a href="https://creativecommons.org/faq/#what-does-some-rights-reserved-mean"
|
||
target="_blank"
|
||
rel="license noopener noreferrer">Some Rights Reserved</a></h3>
|
||
<p>
|
||
This work is <b>licensed by Landon Curt Noll</b> under
|
||
<b><a href="https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1"
|
||
target="_blank"
|
||
rel="license noopener noreferrer"
|
||
style="display:inline-block;">CC BY-SA 4.0</a></b>.
|
||
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
|
||
src="./png/cc.png"
|
||
alt="cc inside circle symbol">
|
||
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
|
||
src="./png/by.png"
|
||
alt="person inside circle symbol">
|
||
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
|
||
src="./png/sa.png"
|
||
alt="arrow looping back on itself inside circle symbol"><br>
|
||
You should <b>carefully review</b> the
|
||
<b><a href="https://creativecommons.org/licenses/by-sa/4.0/legalcode.en"
|
||
target="_blank"
|
||
rel="license noopener noreferrer">CC BY-SA 4.0 LEGAL CODE</a></b>
|
||
before using the licensed material.<br>
|
||
You may wish to review the
|
||
<b><a href="./license.html"
|
||
target="_blank"
|
||
rel="license noopener noreferrer">highlights of some of the key features and terms</a></b>
|
||
of <b>CC BY-SA 4.0</b>.<br>
|
||
</p>
|
||
</div>
|
||
|
||
<div id="coda"><h3>Coda</h3>
|
||
<p>
|
||
<a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2Fmarkdown.html" rel="nofollow">Nu HTML check this web page</a><br>
|
||
<a href="#top">Jump to top</a> <a href="#content">Jump to Content</a>
|
||
</p>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<!-- END: this line ends content from: inc/footer.default.html -->
|
||
<!-- START: this line starts content from: inc/bottom.default.html -->
|
||
|
||
</body>
|
||
</html>
|
||
|
||
<!-- END: this line ends content from: inc/bottom.default.html -->
|