ledger_web 1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +10 -0
- data/LICENSE +7 -0
- data/README.md +140 -0
- data/Rakefile +11 -0
- data/bin/ledger_web +14 -0
- data/ledger_web.gemspec +26 -0
- data/lib/ledger_web/app.rb +69 -0
- data/lib/ledger_web/config.rb +87 -0
- data/lib/ledger_web/db/migrate/20111226180900_initial_schema.rb +38 -0
- data/lib/ledger_web/db/migrate/20111231132900_add_views.rb +37 -0
- data/lib/ledger_web/db.rb +54 -0
- data/lib/ledger_web/helpers.rb +62 -0
- data/lib/ledger_web/public/bootstrap-dropdown.js +55 -0
- data/lib/ledger_web/public/bootstrap.min.css +356 -0
- data/lib/ledger_web/public/codemirror/keymap/emacs.js +29 -0
- data/lib/ledger_web/public/codemirror/keymap/vim.js +76 -0
- data/lib/ledger_web/public/codemirror/lib/codemirror.css +104 -0
- data/lib/ledger_web/public/codemirror/lib/codemirror.js +2761 -0
- data/lib/ledger_web/public/codemirror/lib/util/dialog.css +23 -0
- data/lib/ledger_web/public/codemirror/lib/util/dialog.js +63 -0
- data/lib/ledger_web/public/codemirror/lib/util/foldcode.js +66 -0
- data/lib/ledger_web/public/codemirror/lib/util/formatting.js +291 -0
- data/lib/ledger_web/public/codemirror/lib/util/javascript-hint.js +83 -0
- data/lib/ledger_web/public/codemirror/lib/util/overlay.js +51 -0
- data/lib/ledger_web/public/codemirror/lib/util/runmode.js +27 -0
- data/lib/ledger_web/public/codemirror/lib/util/search.js +114 -0
- data/lib/ledger_web/public/codemirror/lib/util/searchcursor.js +117 -0
- data/lib/ledger_web/public/codemirror/lib/util/simple-hint.css +16 -0
- data/lib/ledger_web/public/codemirror/lib/util/simple-hint.js +66 -0
- data/lib/ledger_web/public/codemirror/mode/clike/clike.js +249 -0
- data/lib/ledger_web/public/codemirror/mode/clike/index.html +101 -0
- data/lib/ledger_web/public/codemirror/mode/clojure/clojure.js +207 -0
- data/lib/ledger_web/public/codemirror/mode/clojure/index.html +66 -0
- data/lib/ledger_web/public/codemirror/mode/coffeescript/LICENSE +22 -0
- data/lib/ledger_web/public/codemirror/mode/coffeescript/coffeescript.js +325 -0
- data/lib/ledger_web/public/codemirror/mode/coffeescript/index.html +721 -0
- data/lib/ledger_web/public/codemirror/mode/css/css.js +124 -0
- data/lib/ledger_web/public/codemirror/mode/css/index.html +55 -0
- data/lib/ledger_web/public/codemirror/mode/diff/diff.css +3 -0
- data/lib/ledger_web/public/codemirror/mode/diff/diff.js +13 -0
- data/lib/ledger_web/public/codemirror/mode/diff/index.html +99 -0
- data/lib/ledger_web/public/codemirror/mode/gfm/gfm.js +108 -0
- data/lib/ledger_web/public/codemirror/mode/gfm/index.html +47 -0
- data/lib/ledger_web/public/codemirror/mode/groovy/groovy.js +210 -0
- data/lib/ledger_web/public/codemirror/mode/groovy/index.html +71 -0
- data/lib/ledger_web/public/codemirror/mode/haskell/haskell.js +242 -0
- data/lib/ledger_web/public/codemirror/mode/haskell/index.html +60 -0
- data/lib/ledger_web/public/codemirror/mode/htmlembedded/htmlembedded.js +68 -0
- data/lib/ledger_web/public/codemirror/mode/htmlembedded/index.html +49 -0
- data/lib/ledger_web/public/codemirror/mode/htmlmixed/htmlmixed.js +83 -0
- data/lib/ledger_web/public/codemirror/mode/htmlmixed/index.html +51 -0
- data/lib/ledger_web/public/codemirror/mode/javascript/index.html +77 -0
- data/lib/ledger_web/public/codemirror/mode/javascript/javascript.js +360 -0
- data/lib/ledger_web/public/codemirror/mode/jinja2/index.html +37 -0
- data/lib/ledger_web/public/codemirror/mode/jinja2/jinja2.js +42 -0
- data/lib/ledger_web/public/codemirror/mode/lua/index.html +72 -0
- data/lib/ledger_web/public/codemirror/mode/lua/lua.js +140 -0
- data/lib/ledger_web/public/codemirror/mode/markdown/index.html +339 -0
- data/lib/ledger_web/public/codemirror/mode/markdown/markdown.js +242 -0
- data/lib/ledger_web/public/codemirror/mode/ntriples/index.html +32 -0
- data/lib/ledger_web/public/codemirror/mode/ntriples/ntriples.js +172 -0
- data/lib/ledger_web/public/codemirror/mode/pascal/LICENSE +7 -0
- data/lib/ledger_web/public/codemirror/mode/pascal/index.html +48 -0
- data/lib/ledger_web/public/codemirror/mode/pascal/pascal.js +138 -0
- data/lib/ledger_web/public/codemirror/mode/perl/LICENSE +19 -0
- data/lib/ledger_web/public/codemirror/mode/perl/index.html +62 -0
- data/lib/ledger_web/public/codemirror/mode/perl/perl.js +816 -0
- data/lib/ledger_web/public/codemirror/mode/php/index.html +48 -0
- data/lib/ledger_web/public/codemirror/mode/php/php.js +120 -0
- data/lib/ledger_web/public/codemirror/mode/plsql/index.html +62 -0
- data/lib/ledger_web/public/codemirror/mode/plsql/plsql.js +217 -0
- data/lib/ledger_web/public/codemirror/mode/python/LICENSE.txt +21 -0
- data/lib/ledger_web/public/codemirror/mode/python/index.html +122 -0
- data/lib/ledger_web/public/codemirror/mode/python/python.js +333 -0
- data/lib/ledger_web/public/codemirror/mode/r/LICENSE +24 -0
- data/lib/ledger_web/public/codemirror/mode/r/index.html +73 -0
- data/lib/ledger_web/public/codemirror/mode/r/r.js +141 -0
- data/lib/ledger_web/public/codemirror/mode/rpm/changes/changes.js +19 -0
- data/lib/ledger_web/public/codemirror/mode/rpm/changes/index.html +53 -0
- data/lib/ledger_web/public/codemirror/mode/rpm/spec/index.html +99 -0
- data/lib/ledger_web/public/codemirror/mode/rpm/spec/spec.css +5 -0
- data/lib/ledger_web/public/codemirror/mode/rpm/spec/spec.js +66 -0
- data/lib/ledger_web/public/codemirror/mode/rst/index.html +525 -0
- data/lib/ledger_web/public/codemirror/mode/rst/rst.js +326 -0
- data/lib/ledger_web/public/codemirror/mode/ruby/LICENSE +24 -0
- data/lib/ledger_web/public/codemirror/mode/ruby/index.html +171 -0
- data/lib/ledger_web/public/codemirror/mode/ruby/ruby.js +195 -0
- data/lib/ledger_web/public/codemirror/mode/rust/index.html +48 -0
- data/lib/ledger_web/public/codemirror/mode/rust/rust.js +411 -0
- data/lib/ledger_web/public/codemirror/mode/scheme/index.html +64 -0
- data/lib/ledger_web/public/codemirror/mode/scheme/scheme.js +202 -0
- data/lib/ledger_web/public/codemirror/mode/smalltalk/index.html +55 -0
- data/lib/ledger_web/public/codemirror/mode/smalltalk/smalltalk.js +139 -0
- data/lib/ledger_web/public/codemirror/mode/sparql/index.html +40 -0
- data/lib/ledger_web/public/codemirror/mode/sparql/sparql.js +143 -0
- data/lib/ledger_web/public/codemirror/mode/stex/index.html +95 -0
- data/lib/ledger_web/public/codemirror/mode/stex/stex.js +167 -0
- data/lib/ledger_web/public/codemirror/mode/tiddlywiki/index.html +183 -0
- data/lib/ledger_web/public/codemirror/mode/tiddlywiki/tiddlywiki.css +21 -0
- data/lib/ledger_web/public/codemirror/mode/tiddlywiki/tiddlywiki.js +374 -0
- data/lib/ledger_web/public/codemirror/mode/velocity/index.html +103 -0
- data/lib/ledger_web/public/codemirror/mode/velocity/velocity.js +146 -0
- data/lib/ledger_web/public/codemirror/mode/xml/index.html +44 -0
- data/lib/ledger_web/public/codemirror/mode/xml/xml.js +252 -0
- data/lib/ledger_web/public/codemirror/mode/xmlpure/index.html +59 -0
- data/lib/ledger_web/public/codemirror/mode/xmlpure/xmlpure.js +485 -0
- data/lib/ledger_web/public/codemirror/mode/yaml/index.html +67 -0
- data/lib/ledger_web/public/codemirror/mode/yaml/yaml.js +95 -0
- data/lib/ledger_web/public/codemirror/theme/cobalt.css +18 -0
- data/lib/ledger_web/public/codemirror/theme/eclipse.css +25 -0
- data/lib/ledger_web/public/codemirror/theme/elegant.css +10 -0
- data/lib/ledger_web/public/codemirror/theme/monokai.css +28 -0
- data/lib/ledger_web/public/codemirror/theme/neat.css +9 -0
- data/lib/ledger_web/public/codemirror/theme/night.css +21 -0
- data/lib/ledger_web/public/codemirror/theme/rubyblue.css +21 -0
- data/lib/ledger_web/public/jquery-1.7.1.min.js +4 -0
- data/lib/ledger_web/public/jquery.tablesorter.min.js +4 -0
- data/lib/ledger_web/public/ledger.css +14 -0
- data/lib/ledger_web/report.rb +187 -0
- data/lib/ledger_web/reports/savings_rate.erb +49 -0
- data/lib/ledger_web/version.rb +3 -0
- data/lib/ledger_web/views/error.erb +5 -0
- data/lib/ledger_web/views/help.erb +6 -0
- data/lib/ledger_web/views/layout.erb +44 -0
- data/lib/ledger_web/views/table.erb +31 -0
- data/lib/ledger_web/watcher.rb +37 -0
- data/lib/ledger_web.rb +20 -0
- metadata +229 -0
@@ -0,0 +1,95 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>CodeMirror: sTeX mode</title>
|
5
|
+
<link rel="stylesheet" href="../../lib/codemirror.css">
|
6
|
+
<script src="../../lib/codemirror.js"></script>
|
7
|
+
<script src="stex.js"></script>
|
8
|
+
<style>.CodeMirror {background: #f8f8f8;}</style>
|
9
|
+
<link rel="stylesheet" href="../../doc/docs.css">
|
10
|
+
</head>
|
11
|
+
<body>
|
12
|
+
<h1>CodeMirror: sTeX mode</h1>
|
13
|
+
<form><textarea id="code" name="code">
|
14
|
+
\begin{module}[id=bbt-size]
|
15
|
+
\importmodule[balanced-binary-trees]{balanced-binary-trees}
|
16
|
+
\importmodule[\KWARCslides{dmath/en/cardinality}]{cardinality}
|
17
|
+
|
18
|
+
\begin{frame}
|
19
|
+
\frametitle{Size Lemma for Balanced Trees}
|
20
|
+
\begin{itemize}
|
21
|
+
\item
|
22
|
+
\begin{assertion}[id=size-lemma,type=lemma]
|
23
|
+
Let $G=\tup{V,E}$ be a \termref[cd=binary-trees]{balanced binary tree}
|
24
|
+
of \termref[cd=graph-depth,name=vertex-depth]{depth}$n>i$, then the set
|
25
|
+
$\defeq{\livar{V}i}{\setst{\inset{v}{V}}{\gdepth{v} = i}}$ of
|
26
|
+
\termref[cd=graphs-intro,name=node]{nodes} at
|
27
|
+
\termref[cd=graph-depth,name=vertex-depth]{depth} $i$ has
|
28
|
+
\termref[cd=cardinality,name=cardinality]{cardinality} $\power2i$.
|
29
|
+
\end{assertion}
|
30
|
+
\item
|
31
|
+
\begin{sproof}[id=size-lemma-pf,proofend=,for=size-lemma]{via induction over the depth $i$.}
|
32
|
+
\begin{spfcases}{We have to consider two cases}
|
33
|
+
\begin{spfcase}{$i=0$}
|
34
|
+
\begin{spfstep}[display=flow]
|
35
|
+
then $\livar{V}i=\set{\livar{v}r}$, where $\livar{v}r$ is the root, so
|
36
|
+
$\eq{\card{\livar{V}0},\card{\set{\livar{v}r}},1,\power20}$.
|
37
|
+
\end{spfstep}
|
38
|
+
\end{spfcase}
|
39
|
+
\begin{spfcase}{$i>0$}
|
40
|
+
\begin{spfstep}[display=flow]
|
41
|
+
then $\livar{V}{i-1}$ contains $\power2{i-1}$ vertexes
|
42
|
+
\begin{justification}[method=byIH](IH)\end{justification}
|
43
|
+
\end{spfstep}
|
44
|
+
\begin{spfstep}
|
45
|
+
By the \begin{justification}[method=byDef]definition of a binary
|
46
|
+
tree\end{justification}, each $\inset{v}{\livar{V}{i-1}}$ is a leaf or has
|
47
|
+
two children that are at depth $i$.
|
48
|
+
\end{spfstep}
|
49
|
+
\begin{spfstep}
|
50
|
+
As $G$ is \termref[cd=balanced-binary-trees,name=balanced-binary-tree]{balanced} and $\gdepth{G}=n>i$, $\livar{V}{i-1}$ cannot contain
|
51
|
+
leaves.
|
52
|
+
\end{spfstep}
|
53
|
+
\begin{spfstep}[type=conclusion]
|
54
|
+
Thus $\eq{\card{\livar{V}i},{\atimes[cdot]{2,\card{\livar{V}{i-1}}}},{\atimes[cdot]{2,\power2{i-1}}},\power2i}$.
|
55
|
+
\end{spfstep}
|
56
|
+
\end{spfcase}
|
57
|
+
\end{spfcases}
|
58
|
+
\end{sproof}
|
59
|
+
\item
|
60
|
+
\begin{assertion}[id=fbbt,type=corollary]
|
61
|
+
A fully balanced tree of depth $d$ has $\power2{d+1}-1$ nodes.
|
62
|
+
\end{assertion}
|
63
|
+
\item
|
64
|
+
\begin{sproof}[for=fbbt,id=fbbt-pf]{}
|
65
|
+
\begin{spfstep}
|
66
|
+
Let $\defeq{G}{\tup{V,E}}$ be a fully balanced tree
|
67
|
+
\end{spfstep}
|
68
|
+
\begin{spfstep}
|
69
|
+
Then $\card{V}=\Sumfromto{i}1d{\power2i}= \power2{d+1}-1$.
|
70
|
+
\end{spfstep}
|
71
|
+
\end{sproof}
|
72
|
+
\end{itemize}
|
73
|
+
\end{frame}
|
74
|
+
\begin{note}
|
75
|
+
\begin{omtext}[type=conclusion,for=binary-tree]
|
76
|
+
This shows that balanced binary trees grow in breadth very quickly, a consequence of
|
77
|
+
this is that they are very shallow (and this compute very fast), which is the essence of
|
78
|
+
the next result.
|
79
|
+
\end{omtext}
|
80
|
+
\end{note}
|
81
|
+
\end{module}
|
82
|
+
|
83
|
+
%%% Local Variables:
|
84
|
+
%%% mode: LaTeX
|
85
|
+
%%% TeX-master: "all"
|
86
|
+
%%% End: \end{document}
|
87
|
+
</textarea></form>
|
88
|
+
<script>
|
89
|
+
var editor = CodeMirror.fromTextArea(document.getElementById("code"), {});
|
90
|
+
</script>
|
91
|
+
|
92
|
+
<p><strong>MIME types defined:</strong> <code>text/stex</code>.</p>
|
93
|
+
|
94
|
+
</body>
|
95
|
+
</html>
|
@@ -0,0 +1,167 @@
|
|
1
|
+
/*
|
2
|
+
* Author: Constantin Jucovschi (c.jucovschi@jacobs-university.de)
|
3
|
+
* Licence: MIT
|
4
|
+
*/
|
5
|
+
|
6
|
+
CodeMirror.defineMode("stex", function(cmCfg, modeCfg)
|
7
|
+
{
|
8
|
+
function pushCommand(state, command) {
|
9
|
+
state.cmdState.push(command);
|
10
|
+
}
|
11
|
+
|
12
|
+
function peekCommand(state) {
|
13
|
+
if (state.cmdState.length>0)
|
14
|
+
return state.cmdState[state.cmdState.length-1];
|
15
|
+
else
|
16
|
+
return null;
|
17
|
+
}
|
18
|
+
|
19
|
+
function popCommand(state) {
|
20
|
+
if (state.cmdState.length>0) {
|
21
|
+
var plug = state.cmdState.pop();
|
22
|
+
plug.closeBracket();
|
23
|
+
}
|
24
|
+
}
|
25
|
+
|
26
|
+
function applyMostPowerful(state) {
|
27
|
+
var context = state.cmdState;
|
28
|
+
for (var i = context.length - 1; i >= 0; i--) {
|
29
|
+
var plug = context[i];
|
30
|
+
if (plug.name=="DEFAULT")
|
31
|
+
continue;
|
32
|
+
return plug.styleIdentifier();
|
33
|
+
}
|
34
|
+
return null;
|
35
|
+
}
|
36
|
+
|
37
|
+
function addPluginPattern(pluginName, cmdStyle, brackets, styles) {
|
38
|
+
return function () {
|
39
|
+
this.name=pluginName;
|
40
|
+
this.bracketNo = 0;
|
41
|
+
this.style=cmdStyle;
|
42
|
+
this.styles = styles;
|
43
|
+
this.brackets = brackets;
|
44
|
+
|
45
|
+
this.styleIdentifier = function(content) {
|
46
|
+
if (this.bracketNo<=this.styles.length)
|
47
|
+
return this.styles[this.bracketNo-1];
|
48
|
+
else
|
49
|
+
return null;
|
50
|
+
};
|
51
|
+
this.openBracket = function(content) {
|
52
|
+
this.bracketNo++;
|
53
|
+
return "bracket";
|
54
|
+
};
|
55
|
+
this.closeBracket = function(content) {
|
56
|
+
};
|
57
|
+
}
|
58
|
+
}
|
59
|
+
|
60
|
+
var plugins = new Array();
|
61
|
+
|
62
|
+
plugins["importmodule"] = addPluginPattern("importmodule", "tag", "{[", ["string", "builtin"]);
|
63
|
+
plugins["documentclass"] = addPluginPattern("documentclass", "tag", "{[", ["", "atom"]);
|
64
|
+
plugins["usepackage"] = addPluginPattern("documentclass", "tag", "[", ["atom"]);
|
65
|
+
plugins["begin"] = addPluginPattern("documentclass", "tag", "[", ["atom"]);
|
66
|
+
plugins["end"] = addPluginPattern("documentclass", "tag", "[", ["atom"]);
|
67
|
+
|
68
|
+
plugins["DEFAULT"] = function () {
|
69
|
+
this.name="DEFAULT";
|
70
|
+
this.style="tag";
|
71
|
+
|
72
|
+
this.styleIdentifier = function(content) {
|
73
|
+
};
|
74
|
+
this.openBracket = function(content) {
|
75
|
+
};
|
76
|
+
this.closeBracket = function(content) {
|
77
|
+
};
|
78
|
+
};
|
79
|
+
|
80
|
+
function setState(state, f) {
|
81
|
+
state.f = f;
|
82
|
+
}
|
83
|
+
|
84
|
+
function normal(source, state) {
|
85
|
+
if (source.match(/^\\[a-z]+/)) {
|
86
|
+
var cmdName = source.current();
|
87
|
+
cmdName = cmdName.substr(1, cmdName.length-1);
|
88
|
+
var plug = plugins[cmdName];
|
89
|
+
if (typeof(plug) == 'undefined') {
|
90
|
+
plug = plugins["DEFAULT"];
|
91
|
+
}
|
92
|
+
plug = new plug();
|
93
|
+
pushCommand(state, plug);
|
94
|
+
setState(state, beginParams);
|
95
|
+
return plug.style;
|
96
|
+
}
|
97
|
+
|
98
|
+
var ch = source.next();
|
99
|
+
if (ch == "%") {
|
100
|
+
setState(state, inCComment);
|
101
|
+
return "comment";
|
102
|
+
}
|
103
|
+
else if (ch=='}' || ch==']') {
|
104
|
+
plug = peekCommand(state);
|
105
|
+
if (plug) {
|
106
|
+
plug.closeBracket(ch);
|
107
|
+
setState(state, beginParams);
|
108
|
+
} else
|
109
|
+
return "error";
|
110
|
+
return "bracket";
|
111
|
+
} else if (ch=='{' || ch=='[') {
|
112
|
+
plug = plugins["DEFAULT"];
|
113
|
+
plug = new plug();
|
114
|
+
pushCommand(state, plug);
|
115
|
+
return "bracket";
|
116
|
+
}
|
117
|
+
else if (/\d/.test(ch)) {
|
118
|
+
source.eatWhile(/[\w.%]/);
|
119
|
+
return "atom";
|
120
|
+
}
|
121
|
+
else {
|
122
|
+
source.eatWhile(/[\w-_]/);
|
123
|
+
return applyMostPowerful(state);
|
124
|
+
}
|
125
|
+
}
|
126
|
+
|
127
|
+
function inCComment(source, state) {
|
128
|
+
source.skipToEnd();
|
129
|
+
setState(state, normal);
|
130
|
+
return "comment";
|
131
|
+
}
|
132
|
+
|
133
|
+
function beginParams(source, state) {
|
134
|
+
var ch = source.peek();
|
135
|
+
if (ch == '{' || ch == '[') {
|
136
|
+
var lastPlug = peekCommand(state);
|
137
|
+
var style = lastPlug.openBracket(ch);
|
138
|
+
source.eat(ch);
|
139
|
+
setState(state, normal);
|
140
|
+
return "bracket";
|
141
|
+
}
|
142
|
+
if (/[ \t\r]/.test(ch)) {
|
143
|
+
source.eat(ch);
|
144
|
+
return null;
|
145
|
+
}
|
146
|
+
setState(state, normal);
|
147
|
+
lastPlug = peekCommand(state);
|
148
|
+
if (lastPlug) {
|
149
|
+
popCommand(state);
|
150
|
+
}
|
151
|
+
return normal(source, state);
|
152
|
+
}
|
153
|
+
|
154
|
+
return {
|
155
|
+
startState: function() { return { f:normal, cmdState:[] }; },
|
156
|
+
copyState: function(s) { return { f: s.f, cmdState: s.cmdState.slice(0, s.cmdState.length) }; },
|
157
|
+
|
158
|
+
token: function(stream, state) {
|
159
|
+
var t = state.f(stream, state);
|
160
|
+
var w = stream.current();
|
161
|
+
return t;
|
162
|
+
}
|
163
|
+
};
|
164
|
+
});
|
165
|
+
|
166
|
+
|
167
|
+
CodeMirror.defineMIME("text/x-stex", "stex");
|
@@ -0,0 +1,183 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>CodeMirror: TiddlyWiki mode</title>
|
5
|
+
<link rel="stylesheet" href="../../lib/codemirror.css">
|
6
|
+
<script src="../../lib/codemirror.js"></script>
|
7
|
+
<script src="tiddlywiki.js"></script>
|
8
|
+
<link rel="stylesheet" href="tiddlywiki.css">
|
9
|
+
<link rel="stylesheet" href="../../doc/docs.css">
|
10
|
+
<style type="text/css">.CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}</style>
|
11
|
+
</head>
|
12
|
+
<body>
|
13
|
+
<h1>CodeMirror: TiddlyWiki mode</h1>
|
14
|
+
|
15
|
+
<div><textarea id="code" name="code">
|
16
|
+
!TiddlyWiki Formatting
|
17
|
+
* Rendered versions can be found at: http://www.tiddlywiki.com/#Reference
|
18
|
+
|
19
|
+
|!Option|!Syntax|!Output|
|
20
|
+
|bold font|{{{''bold''}}}|''bold''|
|
21
|
+
|italic type|{{{//italic//}}}|//italic//|
|
22
|
+
|underlined text|{{{__underlined__}}}|__underlined__|
|
23
|
+
|strikethrough text|{{{--strikethrough--}}}|--strikethrough--|
|
24
|
+
|superscript text|{{{^^super^^script}}}|^^super^^script|
|
25
|
+
|subscript text|{{{~~sub~~script}}}|~~sub~~script|
|
26
|
+
|highlighted text|{{{@@highlighted@@}}}|@@highlighted@@|
|
27
|
+
|preformatted text|<html><code>{{{preformatted}}}</code></html>|{{{preformatted}}}|
|
28
|
+
|
29
|
+
!Block Elements
|
30
|
+
!!Headings
|
31
|
+
{{{
|
32
|
+
!Heading 1
|
33
|
+
!!Heading 2
|
34
|
+
!!!Heading 3
|
35
|
+
!!!!Heading 4
|
36
|
+
!!!!!Heading 5
|
37
|
+
}}}
|
38
|
+
<<<
|
39
|
+
|
40
|
+
!Heading 1
|
41
|
+
|
42
|
+
!!Heading 2
|
43
|
+
|
44
|
+
!!!Heading 3
|
45
|
+
|
46
|
+
!!!!Heading 4
|
47
|
+
|
48
|
+
!!!!!Heading 5
|
49
|
+
<<<
|
50
|
+
|
51
|
+
!!Lists
|
52
|
+
{{{
|
53
|
+
* unordered list, level 1
|
54
|
+
** unordered list, level 2
|
55
|
+
*** unordered list, level 3
|
56
|
+
|
57
|
+
# ordered list, level 1
|
58
|
+
## ordered list, level 2
|
59
|
+
### unordered list, level 3
|
60
|
+
|
61
|
+
; definition list, term
|
62
|
+
: definition list, description
|
63
|
+
}}}
|
64
|
+
<<<
|
65
|
+
* unordered list, level 1
|
66
|
+
** unordered list, level 2
|
67
|
+
*** unordered list, level 3
|
68
|
+
|
69
|
+
# ordered list, level 1
|
70
|
+
## ordered list, level 2
|
71
|
+
### unordered list, level 3
|
72
|
+
|
73
|
+
; definition list, term
|
74
|
+
: definition list, description
|
75
|
+
<<<
|
76
|
+
|
77
|
+
!!Blockquotes
|
78
|
+
{{{
|
79
|
+
> blockquote, level 1
|
80
|
+
>> blockquote, level 2
|
81
|
+
>>> blockquote, level 3
|
82
|
+
|
83
|
+
<<<
|
84
|
+
blockquote
|
85
|
+
<<<
|
86
|
+
}}}
|
87
|
+
<<<
|
88
|
+
> blockquote, level 1
|
89
|
+
>> blockquote, level 2
|
90
|
+
>>> blockquote, level 3
|
91
|
+
|
92
|
+
> blockquote
|
93
|
+
<<<
|
94
|
+
|
95
|
+
!!Preformatted Text
|
96
|
+
<html><pre>
|
97
|
+
{{{
|
98
|
+
preformatted (e.g. code)
|
99
|
+
}}}
|
100
|
+
</pre></html>
|
101
|
+
<<<
|
102
|
+
{{{
|
103
|
+
preformatted (e.g. code)
|
104
|
+
}}}
|
105
|
+
<<<
|
106
|
+
|
107
|
+
!!Code Sections
|
108
|
+
{{{
|
109
|
+
Text style code
|
110
|
+
}}}
|
111
|
+
|
112
|
+
//{{{
|
113
|
+
JS styled code. TiddlyWiki mixed mode should support highlighter switching in the future.
|
114
|
+
//}}}
|
115
|
+
|
116
|
+
<!--{{{-->
|
117
|
+
XML styled code. TiddlyWiki mixed mode should support highlighter switching in the future.
|
118
|
+
<!--}}}-->
|
119
|
+
|
120
|
+
!!Tables
|
121
|
+
{{{
|
122
|
+
|CssClass|k
|
123
|
+
|!heading column 1|!heading column 2|
|
124
|
+
|row 1, column 1|row 1, column 2|
|
125
|
+
|row 2, column 1|row 2, column 2|
|
126
|
+
|>|COLSPAN|
|
127
|
+
|ROWSPAN| ... |
|
128
|
+
|~| ... |
|
129
|
+
|CssProperty:value;...| ... |
|
130
|
+
|caption|c
|
131
|
+
}}}
|
132
|
+
''Annotation:''
|
133
|
+
* The {{{>}}} marker creates a "colspan", causing the current cell to merge with the one to the right.
|
134
|
+
* The {{{~}}} marker creates a "rowspan", causing the current cell to merge with the one above.
|
135
|
+
<<<
|
136
|
+
|CssClass|k
|
137
|
+
|!heading column 1|!heading column 2|
|
138
|
+
|row 1, column 1|row 1, column 2|
|
139
|
+
|row 2, column 1|row 2, column 2|
|
140
|
+
|>|COLSPAN|
|
141
|
+
|ROWSPAN| ... |
|
142
|
+
|~| ... |
|
143
|
+
|CssProperty:value;...| ... |
|
144
|
+
|caption|c
|
145
|
+
<<<
|
146
|
+
!!Images /% TODO %/
|
147
|
+
cf. [[TiddlyWiki.com|http://www.tiddlywiki.com/#EmbeddedImages]]
|
148
|
+
|
149
|
+
!Hyperlinks
|
150
|
+
* [[WikiWords|WikiWord]] are automatically transformed to hyperlinks to the respective tiddler
|
151
|
+
** the automatic transformation can be suppressed by preceding the respective WikiWord with a tilde ({{{~}}}): {{{~WikiWord}}}
|
152
|
+
* [[PrettyLinks]] are enclosed in square brackets and contain the desired tiddler name: {{{[[tiddler name]]}}}
|
153
|
+
** optionally, a custom title or description can be added, separated by a pipe character ({{{|}}}): {{{[[title|target]]}}}<br>'''N.B.:''' In this case, the target can also be any website (i.e. URL).
|
154
|
+
|
155
|
+
!Custom Styling
|
156
|
+
* {{{@@CssProperty:value;CssProperty:value;...@@}}}<br>''N.B.:'' CSS color definitions should use lowercase letters to prevent the inadvertent creation of WikiWords.
|
157
|
+
* <html><code>{{customCssClass{...}}}</code></html>
|
158
|
+
* raw HTML can be inserted by enclosing the respective code in HTML tags: {{{<html> ... </html>}}}
|
159
|
+
|
160
|
+
!Special Markers
|
161
|
+
* {{{<br>}}} forces a manual line break
|
162
|
+
* {{{----}}} creates a horizontal ruler
|
163
|
+
* [[HTML entities|http://www.tiddlywiki.com/#HtmlEntities]]
|
164
|
+
* [[HTML entities local|HtmlEntities]]
|
165
|
+
* {{{<<macroName>>}}} calls the respective [[macro|Macros]]
|
166
|
+
* To hide text within a tiddler so that it is not displayed, it can be wrapped in {{{/%}}} and {{{%/}}}.<br/>This can be a useful trick for hiding drafts or annotating complex markup.
|
167
|
+
* To prevent wiki markup from taking effect for a particular section, that section can be enclosed in three double quotes: e.g. {{{"""WikiWord"""}}}.
|
168
|
+
</textarea></div>
|
169
|
+
|
170
|
+
<script>
|
171
|
+
var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
|
172
|
+
mode: 'tiddlywiki',
|
173
|
+
lineNumbers: true,
|
174
|
+
enterMode: 'keep',
|
175
|
+
matchBrackets: true
|
176
|
+
});
|
177
|
+
</script>
|
178
|
+
|
179
|
+
<p>TiddlyWiki mode supports a single configuration.</p>
|
180
|
+
|
181
|
+
<p><strong>MIME types defined:</strong> <code>text/x-tiddlywiki</code>.</p>
|
182
|
+
</body>
|
183
|
+
</html>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
.cm-s-default span.cm-header {color: blue; font-weight:bold;}
|
2
|
+
.cm-s-default span.cm-code {color: #a50;}
|
3
|
+
.cm-s-default span.cm-code-inline {color: #660;}
|
4
|
+
|
5
|
+
.cm-s-default span.cm-quote {color: #555;}
|
6
|
+
.cm-s-default span.cm-list {color: #c60;}
|
7
|
+
.cm-s-default span.cm-hr {color: #999;}
|
8
|
+
.cm-s-default span.cm-em {font-style: italic;}
|
9
|
+
.cm-s-default span.cm-strong {font-weight: bold;}
|
10
|
+
|
11
|
+
.cm-s-default span.cm-link-external {color: blue;}
|
12
|
+
.cm-s-default span.cm-brace {color: #170; font-weight: bold;}
|
13
|
+
.cm-s-default span.cm-macro {color: #9E3825;}
|
14
|
+
.cm-s-default span.cm-table {color: blue;}
|
15
|
+
.cm-s-default span.cm-warning {color: red; font-weight: bold;}
|
16
|
+
|
17
|
+
.cm-s-default span.cm-underlined {text-decoration: underline;}
|
18
|
+
.cm-s-default span.cm-line-through {text-decoration: line-through;}
|
19
|
+
|
20
|
+
.cm-s-default span.cm-comment {color: #666;}
|
21
|
+
|