Maruku notation extends Markdown notation.

Dlaczego nowa notacja?

Meta-data for the document {#meta}

Meta-data for the document itself is specified through the use of email headers:

Title: A simple document
LaTeX preamble: preamble.tex
CSS: main.css syntax.css
Javascript: jquery.js main.js
HTML use syntax: true
LaTeX use listings: true

Content of the document

Meta-data keys are assumed to be case-insensitive.

Przykłady kolorowania kodu

HTML: lang=html

<!DOCTYPE html>
    <title>Szablon dokumentu HTML</title>

Ruby: lang=ruby

def hello
  "hello world"

ANSI C: lang=ansic

int main()
   printf("hello world\n");
   return 0;

SQLite: lang=sqlite

--  jp.sql
drop table if exists studenci;
create table studenci (
  id        integer       primary key autoincrement,
  nazwisko  varchar(128)  not null,
  imię      varchar(128)  not null,
  login     varchar(128)  not null collate nocase,
  indeks    integer       default 0,
  data      datetime,
  uwagi     text          default ''
drop table if exists zaliczenia;
create table zaliczenia (
  id          integer       primary key autoincrement,
  student_id  integer       not null,  -- klucz obcy
  ocena       varchar(128)  default 'unknown' collate nocase,
  kiedy       datetime,
  termin      text          default 'pierwszy'
-- wyzwalacz automatycznie wstawiający datę w polu kiedy
create trigger wstaw_do_zaliczeń_kiedy after insert on zaliczenia
  update zaliczenia set kiedy = datetime('now') where rowid = new.rowid;

CSS 2.1: lang=css21

body {
  width: 600px;
  margin: 1em auto;
  padding: 1em 2em;
  border: black solid 1px;
  background-color: #D6D8FF;
  font: normal 14px/1.6 Arial, Helvetica, sans-serif;

h1 {
  color: #54310E;
} {
  color: #0007CC;
  font-style: italic;
  text-align: right;
  padding-right: 10em;

Javascript: lang=javascript

function doReplace() {
  var str = document.getElementById("search_regex").value;
  var regex = eval("/" + str + "/g");
  var subst = document.getElementById("search_replacement").value;

  //  alert("search=" + str + "\n" + "replacement=" + subst);

function replaceElement(e,r,s) {
  if (e.nodeType == 3) { // TEXT_NODE
    e.nodeValue = e.nodeValue.replace(r,s);
  for (var m=e.firstChild; m!=null; m=m.nextSibling)

$(document).ready(function() {
  $('body').click(function(event) {
    if ($('h3')) {

Examples of Markdown extra syntax {#extra}

*[abrv]: simply an abbreviation