ethereality is this website.

### Static generation

### Markdown

### Syntax highlighting

Integration with GNU `source-highlight`

is available for use. If a Markdown
verbatim block (indented with four spaces) begins with `language: XYZ`

, then the remainder of the block will be highlighted with
`source-highlight`

language specification `XYZ`

. This makes it easy to produce
nice code listings, such as:

```
#include <stdio.h>
int main(int argc, char *argv[]) {
printf("%s: Hello, World!\n", argv[0]);
return 0;
}
```

It is also possible to use the same ` language: XYZ`

syntax in
inline (backquoted) Markdown code blocks, allowing things like `sprintf(str, "Test %s\n", ...)`

or ```
flip :: (a -> b -> c) -> b -> a -> c
```

or ```
function(a, b) return a
.. ";" .. b end
```

.

### LaTeX support

There is full support for both inline and non-inline . Inline
is done by putting content between a `<$`

and `$>`

pair; it defaults to
math-mode, so to insert is `<$\text{\LaTeX}$>`

. This makes
writing inline math-mode very natural; for example, one might
write

```
From here, we see that if <$x \geq 0$> then <$\sqrt{x}$> is defined, and
hence that <$x - \sqrt{x}$> is lower than <$x$>, making the algorithm
faster than the one originally proposed.
```

To get:

From here, we see that if then is defined, and hence that is lower than , making the algorithm faster than the one originally proposed.

Non-inline is inserted by putting content between a pair of

tags in the Markdown input. The output is auto-centred.

So, for example, to generate this:

One simply inserts

```
<latex>
\begin{flalign*}
\sum_{k=0}^{10} {100 \choose k} + \sum_{k=90}^{100} {100 \choose k}
&= 2 \times \sum_{k=0}^{10} {100 \choose k} \\
&= 13215687346272
\end{flalign*}
</latex>
```

### gnuplot integration

By enclosing a list of gnuplot commands in

tags, it is possible
to generate figures. For example, we can look at some relationships between
various functions of :

By putting this into the markdown:

```
<plot>
plot [-1:1] x + sqrt(x), x*x, x*x*x - x*x, x*x*x*x - x*x*x*x*x + x with lines;
</plot>
```

Or, more interestingly, a plot of some accumulated data:

### graphviz integration

By enclosing a graphviz description in

tags, it is possible
to have graphs automatically rendered and inserted into the page. For example,
we can insert a Petersen graph: