maruku 0.6.0 → 0.7.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/MIT-LICENSE.txt +20 -0
- data/bin/maruku +153 -152
- data/bin/marutex +2 -29
- data/data/entities.xml +261 -0
- data/docs/markdown_syntax.md +9 -21
- data/docs/math.md +14 -18
- data/lib/maruku.rb +65 -78
- data/lib/maruku/attributes.rb +109 -214
- data/lib/maruku/defaults.rb +45 -67
- data/lib/maruku/document.rb +44 -0
- data/lib/maruku/element.rb +138 -0
- data/lib/maruku/errors.rb +80 -0
- data/lib/maruku/ext/div.rb +105 -113
- data/lib/maruku/ext/fenced_code.rb +97 -0
- data/lib/maruku/ext/math.rb +22 -26
- data/lib/maruku/ext/math/elements.rb +20 -26
- data/lib/maruku/ext/math/mathml_engines/blahtex.rb +92 -104
- data/lib/maruku/ext/math/mathml_engines/itex2mml.rb +33 -26
- data/lib/maruku/ext/math/mathml_engines/none.rb +11 -19
- data/lib/maruku/ext/math/mathml_engines/ritex.rb +2 -4
- data/lib/maruku/ext/math/parsing.rb +121 -115
- data/lib/maruku/ext/math/to_html.rb +202 -187
- data/lib/maruku/ext/math/to_latex.rb +34 -21
- data/lib/maruku/helpers.rb +158 -257
- data/lib/maruku/html.rb +251 -0
- data/lib/maruku/input/charsource.rb +272 -319
- data/lib/maruku/input/extensions.rb +62 -63
- data/lib/maruku/input/html_helper.rb +233 -189
- data/lib/maruku/input/linesource.rb +90 -110
- data/lib/maruku/input/mdline.rb +131 -0
- data/lib/maruku/input/parse_block.rb +736 -613
- data/lib/maruku/input/parse_doc.rb +145 -217
- data/lib/maruku/input/parse_span.rb +740 -0
- data/lib/maruku/inspect_element.rb +60 -0
- data/lib/maruku/maruku.rb +14 -30
- data/lib/maruku/output/entity_table.rb +37 -0
- data/lib/maruku/output/s5/fancy.rb +462 -462
- data/lib/maruku/output/s5/to_s5.rb +115 -135
- data/lib/maruku/output/to_html.rb +907 -983
- data/lib/maruku/output/to_latex.rb +571 -563
- data/lib/maruku/output/to_markdown.rb +207 -162
- data/lib/maruku/output/to_s.rb +10 -52
- data/lib/maruku/string_utils.rb +129 -179
- data/lib/maruku/toc.rb +185 -196
- data/lib/maruku/version.rb +33 -38
- data/spec/block_docs/abbrev.md +776 -0
- data/{tests/unittest → spec/block_docs}/abbreviations.md +11 -20
- data/spec/block_docs/abbreviations2.md +27 -0
- data/{tests/unittest → spec/block_docs}/alt.md +2 -14
- data/{tests/unittest/pending → spec/block_docs}/amps.md +1 -13
- data/spec/block_docs/attribute_sanitize.md +22 -0
- data/{tests/unittest → spec/block_docs}/attributes/att2.md +0 -12
- data/{tests/unittest → spec/block_docs}/attributes/att3.md +2 -14
- data/{tests/unittest → spec/block_docs}/attributes/attributes.md +12 -16
- data/{tests/unittest → spec/block_docs}/attributes/circular.md +0 -12
- data/{tests/unittest → spec/block_docs}/attributes/default.md +1 -13
- data/spec/block_docs/atx_headers.md +22 -0
- data/spec/block_docs/auto_cdata.md +48 -0
- data/spec/block_docs/bad_cites.md +30 -0
- data/spec/block_docs/bad_divrefs.md +30 -0
- data/{tests/unittest → spec/block_docs}/blank.md +0 -12
- data/{tests/unittest → spec/block_docs}/blanks_in_code.md +16 -15
- data/spec/block_docs/block_quotes.md +66 -0
- data/{tests/unittest/loss.md → spec/block_docs/bug_def.md} +6 -18
- data/{tests/unittest → spec/block_docs}/bug_table.md +7 -19
- data/spec/block_docs/cites.md +37 -0
- data/{tests/unittest → spec/block_docs}/code.md +7 -14
- data/{tests/unittest → spec/block_docs}/code2.md +4 -14
- data/{tests/unittest → spec/block_docs}/code3.md +12 -16
- data/spec/block_docs/code4.md +79 -0
- data/{tests/unittest → spec/block_docs}/data_loss.md +2 -14
- data/spec/block_docs/div_without_newline.md +16 -0
- data/{tests/unittest → spec/block_docs}/divs/div1.md +0 -12
- data/{tests/unittest → spec/block_docs}/divs/div2.md +0 -12
- data/{tests/unittest → spec/block_docs}/divs/div3_nest.md +3 -15
- data/{tests/unittest → spec/block_docs}/easy.md +1 -13
- data/spec/block_docs/email.md +29 -0
- data/spec/block_docs/empty_cells.md +31 -0
- data/{tests/unittest → spec/block_docs}/encoding/iso-8859-1.md +1 -14
- data/{tests/unittest → spec/block_docs}/encoding/utf-8.md +0 -12
- data/{tests/unittest → spec/block_docs}/entities.md +33 -41
- data/{tests/unittest/notyet → spec/block_docs}/escape.md +2 -14
- data/{tests/unittest → spec/block_docs}/escaping.md +11 -22
- data/{tests/unittest → spec/block_docs}/extra_dl.md +2 -13
- data/{tests/unittest → spec/block_docs}/extra_header_id.md +14 -20
- data/{tests/unittest → spec/block_docs}/extra_table1.md +9 -21
- data/spec/block_docs/fenced_code_blocks.md +58 -0
- data/spec/block_docs/fenced_code_blocks_highlighted.md +17 -0
- data/{tests/unittest → spec/block_docs}/footnotes.md +12 -24
- data/spec/block_docs/footnotes2.md +82 -0
- data/spec/block_docs/hard.md +25 -0
- data/spec/block_docs/header_after_par.md +62 -0
- data/{tests/unittest → spec/block_docs}/headers.md +10 -18
- data/{tests/unittest → spec/block_docs}/hex_entities.md +7 -18
- data/{tests/unittest → spec/block_docs}/hrule.md +5 -12
- data/{tests/unittest → spec/block_docs}/html3.md +1 -13
- data/{tests/unittest → spec/block_docs}/html4.md +2 -14
- data/{tests/unittest → spec/block_docs}/html5.md +2 -14
- data/spec/block_docs/html_block_in_para.md +22 -0
- data/spec/block_docs/html_inline.md +25 -0
- data/spec/block_docs/html_trailing.md +31 -0
- data/spec/block_docs/ie.md +62 -0
- data/spec/block_docs/iframe.md +29 -0
- data/spec/block_docs/ignore_bad_header.md +9 -0
- data/{tests/unittest → spec/block_docs}/images.md +22 -28
- data/{tests/unittest → spec/block_docs}/images2.md +7 -17
- data/{tests/unittest → spec/block_docs}/inline_html.md +37 -67
- data/{tests/unittest → spec/block_docs}/inline_html2.md +1 -13
- data/spec/block_docs/inline_html_beginning.md +10 -0
- data/spec/block_docs/issue106.md +78 -0
- data/spec/block_docs/issue115.md +20 -0
- data/spec/block_docs/issue117.md +13 -0
- data/spec/block_docs/issue120.md +48 -0
- data/spec/block_docs/issue123.md +11 -0
- data/spec/block_docs/issue124.md +16 -0
- data/spec/block_docs/issue126.md +9 -0
- data/spec/block_docs/issue130.md +11 -0
- data/spec/block_docs/issue20.md +9 -0
- data/spec/block_docs/issue26.md +22 -0
- data/spec/block_docs/issue29.md +9 -0
- data/spec/block_docs/issue30.md +30 -0
- data/spec/block_docs/issue31.md +25 -0
- data/spec/block_docs/issue40.md +52 -0
- data/spec/block_docs/issue64.md +55 -0
- data/spec/block_docs/issue67.md +19 -0
- data/spec/block_docs/issue70.md +11 -0
- data/spec/block_docs/issue72.md +17 -0
- data/spec/block_docs/issue74.md +38 -0
- data/spec/block_docs/issue79.md +15 -0
- data/spec/block_docs/issue83.md +13 -0
- data/spec/block_docs/issue85.md +25 -0
- data/spec/block_docs/issue88.md +19 -0
- data/spec/block_docs/issue89.md +12 -0
- data/spec/block_docs/issue90.md +38 -0
- data/{tests/unittest/pending → spec/block_docs}/link.md +21 -18
- data/{tests/unittest → spec/block_docs}/links.md +33 -32
- data/spec/block_docs/links2.md +21 -0
- data/{tests/unittest → spec/block_docs}/list1.md +0 -12
- data/{tests/unittest → spec/block_docs}/list12.md +2 -14
- data/{tests/unittest → spec/block_docs}/list2.md +2 -14
- data/spec/block_docs/list_multipara.md +42 -0
- data/{tests/unittest → spec/block_docs}/lists.md +28 -29
- data/{tests/unittest → spec/block_docs}/lists10.md +2 -14
- data/spec/block_docs/lists11.md +23 -0
- data/spec/block_docs/lists12.md +43 -0
- data/spec/block_docs/lists13.md +55 -0
- data/spec/block_docs/lists14.md +61 -0
- data/spec/block_docs/lists15.md +36 -0
- data/spec/block_docs/lists6.md +88 -0
- data/spec/block_docs/lists7b.md +58 -0
- data/spec/block_docs/lists9.md +53 -0
- data/{tests/unittest → spec/block_docs}/lists_after_paragraph.md +19 -25
- data/spec/block_docs/lists_blank.md +35 -0
- data/{tests/unittest/list3.md → spec/block_docs/lists_blockquote_code.md} +2 -14
- data/{tests/unittest/list4.md → spec/block_docs/lists_need_blank_line.md} +44 -29
- data/spec/block_docs/lists_nested.md +44 -0
- data/spec/block_docs/lists_nested_blankline.md +34 -0
- data/spec/block_docs/lists_nested_deep.md +43 -0
- data/spec/block_docs/lists_ol.md +129 -0
- data/spec/block_docs/lists_ol2.md +147 -0
- data/spec/block_docs/lists_paraindent.md +42 -0
- data/spec/block_docs/lists_tab.md +54 -0
- data/spec/block_docs/loss.md +17 -0
- data/spec/block_docs/math-blahtex/equations.md +29 -0
- data/spec/block_docs/math-blahtex/inline.md +48 -0
- data/spec/block_docs/math-blahtex/math2.md +52 -0
- data/spec/block_docs/math-blahtex/table.md +25 -0
- data/spec/block_docs/math/embedded_invalid_svg.md +108 -0
- data/spec/block_docs/math/embedded_svg.md +136 -0
- data/spec/block_docs/math/equations.md +49 -0
- data/spec/block_docs/math/inline.md +46 -0
- data/spec/block_docs/math/math2.md +53 -0
- data/{tests/unittest → spec/block_docs}/math/notmath.md +0 -12
- data/spec/block_docs/math/raw_mathml.md +87 -0
- data/spec/block_docs/math/spaces_after_inline_math.md +17 -0
- data/spec/block_docs/math/table.md +25 -0
- data/{tests/unittest → spec/block_docs}/math/table2.md +11 -23
- data/{tests/unittest → spec/block_docs}/misc_sw.md +184 -121
- data/{tests/unittest → spec/block_docs}/olist.md +6 -18
- data/{tests/unittest → spec/block_docs}/one.md +0 -12
- data/{tests/unittest → spec/block_docs}/paragraph.md +0 -12
- data/{tests/unittest → spec/block_docs}/paragraph_rules/dont_merge_ref.md +4 -12
- data/{tests/unittest → spec/block_docs}/paragraph_rules/tab_is_blank.md +0 -12
- data/{tests/unittest → spec/block_docs}/paragraphs.md +1 -13
- data/{tests/unittest → spec/block_docs}/recover/recover_links.md +4 -16
- data/{tests/unittest/pending/ref.md → spec/block_docs/ref_with_period.md} +7 -16
- data/spec/block_docs/ref_with_title.md +22 -0
- data/{tests/unittest → spec/block_docs}/references/long_example.md +16 -23
- data/{tests/unittest → spec/block_docs}/references/spaces_and_numbers.md +0 -12
- data/{tests/unittest → spec/block_docs}/smartypants.md +24 -31
- data/{tests/unittest → spec/block_docs}/syntax_hl.md +13 -17
- data/{tests/unittest → spec/block_docs}/table_attributes.md +6 -20
- data/spec/block_docs/table_colspan.md +41 -0
- data/spec/block_docs/tables.md +47 -0
- data/spec/block_docs/tables2.md +74 -0
- data/{tests/unittest → spec/block_docs}/test.md +1 -13
- data/{tests/unittest/notyet → spec/block_docs}/ticks.md +1 -13
- data/spec/block_docs/toc.md +87 -0
- data/{tests/unittest/notyet → spec/block_docs}/triggering.md +14 -25
- data/{tests/unittest → spec/block_docs}/underscore_in_words.md +0 -12
- data/{tests/unittest → spec/block_docs}/wrapping.md +4 -16
- data/spec/block_docs/xml.md +33 -0
- data/spec/block_docs/xml3.md +24 -0
- data/spec/block_docs/xml_comments.md +32 -0
- data/{tests/unittest → spec/block_docs}/xml_instruction.md +9 -20
- data/spec/block_spec.rb +110 -0
- data/spec/cli_spec.rb +8 -0
- data/spec/span_spec.rb +263 -0
- data/spec/spec_helper.rb +3 -0
- data/spec/to_html_utf8_spec.rb +13 -0
- metadata +218 -202
- data/Rakefile +0 -73
- data/bin/marudown +0 -29
- data/bin/marutest +0 -345
- data/docs/changelog.md +0 -334
- data/lib/maruku/errors_management.rb +0 -92
- data/lib/maruku/ext/math/latex_fix.rb +0 -12
- data/lib/maruku/input/parse_span_better.rb +0 -746
- data/lib/maruku/input/rubypants.rb +0 -225
- data/lib/maruku/input/type_detection.rb +0 -147
- data/lib/maruku/output/to_latex_entities.rb +0 -367
- data/lib/maruku/output/to_latex_strings.rb +0 -64
- data/lib/maruku/structures.rb +0 -167
- data/lib/maruku/structures_inspect.rb +0 -87
- data/lib/maruku/structures_iterators.rb +0 -61
- data/lib/maruku/tests/benchmark.rb +0 -82
- data/lib/maruku/tests/new_parser.rb +0 -373
- data/lib/maruku/tests/tests.rb +0 -136
- data/lib/maruku/usage/example1.rb +0 -33
- data/maruku_gem.rb +0 -33
- data/tests/bugs/code_in_links.md +0 -101
- data/tests/bugs/complex_escaping.md +0 -38
- data/tests/math/syntax.md +0 -46
- data/tests/math_usage/document.md +0 -13
- data/tests/others/abbreviations.md +0 -11
- data/tests/others/blank.md +0 -4
- data/tests/others/code.md +0 -5
- data/tests/others/code2.md +0 -8
- data/tests/others/code3.md +0 -16
- data/tests/others/email.md +0 -4
- data/tests/others/entities.md +0 -19
- data/tests/others/escaping.md +0 -16
- data/tests/others/extra_dl.md +0 -101
- data/tests/others/extra_header_id.md +0 -13
- data/tests/others/extra_table1.md +0 -40
- data/tests/others/footnotes.md +0 -17
- data/tests/others/headers.md +0 -10
- data/tests/others/hrule.md +0 -10
- data/tests/others/images.md +0 -20
- data/tests/others/inline_html.md +0 -42
- data/tests/others/links.md +0 -38
- data/tests/others/list1.md +0 -4
- data/tests/others/list2.md +0 -5
- data/tests/others/list3.md +0 -8
- data/tests/others/lists.md +0 -32
- data/tests/others/lists_after_paragraph.md +0 -44
- data/tests/others/lists_ol.md +0 -39
- data/tests/others/misc_sw.md +0 -105
- data/tests/others/one.md +0 -1
- data/tests/others/paragraphs.md +0 -13
- data/tests/others/sss06.md +0 -352
- data/tests/others/test.md +0 -4
- data/tests/s5/s5profiling.md +0 -48
- data/tests/unittest/bug_def.md +0 -28
- data/tests/unittest/email.md +0 -32
- data/tests/unittest/hang.md +0 -29
- data/tests/unittest/html2.md +0 -34
- data/tests/unittest/ie.md +0 -61
- data/tests/unittest/links2.md +0 -34
- data/tests/unittest/lists11.md +0 -28
- data/tests/unittest/lists6.md +0 -53
- data/tests/unittest/lists9.md +0 -76
- data/tests/unittest/lists_ol.md +0 -274
- data/tests/unittest/math/equations.md +0 -86
- data/tests/unittest/math/inline.md +0 -58
- data/tests/unittest/math/math2.md +0 -57
- data/tests/unittest/math/table.md +0 -37
- data/tests/unittest/notyet/header_after_par.md +0 -70
- data/tests/unittest/pending/empty_cells.md +0 -49
- data/tests/unittest/red_tests/abbrev.md +0 -1388
- data/tests/unittest/red_tests/lists7.md +0 -68
- data/tests/unittest/red_tests/lists7b.md +0 -128
- data/tests/unittest/red_tests/lists8.md +0 -76
- data/tests/unittest/red_tests/xml.md +0 -70
- data/tests/unittest/xml2.md +0 -31
- data/tests/unittest/xml3.md +0 -38
- data/tests/utf8-files/simple.md +0 -1
- data/unit_test_block.sh +0 -5
- data/unit_test_span.sh +0 -3
data/tests/others/one.md
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
One line
|
data/tests/others/paragraphs.md
DELETED
data/tests/others/sss06.md
DELETED
@@ -1,352 +0,0 @@
|
|
1
|
-
Category: sss06
|
2
|
-
Date: Sep 10 2006
|
3
|
-
From: "Andrea Censi" <andrea.censi@dis.uniroma1.it>
|
4
|
-
Subject: A report about Oxford and the 2006 SLAM Summer School
|
5
|
-
Encoding: BlueCloth FlickrHTML
|
6
|
-
format: bluecloth>
|
7
|
-
inMenu: true
|
8
|
-
|
9
|
-
Let me quote the words of a renowned Oxford scholar:
|
10
|
-
|
11
|
-
> "Life is too important to be taken seriously."
|
12
|
-
|
13
|
-
If you do not wholeheartedly agree with this statement,
|
14
|
-
please stop reading this.
|
15
|
-
|
16
|
-
----------------------
|
17
|
-
|
18
|
-
I stayed three weeks in Oxford: one week for the SLAM school and,
|
19
|
-
before that, two weeks for an English course. You might ask: why?
|
20
|
-
A very good question indeed - "Why I am not on a sunny beach?" -
|
21
|
-
I kept asking myself as I walked down the misty alleys of the old town,
|
22
|
-
wearing a scarf on August, 16th, and realizing that - maybe - I would not
|
23
|
-
need the three pairs of shorts and the swimsuit I had brought.
|
24
|
-
|
25
|
-
|
26
|
-
Summary:
|
27
|
-
|
28
|
-
1. The Queen's English
|
29
|
-
2. The Harry Potter experience
|
30
|
-
3. Parsnip, Marmite and the tea conspiracy
|
31
|
-
4. The Summer School
|
32
|
-
5. Minor open issues in SLAM
|
33
|
-
|
34
|
-
> Appendix: How to offend seven nationalities at once
|
35
|
-
|
36
|
-
`I`. The Queen's English
|
37
|
-
----------------------
|
38
|
-
|
39
|
-
It turns out that a course of English at an advanced level is mostly
|
40
|
-
about vocabulary and idioms: by the end of the first week I knew seven
|
41
|
-
different ways to address a "promiscuous" woman, and I can tell which ones
|
42
|
-
are applicable to American and which to British English. It remains to be
|
43
|
-
seen how this will benefit my academic writing.
|
44
|
-
|
45
|
-
It was a lot of fun to learn the differences (or, as the teacher put it,
|
46
|
-
"to purify my English after years of prolonged unhealthy exposure to American
|
47
|
-
media"), which are not only linguistic, but above all in attitude and
|
48
|
-
social norms.
|
49
|
-
For example, in the US the first question that people ask you is
|
50
|
-
"What do you do?" (meaning: "How much do you earn?"), while in England such
|
51
|
-
a question would be felt as unnecessary direct and impolite.
|
52
|
-
As a rule,
|
53
|
-
it is compulsory to exchange comments about the weather, and there is a lot
|
54
|
-
of specialized vocabulary for this; the following table might prove handy
|
55
|
-
to understand your acquaintance:
|
56
|
-
|
57
|
-
- "It's a lovely day!" = "It doesn't rain"
|
58
|
-
- "It's a nice day!" = "It doesn't rain heavily"
|
59
|
-
- "What a wonderful day!"="This morning, at 10:13, I caught a glimpse of the sun"
|
60
|
-
|
61
|
-
(the correct answer to any of these is "isn't it?")
|
62
|
-
|
63
|
-
`II`. The Harry Potter experience
|
64
|
-
-------------------------
|
65
|
-
|
66
|
-
flickr: http://www.flickr.com/photos/censi/232006603/
|
67
|
-
|
68
|
-
During my three-week stay I tried my best to immerse myself in the English
|
69
|
-
atmosphere.
|
70
|
-
|
71
|
-
I went to a place called Oxford Story [3], where we paid £7 to go through a
|
72
|
-
painfully slow indoor ride, sat on a mobile school-desk in the dark for 25
|
73
|
-
minutes. It is the claustrophobic equivalent of the American Epcot center in
|
74
|
-
Disney World.
|
75
|
-
|
76
|
-
At Epcot, I learned that the final goal of all the scientific progress in the
|
77
|
-
last three millennia was to let Walt Disney broadcast Snow White using
|
78
|
-
Siemens equipment (Siemens sponsored the ride).
|
79
|
-
In Oxford, I learned that the glorious University is the repository of all
|
80
|
-
human knowledge, and that the English understatement is a legend. At the end of
|
81
|
-
the ride, I was amazed that in Italy I had managed to learn to read and write.
|
82
|
-
|
83
|
-
flickr: http://www.flickr.com/photos/censi/232023681/
|
84
|
-
|
85
|
-
Still, one thing the ride did not explain is how the well-educated,
|
86
|
-
smart elite students of Oxford can possibly find rowing fun --
|
87
|
-
(probably it IS fun, compared to cricket).
|
88
|
-
|
89
|
-
flickr: http://www.flickr.com/photos/censi/232529032/
|
90
|
-
|
91
|
-
I went to a candle-light baroque concert in the Exeter college chapel.
|
92
|
-
The ensemble was 75% Asian, all Oxford researchers, and we were given
|
93
|
-
a twenty minute speech about the effort they put in the historical
|
94
|
-
research of this obscure composer, that they had a microfilm of the original
|
95
|
-
manuscript delivered from a German library, that the viola would be played
|
96
|
-
in the original style, blah blah blah. Only in Oxford!
|
97
|
-
|
98
|
-
flickr: http://www.flickr.com/photos/censi/232031895/
|
99
|
-
|
100
|
-
I read "The Hobbit" (Tolkien was a fellow of Exeter college) - I discovered
|
101
|
-
that the only two peoples in the known and invented universes to have
|
102
|
-
the concept of a "second breakfast" are Hobbits and Italians.
|
103
|
-
|
104
|
-
|
105
|
-
I watched a performance of MacBeth at an open-air theatre.
|
106
|
-
I couldn't understand but one sentence, which is worth mentioning:
|
107
|
-
"Alcohol provokes the desire, but it takes away the performance"
|
108
|
-
|
109
|
-
Regarding alcohol, England is one of the places where you can't drink if you
|
110
|
-
are under 21 (in Italy, at 18 you have decided to quit).
|
111
|
-
Young people have their ID checked at the entrance of pubs and in liquor
|
112
|
-
stores: that's only a minor annoyance, as they just need to wait outside
|
113
|
-
the store for the first Spanish guy passing by that will buy the wine for them
|
114
|
-
(and be compensated with just the change - did you keep the penny, Felix?).
|
115
|
-
|
116
|
-
Anyway the guys at the door use the ID checking mostly as a form of flattery:
|
117
|
-
"You are 32? I thought you were 20!" is probably the best pick-up line that
|
118
|
-
the English can come up with.
|
119
|
-
|
120
|
-
The other characteristic thing is that in English pubs there is no table
|
121
|
-
service: you have to walk to the bar and ask by yourself. The first time can
|
122
|
-
be confusing: and you can spend quite some time waiting at the table whining
|
123
|
-
about the "poor service".
|
124
|
-
|
125
|
-
`III`. Parsnip, Marmite & the tea conspiracy
|
126
|
-
---------------------------------------------
|
127
|
-
|
128
|
-
During the first week I was a guest of a lovely 79-year-old lady.
|
129
|
-
Working at the University, she made a point of speaking very posh English.
|
130
|
-
And she made a point of cooking traditional English food.
|
131
|
-
The typical English dish is some meat with two vegetables aside.
|
132
|
-
For the vegetables, pick any two in {parsnip, carrot, potato}.
|
133
|
-
|
134
|
-
Don't look in your dictionary for a translation of "parsnip" as probably
|
135
|
-
there isn't one. The lady would tell me that in the next-to-last century,
|
136
|
-
this famous professor spent years raising the finest crossbreed of Parsnip as
|
137
|
-
to finally obtain what is best described as a big white carrot
|
138
|
-
with no taste whatsoever [4].
|
139
|
-
|
140
|
-
Nevertheless, the many regional variants give spectacular variety to the
|
141
|
-
English cuisine: the two vegetables can be boiled, fried, baked, microwaved,
|
142
|
-
or roasted. There exist also exotic twists, in which the vegetables are put
|
143
|
-
on top of the meat, or underneath, or even inside.
|
144
|
-
In important occasions, the recipes stay the same but gain a French name.
|
145
|
-
|
146
|
-
|
147
|
-
flickr: http://www.flickr.com/photos/censi/232526897/
|
148
|
-
|
149
|
-
|
150
|
-
I tried a thing called Marmite, which the teacher sold to me as "the British
|
151
|
-
answer to Nutella". It has the aspect and consistency of engine grease, and,
|
152
|
-
as far as I know, also the taste is similar (I've never tasted the grease,
|
153
|
-
but next time, presented with choice, I'd give it a go).
|
154
|
-
|
155
|
-
The austerity of English food can be explained by the pitiless weather; but
|
156
|
-
how can you explain Marmite, if not with alimentary masochism?
|
157
|
-
|
158
|
-
But... there's one thing that is much better in England: tea. Wherever I tried
|
159
|
-
it (at the old lady's, at tearooms, at coffee breaks) it was sooo delicious.
|
160
|
-
In Italy we don't get the real thing. Why is that? Is this some sort of
|
161
|
-
conspiracy orchestrated by the Italian coffee producers? And is it the
|
162
|
-
tea cartello which does not allow good coffee to be imported in England?
|
163
|
-
|
164
|
-
`IV`. The Summer School
|
165
|
-
---------------------
|
166
|
-
|
167
|
-
If you go for a career in research, in general you don't get much money,
|
168
|
-
or fame, and you don't get to rescue the princess either.
|
169
|
-
The two benefits that you do get are: playing with very expensive toys
|
170
|
-
and the occasional trip in which you meet all sort of people.
|
171
|
-
|
172
|
-
And when you talk with them, it's sort of strange to realize that your
|
173
|
-
interlocutor is one of the 5 people - worldwide - that actually care about your
|
174
|
-
research theme, and yet the things you have in common end there, as he has
|
175
|
-
different culture, race, religion, and while you two happen to agree that Lie
|
176
|
-
brackets are an indispensable tool to characterize the propagation of errors
|
177
|
-
on the Euclidean group, you have very different answers to the important
|
178
|
-
questions about life, the universe and everything. (In these cases I have
|
179
|
-
anecdotal proof that it is much better to stick to research talk, and to
|
180
|
-
avoid at all costs the kind of jokes that you can find in the Appendix).
|
181
|
-
|
182
|
-
Instead, at this particular school, I would say that the European character was
|
183
|
-
clearly perceived, and I enjoyed it -- but whether England is in Europe is a
|
184
|
-
delicate matter.
|
185
|
-
|
186
|
-
|
187
|
-
Here are some impressions of the people.
|
188
|
-
|
189
|
-
* Juan Domingo Tardos (aka Mingo) is the funniest of the bunch, the man you
|
190
|
-
want to go partying with.
|
191
|
-
|
192
|
-
He taught us two deep truths about SLAM and life:
|
193
|
-
1. The size of your banana matters.
|
194
|
-
2. Never under-estimate the size of your lemons.
|
195
|
-
|
196
|
-
I thought: wow, I want to write a paper with "banana" in the title - finally
|
197
|
-
some inspiration from the school! I already had big projects for Fig. 1,2
|
198
|
-
and a full-page Fig. 3, but after a little googling I found:
|
199
|
-
"Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire"[5]
|
200
|
-
"Dealing with large bananas" [6].
|
201
|
-
I gave up: I cannot beat this last one. And the existence of [6] proves
|
202
|
-
once again that SLAM is a solved problem.
|
203
|
-
|
204
|
-
* Paul Newman, the organizer, told us, more than once, that the future of SLAM
|
205
|
-
is in long term operation if we want the systems to be reliable.
|
206
|
-
(Personally, I disagree: I think that it is possible to build anything at
|
207
|
-
the desired level of reliability, given reasonable funding, time, and
|
208
|
-
an appropriate number of German engineers)
|
209
|
-
|
210
|
-
* One of the lessons learned in the school is that almost everything has
|
211
|
-
already been done by someone else.
|
212
|
-
More specifically, most of the things have already been done by
|
213
|
-
Durrant-Whyte some twenty years ago, when men were men, CS was electrical
|
214
|
-
engineering, master students knew calculus, and Kalman filters ran
|
215
|
-
free in the wild lands of Australia.
|
216
|
-
|
217
|
-
* Frank Dellaert is a jolly chap as well, and he does interesting things with
|
218
|
-
graphs. As he introduced three different formalisms in the first
|
219
|
-
three slides, I regretted not to have put more CS in my curriculum, then
|
220
|
-
shut my eyes. Interestingly, at summer schools and conferences, if you close
|
221
|
-
your eyes people assume that you are very smart and that you are thinking
|
222
|
-
about some new impressive algorithm -- I was just dreaming of a sunny beach.
|
223
|
-
|
224
|
-
* Henrik Christensen has implemented SLAM on the cleaning robot for $45
|
225
|
-
in sensors and electronics. It puts things in perspective, especially
|
226
|
-
if you consider that I paid £16 for a one-hour coach trip from Heathrow
|
227
|
-
to Oxford.
|
228
|
-
|
229
|
-
* Andy Davison is a wonderful person, he tutored the practicals with
|
230
|
-
infinite patience. Never did I meet such a knowledgeable, affable,
|
231
|
-
and humble person. (Probably he is the kind of person that some day will
|
232
|
-
show up at work with automatic guns)
|
233
|
-
|
234
|
-
* Wolfram Burgard - he wins my "best robot" award for the photo of our
|
235
|
-
beloved Albert [7].
|
236
|
-
|
237
|
-
* Dieter Fox wins "most nostalgic slide from the 90s": and every time we feel
|
238
|
-
the same emotion as the first time.
|
239
|
-
|
240
|
-
* Kurt Konolige reminded me why I bought a Mac.
|
241
|
-
|
242
|
-
* Simon Lacroix - Once we sat at the same table during lunch. While he
|
243
|
-
talked with Dellaert, he would send me alarmed glances, the kind of glances
|
244
|
-
that you would reserve to a relative returning from death. I wanted
|
245
|
-
to ask him why, but then I decided I'd better not to (was I so wasted
|
246
|
-
from the night before?).
|
247
|
-
|
248
|
-
* Simon Julier -- he seems very smart, but he lost me between slide #3 and #4.
|
249
|
-
I started to be seasick from all those covariance matrices -
|
250
|
-
so I muttered to my neighbours: "I wonder whether it still holds in
|
251
|
-
higher-dimensional spaces...", then I closed my eyes and was back again on
|
252
|
-
the sunny beach.
|
253
|
-
|
254
|
-
* But all in all, the most interesting presentation was the magical show
|
255
|
-
that Davide Scaramuzza (who at daytime pretends to work at ETHZ) gave to a
|
256
|
-
selected audience after the banquet ([8]).
|
257
|
-
It was another confirmation that all the time spent in front of a monitor is,
|
258
|
-
in fact, wasted, and all of us should have studied card tricks instead:
|
259
|
-
you have NO IDEA of how a girl's face brightens up and her eyes expand when
|
260
|
-
she watches a magician.
|
261
|
-
|
262
|
-
`V`. Other minor issues in SLAM
|
263
|
-
--------------------------------
|
264
|
-
|
265
|
-
We all know that the most important open problem in SLAM is that there are
|
266
|
-
not enough women doing research in the area and coming at summer schools.
|
267
|
-
As for the other minor issues, this is the result of asking
|
268
|
-
"What is the future of SLAM?" to a random sampling of the participants.
|
269
|
-
(the list does not include answers given after 10:00 PM)
|
270
|
-
|
271
|
-
- For 30% of the respondents, SLAM is a solved problem, and we just need some
|
272
|
-
German engineers to work out the details of the implementations.
|
273
|
-
- Long term operation: make filters that reconsider their decisions at a
|
274
|
-
a later time (so not delaying decisions, but explicitly reconsider).
|
275
|
-
- Make it robust for real applications: or, your method should work in more
|
276
|
-
than one experiment and possibly also outside of your lab.
|
277
|
-
- Put more knowledge in SLAM about the environment. Teach your
|
278
|
-
filter what is a tree, a road, a mirror so that it can make smarter
|
279
|
-
decisions.
|
280
|
-
- Active SLAM and SLAM-guided exploration (once we figure out good acronyms).
|
281
|
-
- Some boring work is to be done for taking into account linearization errors
|
282
|
-
in the already existing results about consistency, sparsity, etc.
|
283
|
-
- "Where can I get some real coffee?" (2 people)
|
284
|
-
- Methods and representations for real sensor fusion (laser, camera, etc).
|
285
|
-
- Do robust stuff with a single camera. Omnidirectional cameras are cool.
|
286
|
-
Mix different techniques at different time-scales: visual odometry between
|
287
|
-
frames, then stable features, then databases of places to close the loop
|
288
|
-
(or don't close the loop at all).
|
289
|
-
|
290
|
-
Appendix. How to offend seven nationalities at once
|
291
|
-
--------------------------------------------------
|
292
|
-
|
293
|
-
In Oxford I learned the ultimate rude stereotypical joke -- I think it's
|
294
|
-
worth sharing.
|
295
|
-
|
296
|
-
> **Heaven & Hell**
|
297
|
-
>
|
298
|
-
> *In Heaven*: the policemen are British, mechanics are German, chefs are French,
|
299
|
-
> wives are Japanese, neighbours are Dutch, lovers are Italian,
|
300
|
-
> and the Swiss organize it all.
|
301
|
-
>
|
302
|
-
> *In Hell*: the policemen are German, mechanics are French, chefs are British,
|
303
|
-
> neighbours are Japanese, wives are Dutch, lovers are Swiss,
|
304
|
-
> and the Italians organize it all.
|
305
|
-
|
306
|
-
For related work, see for example [9], [10].
|
307
|
-
|
308
|
-
|
309
|
-
And here's the research version:
|
310
|
-
|
311
|
-
> **The BEST international research project**
|
312
|
-
>
|
313
|
-
> - The French do the overall math analysis,
|
314
|
-
> - a Chinese refines a ten-line proof of the main Theorem,
|
315
|
-
> - the Germans design the implementation,
|
316
|
-
> - Japanese undergrads do the actual work,
|
317
|
-
> - the British write the paper,
|
318
|
-
> - an American gives the presentation,
|
319
|
-
> - the Spanish organize the social events,
|
320
|
-
> - and the Italians organize the banquet.
|
321
|
-
>
|
322
|
-
> **The WORST international research project**
|
323
|
-
>
|
324
|
-
> - The Germans do the overall math analysis,
|
325
|
-
> - an American PhD student spends 10 CPU year on his department's 48-node
|
326
|
-
> cluster and proves with a Monte Carlo simulation in Matlab that
|
327
|
-
> Theorem 1 indeed holds for some values of the parameters,
|
328
|
-
> - the French design the implementation,
|
329
|
-
> - one Spanish undergrad does the actual work,
|
330
|
-
> - the Italians write the papers,
|
331
|
-
> - a Chinese gives the presentation,
|
332
|
-
> - the Japanese organize the social events,
|
333
|
-
> - and the British organize the banquet.
|
334
|
-
|
335
|
-
`:-)`
|
336
|
-
|
337
|
-
Flickr: <http://www.flickr.com/photos/censi/232003838>
|
338
|
-
|
339
|
-
References
|
340
|
-
----------
|
341
|
-
|
342
|
-
\[1\] [http://www.spellingsociety.org/news/media/poems.php](http://www.spellingsociety.org/news/media/poems.php)
|
343
|
-
\[2\] dde [http://www.flickr.com/photos/censi/236722418/](http://www.flickr.com/photos/censi/236722418/)
|
344
|
-
\[3\] [http://www.oxfordstory.co.uk](http://www.oxfordstory.co.uk)
|
345
|
-
\[4\] [http://www.botanical.com/botanical/mgmh/p/parsni12.html](http://www.botanical.com/botanical/mgmh/p/parsni12.html )
|
346
|
-
\[5\] E. Meijer, M. Fokkinga, R. Paterson. "Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire" (1991)
|
347
|
-
[http://citeseer.ist.psu.edu/meijer91functional.html](http://citeseer.ist.psu.edu/meijer91functional.html)
|
348
|
-
\[6\] R. Lammel, J. Visser, J. Kort. "Dealing with large bananas" (2000) <http://citeseer.ist.psu.edu/lammel00dealing.html>
|
349
|
-
\[7\] [http://www.informatik.uni-freiburg.de/~burgard/](http://citeseer.ist.psu.edu/lammel00dealing.html)
|
350
|
-
\[8\] [http://asl.epfl.ch/~scaramuz/cabaret/cabaret.wmv](http://asl.epfl.ch/~scaramuz/cabaret/cabaret.wmv)
|
351
|
-
\[9\] [http://www.anth.uconn.edu/faculty/boster/cultvar/euweb/](http://www.anth.uconn.edu/faculty/boster/cultvar/euweb/)
|
352
|
-
\[10\] [http://www.infonegocio.com/xeron/bruno/italy.html](http://www.infonegocio.com/xeron/bruno/italy.html)
|
data/tests/others/test.md
DELETED
data/tests/s5/s5profiling.md
DELETED
@@ -1,48 +0,0 @@
|
|
1
|
-
subtitle: news
|
2
|
-
author: Andrea Censi
|
3
|
-
company: Università La Sapienza
|
4
|
-
css: math.css
|
5
|
-
|
6
|
-
RDK news
|
7
|
-
========
|
8
|
-
|
9
|
-
Profiling
|
10
|
-
---------------------------------------------------------
|
11
|
-
|
12
|
-
1. `ragent2` writes profiling information on a pipe.
|
13
|
-
2. `rdk-profiler` reads the pipe and creates graphs in HTML+Javascript.
|
14
|
-
3. The user reads the data on a browser.
|
15
|
-
|
16
|
-
Things logged
|
17
|
-
-----------------------------------------------------------
|
18
|
-
|
19
|
-
17288397 1730000 0 16384 END pantiltClient
|
20
|
-
17288439 1730000 0 16384 START pantiltClient
|
21
|
-
17288564 1730000 0 16384 LOCK pantiltClient:tilt
|
22
|
-
17288622 1730000 0 16384 UNLOCK pantiltClient:tilt
|
23
|
-
|
24
|
-
* `START/END`: how much does it take to ...?
|
25
|
-
|
26
|
-
Footnotes 1/2
|
27
|
-
---------------------------------------------------
|
28
|
-
|
29
|
-
You can use footnotes [^1]
|
30
|
-
|
31
|
-
[^1]: And they work.
|
32
|
-
|
33
|
-
Footnotes 2/2
|
34
|
-
---------------------------------------------------
|
35
|
-
|
36
|
-
Each footnote on its page [^2]
|
37
|
-
|
38
|
-
[^2]: alone.
|
39
|
-
|
40
|
-
And now: math!
|
41
|
-
---------------------------------------------------
|
42
|
-
|
43
|
-
Consider, for example the group $\int_{a}^{b} x^{a} db$ of
|
44
|
-
|
45
|
-
\[ \alpha_{\beta}^{\gamma} \]
|
46
|
-
|
47
|
-
Unfortunately S5 and MathML are mutually exclusive.
|
48
|
-
See <http://meyerweb.com/eric/thoughts/category/tech/s5/> for explanations.
|
data/tests/unittest/bug_def.md
DELETED
@@ -1,28 +0,0 @@
|
|
1
|
-
Write a comment here
|
2
|
-
*** Parameters: ***
|
3
|
-
{} # params
|
4
|
-
*** Markdown input: ***
|
5
|
-
[test][]:
|
6
|
-
|
7
|
-
*** Output of inspect ***
|
8
|
-
md_el(:document,[md_par([md_link(["test"],"test"), ":"])],{},[])
|
9
|
-
*** Output of to_html ***
|
10
|
-
<p><span>test</span>:</p>
|
11
|
-
*** Output of to_latex ***
|
12
|
-
test:
|
13
|
-
*** Output of to_md ***
|
14
|
-
test:
|
15
|
-
*** Output of to_s ***
|
16
|
-
test:
|
17
|
-
*** EOF ***
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
OK!
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
*** Output of Markdown.pl ***
|
26
|
-
(not used anymore)
|
27
|
-
*** Output of Markdown.pl (parsed) ***
|
28
|
-
(not used anymore)
|