maruku 0.2.3 → 0.2.4
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/maruku/to_latex.rb +1 -0
- metadata +1 -156
- data/pkg/maruku-0.2.1/docs/markdown_syntax.md +0 -920
- data/pkg/maruku-0.2.1/docs/maruku.md +0 -410
- data/pkg/maruku-0.2.1/docs/todo.md +0 -3
- data/pkg/maruku-0.2.1/tests/abbreviations.md +0 -11
- data/pkg/maruku-0.2.1/tests/blank.md +0 -4
- data/pkg/maruku-0.2.1/tests/bugs/code_in_links.md +0 -16
- data/pkg/maruku-0.2.1/tests/code.md +0 -5
- data/pkg/maruku-0.2.1/tests/code2.md +0 -8
- data/pkg/maruku-0.2.1/tests/code3.md +0 -16
- data/pkg/maruku-0.2.1/tests/email.md +0 -4
- data/pkg/maruku-0.2.1/tests/entities.md +0 -19
- data/pkg/maruku-0.2.1/tests/escaping.md +0 -14
- data/pkg/maruku-0.2.1/tests/extra_dl.md +0 -101
- data/pkg/maruku-0.2.1/tests/extra_header_id.md +0 -13
- data/pkg/maruku-0.2.1/tests/extra_table1.md +0 -40
- data/pkg/maruku-0.2.1/tests/footnotes.md +0 -17
- data/pkg/maruku-0.2.1/tests/headers.md +0 -10
- data/pkg/maruku-0.2.1/tests/hrule.md +0 -10
- data/pkg/maruku-0.2.1/tests/images.md +0 -20
- data/pkg/maruku-0.2.1/tests/inline_html.md +0 -35
- data/pkg/maruku-0.2.1/tests/links.md +0 -38
- data/pkg/maruku-0.2.1/tests/list1.md +0 -4
- data/pkg/maruku-0.2.1/tests/list2.md +0 -5
- data/pkg/maruku-0.2.1/tests/list3.md +0 -8
- data/pkg/maruku-0.2.1/tests/lists.md +0 -32
- data/pkg/maruku-0.2.1/tests/lists_ol.md +0 -39
- data/pkg/maruku-0.2.1/tests/misc_sw.md +0 -105
- data/pkg/maruku-0.2.1/tests/one.md +0 -1
- data/pkg/maruku-0.2.1/tests/paragraphs.md +0 -13
- data/pkg/maruku-0.2.1/tests/sss06.md +0 -352
- data/pkg/maruku-0.2.1/tests/test.md +0 -4
- data/pkg/maruku-0.2.2/docs/markdown_syntax.md +0 -920
- data/pkg/maruku-0.2.2/docs/maruku.md +0 -410
- data/pkg/maruku-0.2.2/docs/todo.md +0 -3
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/docs/markdown_syntax.md +0 -920
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/docs/maruku.md +0 -410
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/docs/todo.md +0 -3
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/abbreviations.md +0 -11
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/blank.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/bugs/code_in_links.md +0 -16
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/code.md +0 -5
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/code2.md +0 -8
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/code3.md +0 -16
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/email.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/entities.md +0 -19
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/escaping.md +0 -14
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/extra_dl.md +0 -101
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/extra_header_id.md +0 -13
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/extra_table1.md +0 -40
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/footnotes.md +0 -17
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/headers.md +0 -10
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/hrule.md +0 -10
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/images.md +0 -20
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/inline_html.md +0 -35
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/links.md +0 -38
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/list1.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/list2.md +0 -5
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/list3.md +0 -8
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/lists.md +0 -32
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/lists_ol.md +0 -39
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/misc_sw.md +0 -105
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/one.md +0 -1
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/paragraphs.md +0 -13
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/sss06.md +0 -352
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/test.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/docs/markdown_syntax.md +0 -920
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/docs/maruku.md +0 -410
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/docs/todo.md +0 -3
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/docs/markdown_syntax.md +0 -920
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/docs/maruku.md +0 -410
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/docs/todo.md +0 -3
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/abbreviations.md +0 -11
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/blank.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/bugs/code_in_links.md +0 -16
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/code.md +0 -5
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/code2.md +0 -8
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/code3.md +0 -16
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/email.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/entities.md +0 -19
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/escaping.md +0 -14
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/extra_dl.md +0 -101
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/extra_header_id.md +0 -13
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/extra_table1.md +0 -40
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/footnotes.md +0 -17
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/headers.md +0 -10
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/hrule.md +0 -10
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/images.md +0 -20
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/inline_html.md +0 -35
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/links.md +0 -38
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/list1.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/list2.md +0 -5
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/list3.md +0 -8
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/lists.md +0 -32
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/lists_ol.md +0 -39
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/misc_sw.md +0 -105
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/one.md +0 -1
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/paragraphs.md +0 -13
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/sss06.md +0 -352
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/pkg/maruku-0.2.1/tests/test.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/abbreviations.md +0 -11
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/blank.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/bugs/code_in_links.md +0 -16
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/code.md +0 -5
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/code2.md +0 -8
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/code3.md +0 -16
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/email.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/entities.md +0 -19
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/escaping.md +0 -14
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/extra_dl.md +0 -101
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/extra_header_id.md +0 -13
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/extra_table1.md +0 -40
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/footnotes.md +0 -17
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/headers.md +0 -10
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/hrule.md +0 -10
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/images.md +0 -20
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/inline_html.md +0 -35
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/links.md +0 -38
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/list1.md +0 -4
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/list2.md +0 -5
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/list3.md +0 -8
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/lists.md +0 -32
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/lists_ol.md +0 -39
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/misc_sw.md +0 -105
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/one.md +0 -1
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/paragraphs.md +0 -13
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/sss06.md +0 -352
- data/pkg/maruku-0.2.2/pkg/maruku-0.2.2/tests/test.md +0 -4
- data/pkg/maruku-0.2.2/tests/abbreviations.md +0 -11
- data/pkg/maruku-0.2.2/tests/blank.md +0 -4
- data/pkg/maruku-0.2.2/tests/bugs/code_in_links.md +0 -16
- data/pkg/maruku-0.2.2/tests/code.md +0 -5
- data/pkg/maruku-0.2.2/tests/code2.md +0 -8
- data/pkg/maruku-0.2.2/tests/code3.md +0 -16
- data/pkg/maruku-0.2.2/tests/email.md +0 -4
- data/pkg/maruku-0.2.2/tests/entities.md +0 -19
- data/pkg/maruku-0.2.2/tests/escaping.md +0 -14
- data/pkg/maruku-0.2.2/tests/extra_dl.md +0 -101
- data/pkg/maruku-0.2.2/tests/extra_header_id.md +0 -13
- data/pkg/maruku-0.2.2/tests/extra_table1.md +0 -40
- data/pkg/maruku-0.2.2/tests/footnotes.md +0 -17
- data/pkg/maruku-0.2.2/tests/headers.md +0 -10
- data/pkg/maruku-0.2.2/tests/hrule.md +0 -10
- data/pkg/maruku-0.2.2/tests/images.md +0 -20
- data/pkg/maruku-0.2.2/tests/inline_html.md +0 -35
- data/pkg/maruku-0.2.2/tests/links.md +0 -38
- data/pkg/maruku-0.2.2/tests/list1.md +0 -4
- data/pkg/maruku-0.2.2/tests/list2.md +0 -5
- data/pkg/maruku-0.2.2/tests/list3.md +0 -8
- data/pkg/maruku-0.2.2/tests/lists.md +0 -32
- data/pkg/maruku-0.2.2/tests/lists_ol.md +0 -39
- data/pkg/maruku-0.2.2/tests/misc_sw.md +0 -105
- data/pkg/maruku-0.2.2/tests/one.md +0 -1
- data/pkg/maruku-0.2.2/tests/paragraphs.md +0 -13
- data/pkg/maruku-0.2.2/tests/sss06.md +0 -352
- data/pkg/maruku-0.2.2/tests/test.md +0 -4
@@ -1,410 +0,0 @@
|
|
1
|
-
Title: Maruku, a Markdown interpreter
|
2
|
-
CSS: style.css
|
3
|
-
latex_use_listings: true
|
4
|
-
html_use_syntax: true
|
5
|
-
|
6
|
-
Mar**u**k**u**: a Markdown interpreter
|
7
|
-
======================================
|
8
|
-
|
9
|
-
[Maruku][] is a Markdown interpreter written in [Ruby][].
|
10
|
-
|
11
|
-
[maruku]: <http://maruku.rubyforge.org/>
|
12
|
-
|
13
|
-
Maruku allows you to write in an easy-to-read-and-write syntax, like this:
|
14
|
-
|
15
|
-
> [This document in Markdown](http://maruku.rubyforge.org/maruku.md)
|
16
|
-
|
17
|
-
Then it can be translated to HTML:
|
18
|
-
|
19
|
-
> [This document in HTML](http://maruku.rubyforge.org/maruku.html)
|
20
|
-
|
21
|
-
or Latex, which is then converted to PDF:
|
22
|
-
|
23
|
-
> [This document in PDF](http://maruku.rubyforge.org/maruku.pdf)
|
24
|
-
|
25
|
-
Maruku implements the original [Markdown syntax][]
|
26
|
-
([HTML](http://maruku.rubyforge.org/markdown_syntax.html) or
|
27
|
-
[PDF](http://maruku.rubyforge.org/markdown_syntax.pdf), translated by Maruku).
|
28
|
-
|
29
|
-
Markdown implements also all the improvements
|
30
|
-
in [PHP Markdown Extra][].
|
31
|
-
|
32
|
-
Moreover, it implements ideas from [MultiMarkdown][].
|
33
|
-
|
34
|
-
### Authors ###
|
35
|
-
|
36
|
-
Maruku has been developed so far by [Andrea Censi][].
|
37
|
-
Contributors are most welcome!
|
38
|
-
|
39
|
-
[Andrea Censi]: http://www.dis.uniroma1.it/~acensi/
|
40
|
-
|
41
|
-
* * *
|
42
|
-
|
43
|
-
*Table of contents*:
|
44
|
-
|
45
|
-
* [Download](#download)
|
46
|
-
* [Usage](#usage)
|
47
|
-
* [Examples of PHP Markdown extra syntax](#extra)
|
48
|
-
* [New metadata syntax](#meta)
|
49
|
-
* [List of metadata](#metalist)
|
50
|
-
* [Maruku and Bluecloth](#maruku-and-bluecloth)
|
51
|
-
* [Future developments](#future)
|
52
|
-
* [Export to other formats](#future-export)
|
53
|
-
* [Syntax additions](#future-syntax)
|
54
|
-
|
55
|
-
* * *
|
56
|
-
|
57
|
-
@ class: head
|
58
|
-
|
59
|
-
Download {#download}
|
60
|
-
--------
|
61
|
-
|
62
|
-
The development site is <http://rubyforge.org/projects/maruku/>.
|
63
|
-
|
64
|
-
|
65
|
-
Install with:
|
66
|
-
|
67
|
-
$ gem install maruku
|
68
|
-
|
69
|
-
Released files can also be seen at <http://rubyforge.org/frs/?group_id=2795>.
|
70
|
-
|
71
|
-
Anonymous access to the repository is possible with:
|
72
|
-
|
73
|
-
$ svn checkout svn://rubyforge.org/var/svn/maruku
|
74
|
-
|
75
|
-
If you want commit access to the repository, just create an account on Rubyforge and [drop me a mail][drop].
|
76
|
-
|
77
|
-
[drop]: http://www.dis.uniroma1.it/~acensi/contact.html
|
78
|
-
[gem]: http://rubygems.rubyforge.org/
|
79
|
-
|
80
|
-
### Bugs report ###
|
81
|
-
|
82
|
-
Use the [tracker](http://rubyforge.org/tracker/?group_id=2795)
|
83
|
-
or [drop me an email][drop].
|
84
|
-
|
85
|
-
Usage
|
86
|
-
--------
|
87
|
-
|
88
|
-
This is the basic usage:
|
89
|
-
|
90
|
-
@ lang: ruby
|
91
|
-
|
92
|
-
require 'rubygems'
|
93
|
-
require 'maruku'
|
94
|
-
|
95
|
-
doc = Maruku.new(markdown_string)
|
96
|
-
puts doc.to_html
|
97
|
-
|
98
|
-
The method `to_html` outputs only an HTML fragment, while the method `to_html_document` output a complete XHTML 1.0 document:
|
99
|
-
|
100
|
-
@ lang: ruby
|
101
|
-
|
102
|
-
puts doc.to_html_document
|
103
|
-
|
104
|
-
You can have the REXML document tree with:
|
105
|
-
|
106
|
-
@ lang: ruby
|
107
|
-
|
108
|
-
tree = doc.to_html_document_tree
|
109
|
-
|
110
|
-
### From the command line ###
|
111
|
-
|
112
|
-
There are two command-line programs installed: `maruku` and `marutex`
|
113
|
-
|
114
|
-
`maruku` converts Markdown in HTML:
|
115
|
-
|
116
|
-
$ maruku file.md # creates file.html
|
117
|
-
|
118
|
-
`marutex` converts Markdown in TeX, then calls `pdflatex` to
|
119
|
-
transform to PDF:
|
120
|
-
|
121
|
-
$ marutex file.md # creates file.tex and file.pdf
|
122
|
-
|
123
|
-
|
124
|
-
Examples of PHP Markdown Extra syntax {#extra}
|
125
|
-
-------------------------------------
|
126
|
-
|
127
|
-
* tables
|
128
|
-
|
129
|
-
Col1 | Very very long head | Very very long head|
|
130
|
-
-----|:-------------------:|-------------------:|
|
131
|
-
cell | center-align | right-align |
|
132
|
-
|
133
|
-
@ class: example
|
134
|
-
|
135
|
-
Col1 | Very very long head | Very very long head|
|
136
|
-
-----|:-------------------:|-------------------:|
|
137
|
-
cell | center-align | right-align |
|
138
|
-
|
139
|
-
|
140
|
-
* footnotes [^foot]
|
141
|
-
|
142
|
-
* footnotes [^foot]
|
143
|
-
|
144
|
-
[^foot]: I really was missing those.
|
145
|
-
|
146
|
-
[^foot]: I really was missing those.
|
147
|
-
|
148
|
-
* Markdown inside HTML elememnts
|
149
|
-
|
150
|
-
@lang: html
|
151
|
-
|
152
|
-
<div markdown="1" style="border: solid 1px black">
|
153
|
-
This is a div with Markdown **strong text**
|
154
|
-
</div>
|
155
|
-
|
156
|
-
<div markdown="1" style="border: solid 1px black">
|
157
|
-
This is a div with Markdown **strong text**
|
158
|
-
</div>
|
159
|
-
|
160
|
-
|
161
|
-
* header ids
|
162
|
-
## Header ## {#id}
|
163
|
-
For example, [a link to the download](#download) header.
|
164
|
-
|
165
|
-
* definition lists
|
166
|
-
|
167
|
-
Definition list
|
168
|
-
: something very hard to parse
|
169
|
-
|
170
|
-
Definition list
|
171
|
-
: something very hard to parse
|
172
|
-
|
173
|
-
* abbreviations or ABB for short.
|
174
|
-
|
175
|
-
*[ABB]: Simple an abbreviation
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
Maruku and Bluecloth {#maruku-and-bluecloth}
|
180
|
-
--------------------
|
181
|
-
|
182
|
-
The other Ruby implementation of Markdown is [Bluecloth][].
|
183
|
-
|
184
|
-
Maruku is much different in philosophy from Bluecloth: the biggest
|
185
|
-
difference is that *parsing* is separated from *rendering*.
|
186
|
-
In Maruku, an in-memory representation of the Markdown
|
187
|
-
document is created. Instead, Bluecloth mantains the document in
|
188
|
-
memory as a String at all times, and does a series of `gsub`
|
189
|
-
to transform to HTML.
|
190
|
-
|
191
|
-
[^1]: "a different philosophy" stands for "ugly" `:-)`
|
192
|
-
|
193
|
-
The in-memory representation makes it very easy to export
|
194
|
-
to various formats (altough, for, now)
|
195
|
-
|
196
|
-
Other improvements over Bluecloth:
|
197
|
-
|
198
|
-
* the HTML output is provided also as a `REXML` document tree.
|
199
|
-
|
200
|
-
* PHP Markdown Syntax support.
|
201
|
-
|
202
|
-
[ruby]: http://www.ruby-lang.org
|
203
|
-
[bluecloth]: http://www.deveiate.org/projects/BlueCloth
|
204
|
-
[Markdown syntax]: http://daringfireball.net/projects/markdown/syntax
|
205
|
-
[PHP Markdown Extra]: http://www.michelf.com/projects/php-markdown/extra/
|
206
|
-
|
207
|
-
|
208
|
-
New meta-data syntax {#meta}
|
209
|
-
--------------------
|
210
|
-
|
211
|
-
Maruku implements a syntax that allows to attach "meta" information
|
212
|
-
to objects.
|
213
|
-
|
214
|
-
### Meta-data for the document ###
|
215
|
-
|
216
|
-
Meta-data for the document itself is specified through the use
|
217
|
-
of email headers:
|
218
|
-
|
219
|
-
Title: A simple document containing meta-headers
|
220
|
-
CSS: style.css
|
221
|
-
|
222
|
-
Content of the document
|
223
|
-
|
224
|
-
When creating the document through
|
225
|
-
|
226
|
-
@ lang: ruby
|
227
|
-
|
228
|
-
Maruku.new(s).to_html_document
|
229
|
-
|
230
|
-
the title and stylesheet are added as expected.
|
231
|
-
|
232
|
-
|
233
|
-
### Meta-data for elements ###
|
234
|
-
|
235
|
-
Maruku introduces a new syntax for attaching metadata to paragraphs, tables, and
|
236
|
-
so on.
|
237
|
-
|
238
|
-
For example, consider the creation of two paragraphs:
|
239
|
-
|
240
|
-
Paragraph 1 is a warning.
|
241
|
-
|
242
|
-
Paragraph 2
|
243
|
-
|
244
|
-
Now you really want to attach a 'class' attribute to the paragraphs (for
|
245
|
-
example for CSS styling). Maruku allows you to use:
|
246
|
-
|
247
|
-
@ class: warning
|
248
|
-
Paragraph 1 is a warning
|
249
|
-
|
250
|
-
Paragraph 2
|
251
|
-
|
252
|
-
|
253
|
-
You can add more by separating with a `;`:
|
254
|
-
|
255
|
-
@ class: warning; id: warning1
|
256
|
-
Paragraph 1 is a warning
|
257
|
-
|
258
|
-
A meta-data declaration is composed of
|
259
|
-
|
260
|
-
1. newline
|
261
|
-
2. an at-symbol '@'
|
262
|
-
3. a series of name-value pairs. Each name-value is separated
|
263
|
-
by a colon `:`, pairs are separated by semi-colons `;`
|
264
|
-
|
265
|
-
Many declaration can be used, and they refer to _the following_ object:
|
266
|
-
|
267
|
-
@ class: warning
|
268
|
-
@ id: warning1
|
269
|
-
Paragraph 1 is a warning
|
270
|
-
|
271
|
-
These can also be separated by newlines:
|
272
|
-
|
273
|
-
@ class: warning
|
274
|
-
|
275
|
-
@ id: warning1
|
276
|
-
|
277
|
-
Paragraph 1 is a warning
|
278
|
-
|
279
|
-
Also, if the value is not present, it defaults to `true`:
|
280
|
-
|
281
|
-
@ test
|
282
|
-
|
283
|
-
This paragraph has the attribute 'test' set.
|
284
|
-
|
285
|
-
* * *
|
286
|
-
|
287
|
-
List of meta-data {#metalist}
|
288
|
-
-----------------
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
**`title`, `subject`**
|
293
|
-
: (document) Sets the title of the document (HTML: used in the `TITLE` element).
|
294
|
-
|
295
|
-
**`css`**
|
296
|
-
: (document, HTML) Url of stylesheet.
|
297
|
-
|
298
|
-
**`html_use_syntax`**
|
299
|
-
: (document, HTML) Use the [`syntax` library][syntax] to add source highlighting.
|
300
|
-
|
301
|
-
**`latex_use_listings`**
|
302
|
-
: (document, LaTex) Use fancy `listing` package for better displaying code blocks.
|
303
|
-
|
304
|
-
**`style`, `id`, `class`**
|
305
|
-
: (any block object, HTML) Standard CSS attributes are copied.
|
306
|
-
|
307
|
-
**`lang`**
|
308
|
-
: (code blocks) Name of programming language (`ruby`) for syntax highlighting (does not work yet)
|
309
|
-
|
310
|
-
Default for this is `code_lang` in document.
|
311
|
-
|
312
|
-
**`code_show_spaces`**
|
313
|
-
: Shows tabs and newlines (default is read in the document object).
|
314
|
-
|
315
|
-
**`code_background_color`**
|
316
|
-
: Background color for code blocks. (default is read in the document object).
|
317
|
-
|
318
|
-
The format is either a named color (`green`, `red`) or a CSS color
|
319
|
-
of the form `#ff00ff`.
|
320
|
-
|
321
|
-
* for **HTML output**, the value is put straight in the `background-color` CSS
|
322
|
-
property of the block.
|
323
|
-
|
324
|
-
* for **LaTeX output**, if it is a named color, it must be a color accepted
|
325
|
-
by the latex `color` packages. If it is of the form `#ff00ff`, Maruku
|
326
|
-
defines a color using the `\color[rgb]{r,g,b}` macro.
|
327
|
-
|
328
|
-
For example, for `#0000ff`, the macro is called as: `\color[rgb]{0,0,1}`.
|
329
|
-
|
330
|
-
[syntax]: http://syntax.rubyforge.org/
|
331
|
-
|
332
|
-
|
333
|
-
### Examples ###
|
334
|
-
|
335
|
-
An example of this is the following:
|
336
|
-
|
337
|
-
@ code_show_spaces
|
338
|
-
@ code_show_spaces; code_background_color: green
|
339
|
-
|
340
|
-
One space
|
341
|
-
Two spaces
|
342
|
-
Tab, space, tab
|
343
|
-
Tab, tab, tab and all is green!
|
344
|
-
|
345
|
-
That will produce:
|
346
|
-
|
347
|
-
@ code_show_spaces
|
348
|
-
@ code_background_color: green
|
349
|
-
|
350
|
-
One space
|
351
|
-
Two spaces
|
352
|
-
Tab, space, tab
|
353
|
-
Tab, tab, tab and all is green!
|
354
|
-
|
355
|
-
Example with css-style color:
|
356
|
-
|
357
|
-
@ code_background_color: #455678
|
358
|
-
|
359
|
-
A strange color
|
360
|
-
|
361
|
-
produces:
|
362
|
-
|
363
|
-
@ code_background_color: #455678
|
364
|
-
|
365
|
-
A strange color
|
366
|
-
|
367
|
-
Or highlighting (does not work well yet):
|
368
|
-
|
369
|
-
@ lang: xml
|
370
|
-
<div style="text-align:center">Div</div>
|
371
|
-
|
372
|
-
produces:
|
373
|
-
|
374
|
-
@ lang: xml
|
375
|
-
<div style="text-align:center">Div</div>
|
376
|
-
|
377
|
-
* * *
|
378
|
-
|
379
|
-
Future developments {#future}
|
380
|
-
-------------------
|
381
|
-
|
382
|
-
I think that [Pandoc][] and [MultiMarkdown][] are very cool projects.
|
383
|
-
However, they are written in Haskell and Perl, respectively.
|
384
|
-
I would love to have an equivalent in Ruby.
|
385
|
-
|
386
|
-
|
387
|
-
### Syntax improvements ### {#future-syntax}
|
388
|
-
|
389
|
-
Things I'm thinking about:
|
390
|
-
|
391
|
-
* a syntax for commenting parts of the document:
|
392
|
-
|
393
|
-
This is a paragraph
|
394
|
-
% This is a comment
|
395
|
-
|
396
|
-
* choose a syntax for adding math:
|
397
|
-
|
398
|
-
This is inline math: $\alpha$
|
399
|
-
|
400
|
-
This is an equation with label:
|
401
|
-
|
402
|
-
$ \alpha = \beta + \gamma $ (eq:1)
|
403
|
-
|
404
|
-
This is a reference to equation: please see (eq:1)
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
[Pandoc]: http://sophos.berkeley.edu/macfarlane/pandoc/
|
409
|
-
[MultiMarkdown]: http://fletcher.freeshell.org/wiki/MultiMarkdown
|
410
|
-
|
@@ -1,16 +0,0 @@
|
|
1
|
-
**This bug is now solved**
|
2
|
-
|
3
|
-
Previously, a bug would not let you use `code` inside links text.
|
4
|
-
|
5
|
-
So this:
|
6
|
-
Use the [`syntax`][syntax]
|
7
|
-
produces:
|
8
|
-
> Use the [`syntax`][syntax]
|
9
|
-
|
10
|
-
And this:
|
11
|
-
Use the `[syntax][syntax]`
|
12
|
-
produces:
|
13
|
-
> Use the `[syntax][syntax]`
|
14
|
-
|
15
|
-
[syntax]: http://gogole.com
|
16
|
-
|