Blog

Kitchen sink for my blog.

Published May 15, 2022

Random hero image
Lorem Ipsum has been the industry’s standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.

It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.

Where does it come from?

Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source.

Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of “de Finibus Bonorum et Malorum” (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, “Lorem ipsum dolor sit amet..”, comes from a line in section 1.10.32.

The standard chunk of Lorem Ipsum used since the 1500s is reproduced below for those interested. Sections 1.10.32 and 1.10.33 from “de Finibus Bonorum et Malorum” by Cicero are also reproduced in their exact original form, accompanied by English versions from the 1914 translation by H. Rackham.

Markdown kitchen sink

Text can be bold, italic, or strikethrough.

Link to another page.

There should be whitespace between paragraphs.

There should be whitespace between paragraphs. We recommend including a README, or a file with information about your project.

Header 1

This is a normal paragraph following a header. GitHub is a code hosting platform for version control and collaboration. It lets you and others work together on projects from anywhere.

Header 2

This is a blockquote following a header.

When something is important enough, you do it even if the odds are not in your favor.

Text between blockquotes

This is a blockquote following a header.

When something is important enough, you do it even if the odds are not in your favor.

Header 3

// Javascript code with syntax highlighting.
var fun = function lang(l) {
dateformat.i18n = require('./lang/' + l)
return true;
}
# Ruby code with syntax highlighting
GitHubPages::Dependencies.gems.each do |gem, version|
s.add_dependency(gem, "= #{version}")
end

Header 3

Header 3

  1. This is an ordered list following a header.
  2. This is an ordered list following a header.
  3. This is an ordered list following a header.

Header 3

This is a very long link which wraps and therefore doesn’t overflow even when it comes at the beginning of the line.

Tables

head1head twothree
okgood swedish fishnice
out of stockgood and plentynice
okgood oreoshmm
okgood zoute dropyumm

There’s a horizontal rule below this.


Unordered list

Ordered list:

  1. Item one
  2. Item two
  3. Item three
  4. Item four

Nested list

Nesting an ol in ul in an ol

And a task list

Nesting task lists

Nesting a ul in a task list

Nesting a task list in a ul

Small image

Large image

Photograph by Pawel Czerwinski @ Unsplash.

Definition lists

Name
Godzilla
Born
1952
Birthplace
Japan
Color
Green

Mathematics

You can write mathmath using dollar signs, which gets rendered using KaTeX\KaTeX. 12\frac{1}{2} is a fraction.

L=12ρv2SCLL = \frac{1}{2} \rho v^2 S C_L

This also supports aligned code, matrices, complex environments, etc. through KaTeX\KaTeX. See their list of supported environments for more.

a=b+cd+e=f\begin{align} a&=b+c \\ d+e&=f \end{align} [abcd]\begin{bmatrix} a & b \\ c & d \end{bmatrix} AaBbcC=D\begin{CD} A @>a>> B \\ @VbVV @AAcA \\ C @= D \end{CD}

More code

python-file.py
# This is a long comment that targets the very first function
def dump_args(func):
"This decorator dumps out the arguments passed to a function before calling it"
argnames = func.func_code.co_varnames[:func.func_code.co_argcount]
fname = func.func_name
def echo_func(*args,**kwargs):
print fname, ":", ', '.join(
'%s=%r' % entry
for entry in zip(argnames,args) + kwargs.items())
return func(*args, **kwargs)
return echo_func
@dump_args
def f1(a,b,c):
print a + b + c
f1(1, 2, 3)
def precondition(precondition, use_conditions=DEFAULT_ON):
return conditions(precondition, None, use_conditions)
def postcondition(postcondition, use_conditions=DEFAULT_ON):
return conditions(None, postcondition, use_conditions)
class conditions(object):
__slots__ = ('__precondition', '__postcondition')
def __init__(self, pre, post, use_conditions=DEFAULT_ON):
if not use_conditions:
pre, post = None, None
self.__precondition = pre
self.__postcondition = post
Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this.
Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this.
PowerShell code
Write-Host 'This displays a PowerShell frame with a title'

Mermaid Diagrams

The following code is displayed as a diagram only when a mermaid key supplied in _config.yml.

graph TD;
A-->B;
A-->C;
B-->D;
C-->D;

Collapsed Section

The following uses the <details> tag to create a collapsed section.

Shopping list (click me!)

This is content inside a <details> dropdown.

  • Apples
  • Oranges
  • Milk