prism/plugins/unescaped-markup/index.html

199 lines
6.5 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="assets/favicon.png" />
<title>Unescaped markup ▲ Prism plugins</title>
<base href="../.." />
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="themes/prism.css" data-noprefix />
<link rel="stylesheet" href="plugins/unescaped-markup/prism-unescaped-markup.css" data-noprefix />
<script src="assets/vendor/prefixfree.min.js"></script>
<script>var _gaq = [['_setAccount', 'UA-33746269-1'], ['_trackPageview']];</script>
<script src="https://www.google-analytics.com/ga.js" async></script>
</head>
<body class="language-markup">
<header data-plugin-header="unescaped-markup"></header>
<section>
<h1>How to use</h1>
<p>This plugin provides several methods of achieving the same thing:</p>
<ul>
<li>
Instead of using <code>&lt;pre>&lt;code></code> elements, use <code>&lt;script type="text/plain"></code>:
<pre><code>&lt;script type="text/plain" class="language-markup">
&lt;p>Example&lt;/p>
&lt;/script></code></pre>
</li>
<li>
Use an HTML-comment to escape your code:
<pre><code>&lt;pre class="language-markup">&lt;code>&lt;!--
&lt;p>Example&lt;/p>
-->&lt;/code>&lt;/pre></code></pre>
This will only work if the <code>code</code> element contains exactly one comment and nothing else (not even spaces).
E.g. <code>&lt;code> &lt;!-- some text -->&lt;/code></code> and <code>&lt;code>text&lt;!-- more text -->&lt;/code></code> will not work.
</li>
</ul>
</section>
<section>
<h1>Examples</h1>
<p>View source to see that the following didnt need escaping (except for <code>&lt;/script></code>, that does):</p>
<script type="text/plain"><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="assets/favicon.png" />
<title>Keep markup Prism plugins</title>
<base href="../.." />
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="themes/prism.css" data-noprefix />
<script src="assets/vendor/prefixfree.min.js">&lt;/script>
</head>
<body class="language-markup">
<header>
<div class="intro" data-src="assets/templates/header-plugins.html" data-type="text/html"></div>
<h2>Unescaped markup</h2>
<p>Write markup without having to escape anything.</p>
</header>
<section>
<h1>How to use</h1>
<p>Instead of using <code>&lt;pre>&lt;code></code> elements, use <code>&lt;script type="text/plain"></code>:</p>
</section>
<section>
<h1>Examples</h1>
<p>With <code>&lt;script type="text/plain"></code>:</p>
<script type="text/plain"><div><span>Foo</span></div>&lt;/script>
</section>
<section>
<h1>FAQ</h1>
<p>Why not use the HTML <code>&lt;template></code> tag?</p>
<p>Because it is a PITA to get its <code>textContent</code> and needs to be pointlessly cloned.
Feel free to implement it yourself and send a pull request though, if you are so inclined.</p>
<p>Can I use this inline?</p>
<p>Not out of the box, because I figured its more of a hassle to type <code>&lt;script type="text/plain"></code> than escape the 1-2 <code>&lt;</code> characters you need to escape in inline code.
Also inline code is not as frequently copy-pasted, which was the major source of annoyance that got me to write this plugin.</p>
</section>
<footer data-src="assets/templates/footer.html" data-type="text/html"></footer>
<script src="prism.js">&lt;/script>
<script src="plugins/unescaped-markup/prism-unescaped-markup.js">&lt;/script>
<script src="assets/vendor/utopia.js">&lt;/script>
<script src="components.js">&lt;/script>
<script src="assets/code.js">&lt;/script>
</body>
</html></script>
<p>The next example uses the HTML-comment method:</p>
<pre><code><!--<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="assets/favicon.png" />
<title>Keep markup ▲ Prism plugins</title>
<base href="../.." />
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="themes/prism.css" data-noprefix />
<script src="assets/vendor/prefixfree.min.js"></script>
</head>
<body class="language-markup">
<header>
<div class="intro" data-src="assets/templates/header-plugins.html" data-type="text/html"></div>
<h2>Unescaped markup</h2>
<p>Write markup without having to escape anything.</p>
</header>
<section>
<h1>How to use</h1>
<p>Instead of using <code>&lt;pre>&lt;code></code> elements, use <code>&lt;script type="text/plain"></code>:</p>
</section>
<section>
<h1>Examples</h1>
<p>With <code>&lt;script type="text/plain"></code>:</p>
<script type="text/plain"><div><span>Foo</span></div></script>
</section>
<section>
<h1>FAQ</h1>
<p>Why not use the HTML <code>&lt;template></code> tag?</p>
<p>Because it is a PITA to get its <code>textContent</code> and needs to be pointlessly cloned.
Feel free to implement it yourself and send a pull request though, if you are so inclined.</p>
<p>Can I use this inline?</p>
<p>Not out of the box, because I figured its more of a hassle to type <code>&lt;script type="text/plain"></code> than escape the 1-2 <code>&lt;</code> characters you need to escape in inline code.
Also inline code is not as frequently copy-pasted, which was the major source of annoyance that got me to write this plugin.</p>
</section>
<footer data-src="assets/templates/footer.html" data-type="text/html"></footer>
<script src="prism.js"></script>
<script src="plugins/unescaped-markup/prism-unescaped-markup.js"></script>
<script src="assets/vendor/utopia.js"></script>
<script src="components.js"></script>
<script src="assets/code.js"></script>
</body>
</html>--></code></pre>
</section>
<section>
<h1>FAQ</h1>
<p>Why not use the HTML <code>&lt;template></code> tag?</p>
<p>Because it is a PITA to get its <code>textContent</code> and needs to be pointlessly cloned.
Feel free to implement it yourself and send a pull request though, if you are so inclined.</p>
<p>Can I use this inline?</p>
<p>Not out of the box, because I figured its more of a hassle to type <code>&lt;script type="text/plain"></code> than escape the 1-2 <code>&lt;</code> characters you need to escape in inline code.
Also inline code is not as frequently copy-pasted, which was the major source of annoyance that got me to write this plugin.</p>
</section>
<footer data-src="assets/templates/footer.html" data-type="text/html"></footer>
<script src="prism.js"></script>
<script src="plugins/unescaped-markup/prism-unescaped-markup.js"></script>
<script src="assets/vendor/utopia.js"></script>
<script src="components.js"></script>
<script src="assets/code.js"></script>
</body>
</html>