76886678a6
This prevents the problem with extra space around highlighted code blocks (closes #3996). Note that we no longer put an enclosing div around highlighted code blocks. The pre is the outer element, just as for unhighlighted blocks.
87 lines
4.4 KiB
HTML
87 lines
4.4 KiB
HTML
<!DOCTYPE html>
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="generator" content="pandoc" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
|
|
<title>lhs-test</title>
|
|
<style type="text/css">
|
|
code{white-space: pre-wrap;}
|
|
.smallcaps{font-variant: small-caps;}
|
|
.line-block{white-space: pre-line;}
|
|
.column{display: inline-block;}
|
|
</style>
|
|
<style type="text/css">
|
|
div.sourceLine, a.sourceLine { display: inline-block; min-height: 1.25em; }
|
|
a.sourceLine { pointer-events: none; color: inherit; text-decoration: inherit; }
|
|
.sourceCode { overflow: visible; }
|
|
code.sourceCode { white-space: pre; }
|
|
@media print {
|
|
code.sourceCode { white-space: pre-wrap; }
|
|
div.sourceLine, a.sourceLine { text-indent: -1em; padding-left: 1em; }
|
|
}
|
|
pre.numberSource div.sourceLine, .numberSource a.sourceLine
|
|
{ position: relative; }
|
|
pre.numberSource div.sourceLine::before, .numberSource a.sourceLine::before
|
|
{ content: attr(data-line-number);
|
|
position: absolute; left: -5em; text-align: right; vertical-align: baseline;
|
|
border: none; pointer-events: all;
|
|
-webkit-touch-callout: none; -webkit-user-select: none;
|
|
-khtml-user-select: none; -moz-user-select: none;
|
|
-ms-user-select: none; user-select: none;
|
|
padding: 0 4px; width: 4em; }
|
|
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; color: #aaaaaa; padding-left: 4px; }
|
|
@media screen {
|
|
a.sourceLine::before { text-decoration: underline; color = initial; }
|
|
}
|
|
code span.kw { color: #007020; font-weight: bold; } /* Keyword */
|
|
code span.dt { color: #902000; } /* DataType */
|
|
code span.dv { color: #40a070; } /* DecVal */
|
|
code span.bn { color: #40a070; } /* BaseN */
|
|
code span.fl { color: #40a070; } /* Float */
|
|
code span.ch { color: #4070a0; } /* Char */
|
|
code span.st { color: #4070a0; } /* String */
|
|
code span.co { color: #60a0b0; font-style: italic; } /* Comment */
|
|
code span.ot { color: #007020; } /* Other */
|
|
code span.al { color: #ff0000; font-weight: bold; } /* Alert */
|
|
code span.fu { color: #06287e; } /* Function */
|
|
code span.er { color: #ff0000; font-weight: bold; } /* Error */
|
|
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
|
|
code span.cn { color: #880000; } /* Constant */
|
|
code span.sc { color: #4070a0; } /* SpecialChar */
|
|
code span.vs { color: #4070a0; } /* VerbatimString */
|
|
code span.ss { color: #bb6688; } /* SpecialString */
|
|
code span.im { } /* Import */
|
|
code span.va { color: #19177c; } /* Variable */
|
|
code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
|
|
code span.op { color: #666666; } /* Operator */
|
|
code span.bu { } /* BuiltIn */
|
|
code span.ex { } /* Extension */
|
|
code span.pp { color: #bc7a00; } /* Preprocessor */
|
|
code span.at { color: #7d9029; } /* Attribute */
|
|
code span.do { color: #ba2121; font-style: italic; } /* Documentation */
|
|
code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
|
|
code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
|
|
code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
|
|
</style>
|
|
<!--[if lt IE 9]>
|
|
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
|
|
<![endif]-->
|
|
</head>
|
|
<body>
|
|
<h1 id="lhs-test">lhs test</h1>
|
|
<p><code>unsplit</code> is an arrow that takes a pair of values and combines them to
|
|
return a single value:</p>
|
|
<pre class="sourceCode literate haskell"><code class="sourceCode haskell"><div class="sourceLine" id="1" href="#1" data-line-number="1"><span class="ot">unsplit ::</span> (<span class="dt">Arrow</span> a) <span class="ot">=></span> (b <span class="ot">-></span> c <span class="ot">-></span> d) <span class="ot">-></span> a (b, c) d</div>
|
|
<div class="sourceLine" id="2" href="#2" data-line-number="2">unsplit <span class="fu">=</span> arr <span class="fu">.</span> uncurry</div>
|
|
<div class="sourceLine" id="3" href="#3" data-line-number="3"> <span class="co">-- arr (\op (x,y) -> x `op` y)</span></div></code></pre>
|
|
<p><code>(***)</code> combines two arrows into a new arrow by running the two arrows on a
|
|
pair of values (one arrow on the first item of the pair and one arrow on the
|
|
second item of the pair).</p>
|
|
<pre><code>f *** g = first f >>> second g</code></pre>
|
|
<p>Block quote:</p>
|
|
<blockquote>
|
|
<p>foo bar</p>
|
|
</blockquote>
|
|
</body>
|
|
</html>
|