docgenerator-creole 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/examples/creole_example.rb +76 -0
- data/examples/creole_example_footnote.rb +66 -0
- data/examples/creole_example_new_plugin.rb +51 -0
- data/examples/creole_example_placeholder.rb +77 -0
- data/examples/creole_example_rail.rb +155 -0
- data/examples/creole_example_rubycode.rb +144 -0
- data/examples/creole_example_struktex.rb +170 -0
- data/examples/creole_example_tabular.rb +96 -0
- data/examples/creole_example_tikz.rb +47 -0
- data/lib/docgenerator-creole.rb +5 -0
- data/lib/docgenerator/creole.rb +15 -0
- data/lib/docgenerator/creole/base.rb +170 -0
- data/lib/docgenerator/creole/characters.rb +131 -0
- data/lib/docgenerator/creole/creole.rb +708 -0
- data/lib/docgenerator/creole/document.rb +91 -0
- data/lib/docgenerator/creole/inclusion_and_plugins.rb +91 -0
- data/lib/docgenerator/creole/inclusions.rb +148 -0
- data/lib/docgenerator/creole/placeholder.rb +242 -0
- data/lib/docgenerator/creole/plugins.rb +230 -0
- data/lib/docgenerator/creole/plugins/index.rb +61 -0
- data/lib/docgenerator/creole/plugins/rail.rb +179 -0
- data/lib/docgenerator/creole/plugins/rubycode4creole.rb +136 -0
- data/lib/docgenerator/creole/plugins/struktex.rb +60 -0
- data/lib/docgenerator/creole/plugins/tikz.rb +93 -0
- data/lib/docgenerator/creole/plugins/todonotes.rb +77 -0
- data/lib/docgenerator/creole/tabular.rb +405 -0
- data/readme.rdoc +44 -0
- data/unittest/Red_Flower.jpg +0 -0
- data/unittest/expected_creole/test_creole.html +3 -0
- data/unittest/expected_creole/test_creole_characters_all.creole +28 -0
- data/unittest/expected_creole/test_creole_characters_all.html +18 -0
- data/unittest/expected_creole/test_creole_characters_all.latex +36 -0
- data/unittest/expected_creole/test_creole_characters_special.html +10 -0
- data/unittest/expected_creole/test_creole_characters_special.latex +18 -0
- data/unittest/expected_creole/test_creole_comment.context +11 -0
- data/unittest/expected_creole/test_creole_comment.creole +12 -0
- data/unittest/expected_creole/test_creole_comment.html +9 -0
- data/unittest/expected_creole/test_creole_comment.latex +11 -0
- data/unittest/expected_creole/test_creole_countdown.html +3 -0
- data/unittest/expected_creole/test_creole_countdown.latex +4 -0
- data/unittest/expected_creole/test_creole_creole1.0test.html +182 -0
- data/unittest/expected_creole/test_creole_creole1.0test.latex +253 -0
- data/unittest/expected_creole/test_creole_creole1.0test.text +160 -0
- data/unittest/expected_creole/test_creole_footnotes.html +9 -0
- data/unittest/expected_creole/test_creole_footnotes.latex +14 -0
- data/unittest/expected_creole/test_creole_footnotes_groupid.html +15 -0
- data/unittest/expected_creole/test_creole_footnotes_label.html +9 -0
- data/unittest/expected_creole/test_creole_headings.html +17 -0
- data/unittest/expected_creole/test_creole_headings.latex +19 -0
- data/unittest/expected_creole/test_creole_headings.text +48 -0
- data/unittest/expected_creole/test_creole_headings.wiki +37 -0
- data/unittest/expected_creole/test_creole_hr.html +7 -0
- data/unittest/expected_creole/test_creole_hr.latex +9 -0
- data/unittest/expected_creole/test_creole_hr.text +4 -0
- data/unittest/expected_creole/test_creole_ignore.html +3 -0
- data/unittest/expected_creole/test_creole_ignore.latex +4 -0
- data/unittest/expected_creole/test_creole_ignore.text +2 -0
- data/unittest/expected_creole/test_creole_inline.html +3 -0
- data/unittest/expected_creole/test_creole_inline.latex +4 -0
- data/unittest/expected_creole/test_creole_inline.text +2 -0
- data/unittest/expected_creole/test_creole_inline_apostroph.html +7 -0
- data/unittest/expected_creole/test_creole_inline_apostroph.latex +9 -0
- data/unittest/expected_creole/test_creole_inline_apostroph.text +5 -0
- data/unittest/expected_creole/test_creole_inline_ruby.html +12 -0
- data/unittest/expected_creole/test_creole_inline_ruby.latex +20 -0
- data/unittest/expected_creole/test_creole_inline_ruby_raw.html +6 -0
- data/unittest/expected_creole/test_creole_inline_ruby_raw.latex +8 -0
- data/unittest/expected_creole/test_creole_input.normsource +22 -0
- data/unittest/expected_creole/test_creole_input.normsource_1.8 +23 -0
- data/unittest/expected_creole/test_creole_input_file_simple.html +15 -0
- data/unittest/expected_creole/test_creole_input_file_simple_readlines.html +15 -0
- data/unittest/expected_creole/test_creole_label.html +12 -0
- data/unittest/expected_creole/test_creole_label.latex +15 -0
- data/unittest/expected_creole/test_creole_line_break.html +6 -0
- data/unittest/expected_creole/test_creole_line_break.latex +8 -0
- data/unittest/expected_creole/test_creole_links_explicit_internal.html +6 -0
- data/unittest/expected_creole/test_creole_links_explicit_internal.text +4 -0
- data/unittest/expected_creole/test_creole_links_explicit_with_em.html +3 -0
- data/unittest/expected_creole/test_creole_links_explicit_with_em.latex +4 -0
- data/unittest/expected_creole/test_creole_links_explicit_with_em.text +2 -0
- data/unittest/expected_creole/test_creole_links_external.html +6 -0
- data/unittest/expected_creole/test_creole_links_external.latex +8 -0
- data/unittest/expected_creole/test_creole_links_external.text +4 -0
- data/unittest/expected_creole/test_creole_links_external_implicit.html +9 -0
- data/unittest/expected_creole/test_creole_links_external_implicit.latex +12 -0
- data/unittest/expected_creole/test_creole_links_external_implicit.text +6 -0
- data/unittest/expected_creole/test_creole_links_file.html +6 -0
- data/unittest/expected_creole/test_creole_links_file.latex +8 -0
- data/unittest/expected_creole/test_creole_links_file.text +4 -0
- data/unittest/expected_creole/test_creole_links_implicit_end.creole +4 -0
- data/unittest/expected_creole/test_creole_links_implicit_end.html +3 -0
- data/unittest/expected_creole/test_creole_links_implicit_end.latex +4 -0
- data/unittest/expected_creole/test_creole_list_ol.html +12 -0
- data/unittest/expected_creole/test_creole_list_ol.latex +22 -0
- data/unittest/expected_creole/test_creole_list_ol_after_ul.html +12 -0
- data/unittest/expected_creole/test_creole_list_ol_after_ul.latex +20 -0
- data/unittest/expected_creole/test_creole_list_ol_after_ul.text +6 -0
- data/unittest/expected_creole/test_creole_list_ol_ul.html +15 -0
- data/unittest/expected_creole/test_creole_list_ol_ul.latex +26 -0
- data/unittest/expected_creole/test_creole_list_ul.html +22 -0
- data/unittest/expected_creole/test_creole_list_ul.latex +40 -0
- data/unittest/expected_creole/test_creole_list_ul.normsource +85 -0
- data/unittest/expected_creole/test_creole_list_ul.normsource_1.8 +83 -0
- data/unittest/expected_creole/test_creole_list_ul_too_much.html +24 -0
- data/unittest/expected_creole/test_creole_list_ul_too_much.latex +44 -0
- data/unittest/expected_creole/test_creole_list_ulul_without_ul.html +6 -0
- data/unittest/expected_creole/test_creole_list_ulul_without_ul.latex +12 -0
- data/unittest/expected_creole/test_creole_mix_titles_list.html +10 -0
- data/unittest/expected_creole/test_creole_mix_titles_list.latex +18 -0
- data/unittest/expected_creole/test_creole_mix_titles_list.text +12 -0
- data/unittest/expected_creole/test_creole_newline.html +9 -0
- data/unittest/expected_creole/test_creole_newline.latex +11 -0
- data/unittest/expected_creole/test_creole_newline.text +7 -0
- data/unittest/expected_creole/test_creole_paragraphs.html +6 -0
- data/unittest/expected_creole/test_creole_paragraphs.latex +8 -0
- data/unittest/expected_creole/test_creole_paragraphs.normsource +26 -0
- data/unittest/expected_creole/test_creole_paragraphs.normsource_1.8 +27 -0
- data/unittest/expected_creole/test_creole_paragraphs.text +4 -0
- data/unittest/expected_creole/test_creole_paragraphs.wiki +4 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap.html +5 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap.latex +6 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap.text +4 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap.wiki +4 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap0.html +9 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap0.latex +11 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap0.text +7 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap0.wiki +7 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap60.html +5 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap60.latex +6 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap60.text +4 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap60.wiki +4 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap_with_linebreaks.html +5 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap_with_linebreaks.latex +6 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap_with_linebreaks.text +4 -0
- data/unittest/expected_creole/test_creole_paragraphs_wrap_with_linebreaks.wiki +4 -0
- data/unittest/expected_creole/test_creole_picture_link.html +6 -0
- data/unittest/expected_creole/test_creole_pictures.html +10 -0
- data/unittest/expected_creole/test_creole_pictures.latex +13 -0
- data/unittest/expected_creole/test_creole_pictures_css.html +6 -0
- data/unittest/expected_creole/test_creole_pictures_css.latex +8 -0
- data/unittest/expected_creole/test_creole_pictures_imgclass.html +6 -0
- data/unittest/expected_creole/test_creole_pictures_imgclass.latex +8 -0
- data/unittest/expected_creole/test_creole_pictures_longdesc.html +3 -0
- data/unittest/expected_creole/test_creole_pictures_width.html +3 -0
- data/unittest/expected_creole/test_creole_pictures_width.latex +4 -0
- data/unittest/expected_creole/test_creole_placeholders_html.html +7 -0
- data/unittest/expected_creole/test_creole_placeholders_html.latex +8 -0
- data/unittest/expected_creole/test_creole_placeholders_html.text +4 -0
- data/unittest/expected_creole/test_creole_placeholders_latex.html +6 -0
- data/unittest/expected_creole/test_creole_placeholders_latex.latex +9 -0
- data/unittest/expected_creole/test_creole_placeholders_latex.text +4 -0
- data/unittest/expected_creole/test_creole_short_html.html +3 -0
- data/unittest/expected_creole/test_creole_short_html.latex +4 -0
- data/unittest/expected_creole/test_creole_short_html.text +2 -0
- data/unittest/expected_creole/test_creole_shy.creole +6 -0
- data/unittest/expected_creole/test_creole_shy.html +6 -0
- data/unittest/expected_creole/test_creole_shy.latex +8 -0
- data/unittest/expected_creole/test_creole_shy.text +4 -0
- data/unittest/expected_creole/test_creole_tabular.creole +22 -0
- data/unittest/expected_creole/test_creole_tabular.html +20 -0
- data/unittest/expected_creole/test_creole_tabular.latex +22 -0
- data/unittest/expected_creole/test_creole_tabular_creole.creole +21 -0
- data/unittest/expected_creole/test_creole_tabular_creole.html +20 -0
- data/unittest/expected_creole/test_creole_tabular_creole.latex +21 -0
- data/unittest/expected_creole/test_creole_tabular_css.creole +24 -0
- data/unittest/expected_creole/test_creole_tabular_css.html +20 -0
- data/unittest/expected_creole/test_creole_tabular_css.latex +22 -0
- data/unittest/expected_creole/test_creole_tabular_multicols.creole +16 -0
- data/unittest/expected_creole/test_creole_tabular_multicols.html +14 -0
- data/unittest/expected_creole/test_creole_tabular_multicols.latex +16 -0
- data/unittest/expected_creole/test_creole_tabular_row_parameters.latex +22 -0
- data/unittest/expected_creole/test_creole_tabular_with_cell_option.creole +21 -0
- data/unittest/expected_creole/test_creole_tabular_with_cell_option.html +20 -0
- data/unittest/expected_creole/test_creole_toc.html +13 -0
- data/unittest/expected_creole/test_creole_toc.latex +22 -0
- data/unittest/expected_creole/test_creole_toc.text +4 -0
- data/unittest/expected_creole/test_creole_toc_level.html +7 -0
- data/unittest/expected_creole/test_creole_toc_level.latex +10 -0
- data/unittest/expected_creole/test_creole_toc_level.text +3 -0
- data/unittest/expected_creole/test_creole_toc_level_text.html +8 -0
- data/unittest/expected_creole/test_creole_toc_level_text.latex +9 -0
- data/unittest/expected_creole/test_creole_toc_text.html +5 -0
- data/unittest/expected_creole/test_creole_toc_text.latex +5 -0
- data/unittest/expected_creole/test_creole_ul_multiple_line.html +7 -0
- data/unittest/expected_creole/test_creole_ul_multiple_line.latex +14 -0
- data/unittest/expected_creole/test_creole_ul_with_blank.html +11 -0
- data/unittest/expected_creole/test_creole_ul_with_blank.latex +20 -0
- data/unittest/expected_creole/test_creole_ul_with_bold.creole +0 -0
- data/unittest/expected_creole/test_creole_ul_with_bold.html +11 -0
- data/unittest/expected_creole/test_creole_ul_with_bold.latex +18 -0
- data/unittest/expected_creole/test_creole_ul_with_bold.text +7 -0
- data/unittest/expected_creole/test_creole_verbatim.html +25 -0
- data/unittest/expected_creole/test_creole_verbatim.latex +33 -0
- data/unittest/expected_creole/test_creole_verbatim.text +17 -0
- data/unittest/expected_creole/test_creole_verbatim_inline.html +6 -0
- data/unittest/expected_creole/test_creole_verbatim_inline.latex +8 -0
- data/unittest/expected_creole/test_creole_verbatim_inline_at_start.html +6 -0
- data/unittest/expected_creole/test_creole_verbatim_inline_at_start.latex +8 -0
- data/unittest/expected_creole_rail/test_rail_creole_object.tex +33 -0
- data/unittest/expected_creole_rail/test_rail_creole_placeholder.tex +40 -0
- data/unittest/expected_rubycode4doc/creole_complete.html +26 -0
- data/unittest/expected_rubycode4doc/creole_complete.tex +40 -0
- data/unittest/expected_rubycode4doc/creole_in_tab.html +4 -0
- data/unittest/expected_rubycode4doc/creole_in_tab.tex +6 -0
- data/unittest/expected_rubycode4doc/creole_inline_ruby.html +7 -0
- data/unittest/expected_rubycode4doc/creole_output.html +2 -0
- data/unittest/expected_rubycode4doc/creole_output.tex +4 -0
- data/unittest/expected_rubycode4doc/creole_rubycode.html +1 -0
- data/unittest/expected_rubycode4doc/creole_rubycode.tex +3 -0
- data/unittest/expected_rubycode4doc/creole_rubycode_evaluated.html +1 -0
- data/unittest/expected_rubycode4doc/creole_rubycode_evaluated.tex +3 -0
- data/unittest/expected_rubycode4doc/creole_rubycode_evaluated_listings.html +3 -0
- data/unittest/expected_rubycode4doc/creole_rubycode_evaluated_listings.tex +5 -0
- data/unittest/unittest_creole.rb +1379 -0
- data/unittest/unittest_creole_placeholders.rb +161 -0
- data/unittest/unittest_creole_plugin_rail.rb +148 -0
- data/unittest/unittest_creole_plugin_rubycode4doc.rb +123 -0
- data/unittest/unittest_creole_plugin_struktex.rb +26 -0
- data/unittest/unittest_creole_tabular.rb +212 -0
- metadata +529 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
#encoding: cp1252
|
|
2
|
+
=begin rdoc
|
|
3
|
+
Example how to define a structogramm with creole2doc.
|
|
4
|
+
=end
|
|
5
|
+
|
|
6
|
+
require 'rubygems'
|
|
7
|
+
$:.unshift("../lib") #for local tests with uninstalled gem
|
|
8
|
+
require 'docgenerator-creole.rb'
|
|
9
|
+
require 'docgenerator/creole/plugins/struktex.rb'
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
begin
|
|
13
|
+
require 'rake4latex_pdflatex'
|
|
14
|
+
rescue LoadError
|
|
15
|
+
puts "rake4latex not installed -> no translation of LaTeX-file"
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
#
|
|
19
|
+
# Move all results to another folder
|
|
20
|
+
#
|
|
21
|
+
Dir.chdir('results')
|
|
22
|
+
|
|
23
|
+
doc = Docgenerator::Document.new(
|
|
24
|
+
:title => 'creole/plugins/struktex.rb - Structogramms with Creole2Doc',
|
|
25
|
+
#~ :shorttitle => 'struktex.rb',
|
|
26
|
+
:author => 'Knut Lickert',
|
|
27
|
+
:maketitle => true
|
|
28
|
+
)
|
|
29
|
+
doc.head << Docgenerator::Packages::Struktex::USEPACKAGE_STRUKTEX
|
|
30
|
+
doc.head << Docgenerator::Packages::Struktex::USEPACKAGE_STRUKTEX_PROOF
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
#Redefinition to_latex for this documentation.
|
|
34
|
+
#Result is structogramm and sourcecode.
|
|
35
|
+
class Docgenerator::Packages::Struktex::Structogramm
|
|
36
|
+
alias :old_latex :to_latex
|
|
37
|
+
def to_latex(options={})
|
|
38
|
+
return [self.verbatim.to_latex, self.old_latex(options)].join
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
doc.body << (Docgenerator::Creole::Creole.new( :content => <<WIKI
|
|
44
|
+
=Preamble=
|
|
45
|
+
Code2Structgramm.rb translates a pseudo-code programm
|
|
46
|
+
to TeX-code for the \\StrukTeX-package.
|
|
47
|
+
\\StrukTeX\\ creates Nassi-Shneidermann-diagramms.
|
|
48
|
+
|
|
49
|
+
There is no support by this generator for:
|
|
50
|
+
*Interface description
|
|
51
|
+
*Variables and Keywords
|
|
52
|
+
*Comments
|
|
53
|
+
|
|
54
|
+
=Example=
|
|
55
|
+
An example, based on a German Saying
|
|
56
|
+
''Der Krug geht solange zum Brunnen bis er bricht''
|
|
57
|
+
<<<structogramm|Krug;120;45
|
|
58
|
+
WHILE Krug nicht zerbrochen
|
|
59
|
+
Krug geht zum Brunnen
|
|
60
|
+
ENDWHILE
|
|
61
|
+
Qualit�tspr�fung
|
|
62
|
+
-> Krug Testgut
|
|
63
|
+
<- res_1 Pr�fergebnis
|
|
64
|
+
IF Krug zerbrochen
|
|
65
|
+
THEN
|
|
66
|
+
Schade
|
|
67
|
+
ELSE
|
|
68
|
+
Stabiler Krug
|
|
69
|
+
ENDIF
|
|
70
|
+
>>>
|
|
71
|
+
|
|
72
|
+
=Statements=
|
|
73
|
+
No support for:
|
|
74
|
+
*Height
|
|
75
|
+
|
|
76
|
+
<<<structogramm|Simple Statements;120;30
|
|
77
|
+
Statement
|
|
78
|
+
=> Call procedure
|
|
79
|
+
<> Return value
|
|
80
|
+
<= Exit with return value
|
|
81
|
+
>>>
|
|
82
|
+
|
|
83
|
+
==Declarations==
|
|
84
|
+
With declarations you can define interfaces of sub-routines.
|
|
85
|
+
This declarations are part of the command
|
|
86
|
+
<<<structogramm|Declarations/Interfaces;120;25
|
|
87
|
+
Statement
|
|
88
|
+
-> field1 description
|
|
89
|
+
<- field2 description
|
|
90
|
+
<-> field3 description
|
|
91
|
+
>>>
|
|
92
|
+
|
|
93
|
+
==IF-Statement==
|
|
94
|
+
IF Condition
|
|
95
|
+
THEN size text
|
|
96
|
+
ELSE size text
|
|
97
|
+
ENDIF
|
|
98
|
+
<<<structogramm|Test f�r IF;120;40
|
|
99
|
+
IF Bedingung?
|
|
100
|
+
THEN 6 Ja
|
|
101
|
+
IF Andere Frage?
|
|
102
|
+
THEN
|
|
103
|
+
<= Ergebnis
|
|
104
|
+
ELSE
|
|
105
|
+
<= Anderes Ergebnis
|
|
106
|
+
ENDIF
|
|
107
|
+
ELSE 6 Nein
|
|
108
|
+
IF Andere Frage?
|
|
109
|
+
THEN 4
|
|
110
|
+
<= Ergebnis
|
|
111
|
+
ELSE 5
|
|
112
|
+
<= Anderes Ergebnis
|
|
113
|
+
ENDIF
|
|
114
|
+
ENDIF
|
|
115
|
+
>>>
|
|
116
|
+
|
|
117
|
+
==CASE-statements==
|
|
118
|
+
The first number after CASE defines the degree of the case-line.
|
|
119
|
+
|
|
120
|
+
The WHEN clause has an optional parameter:
|
|
121
|
+
*c centered
|
|
122
|
+
*r right-aligned
|
|
123
|
+
<<<structogramm|CASE Statements;120;40
|
|
124
|
+
CASE 5 variable
|
|
125
|
+
WHEN value1
|
|
126
|
+
Statement 1-1
|
|
127
|
+
Statement 1-2
|
|
128
|
+
WHEN[r] value2
|
|
129
|
+
Statement 2-1
|
|
130
|
+
Statement 2-2
|
|
131
|
+
WHEN[c] value3
|
|
132
|
+
Statement 3-1
|
|
133
|
+
Statement 3-2
|
|
134
|
+
WHEN value4
|
|
135
|
+
Statement 4-1
|
|
136
|
+
Statement 4-2
|
|
137
|
+
ENDCASE
|
|
138
|
+
>>>
|
|
139
|
+
==While-statements==
|
|
140
|
+
<<<structogramm|While Statements;120;15
|
|
141
|
+
WHILE Condition
|
|
142
|
+
Statement
|
|
143
|
+
ENDWHILE
|
|
144
|
+
>>>
|
|
145
|
+
|
|
146
|
+
==Repeat-Until-statements==
|
|
147
|
+
<<<structogramm|Repeat-Until Statements;120;15
|
|
148
|
+
REPEAT
|
|
149
|
+
Statement
|
|
150
|
+
UNTIL Condition
|
|
151
|
+
>>>
|
|
152
|
+
|
|
153
|
+
==FOREVER-Loop-statements==
|
|
154
|
+
<<<structogramm|FOREVER-Loop Statements;120;30
|
|
155
|
+
FOREVER
|
|
156
|
+
Statement
|
|
157
|
+
<= Exit
|
|
158
|
+
ENDFOREVER
|
|
159
|
+
>>>
|
|
160
|
+
|
|
161
|
+
WIKI
|
|
162
|
+
))
|
|
163
|
+
|
|
164
|
+
# ###############################
|
|
165
|
+
# Save the files
|
|
166
|
+
# ###############
|
|
167
|
+
#~ doc.save( __FILE__.sub(/\.rb/, ".html")) #makes no sense
|
|
168
|
+
doc.save( __FILE__.sub(/\.rb/, ".tex"),
|
|
169
|
+
:runtex => [:statistic, :clean]
|
|
170
|
+
)
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
#encoding: cp1252
|
|
2
|
+
=begin rdoc
|
|
3
|
+
Example for creole/creole2doc
|
|
4
|
+
=end
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
require 'rubygems'
|
|
8
|
+
$:.unshift("../lib") #for local tests with uninstalled gem
|
|
9
|
+
#~ require 'docgenerator'
|
|
10
|
+
require 'docgenerator/creole'
|
|
11
|
+
|
|
12
|
+
begin
|
|
13
|
+
require 'rake4latex_pdflatex'
|
|
14
|
+
rescue LoadError
|
|
15
|
+
puts "rake4latex not installed -> no translation of LaTeX-file"
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
#
|
|
19
|
+
# Move all results to anothe folder
|
|
20
|
+
#
|
|
21
|
+
Dir.chdir('results')
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
=begin
|
|
25
|
+
Create document
|
|
26
|
+
=end
|
|
27
|
+
doc = Docgenerator::Document.new(
|
|
28
|
+
:title => 'creole2doc_example_tabular.rb: Test for tabulars with creole'
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
=begin
|
|
32
|
+
Add creole-content.
|
|
33
|
+
=end
|
|
34
|
+
doc.body << Docgenerator::Creole::Creole.new(:content => DATA)
|
|
35
|
+
|
|
36
|
+
# ###############################
|
|
37
|
+
# Save the files
|
|
38
|
+
# ###############
|
|
39
|
+
doc.save( __FILE__.sub(/\.rb/, ".html"))
|
|
40
|
+
doc.save( __FILE__.sub(/\.rb/, ".tex"),
|
|
41
|
+
:runtex => [:statistic, :clean]
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
__END__
|
|
46
|
+
=Normal tabular
|
|
47
|
+
|
|
48
|
+
|one | two
|
|
49
|
+
|1 | 2
|
|
50
|
+
|1.0 | 2.0
|
|
51
|
+
|
|
52
|
+
==tabular with heading
|
|
53
|
+
|=header col1|=header col2|
|
|
54
|
+
|col1|col2|
|
|
55
|
+
|you |can |
|
|
56
|
+
|also |align\\ it. |
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
=tabular as placeholder
|
|
60
|
+
<<<tabular
|
|
61
|
+
|!columns=3
|
|
62
|
+
|!columndescription=ccc
|
|
63
|
+
|=1
|
|
64
|
+
|=2
|
|
65
|
+
|=3
|
|
66
|
+
|-|hline
|
|
67
|
+
|eins
|
|
68
|
+
|zwei
|
|
69
|
+
|drei
|
|
70
|
+
|-
|
|
71
|
+
|one
|
|
72
|
+
|two
|
|
73
|
+
|three
|
|
74
|
+
>>>
|
|
75
|
+
|
|
76
|
+
=tabular with cell option
|
|
77
|
+
|
|
78
|
+
After || you may define special data
|
|
79
|
+
|
|
80
|
+
<<<tabular
|
|
81
|
+
|!columns=3
|
|
82
|
+
|!columndescription=ccc
|
|
83
|
+
|eins||css=color: red
|
|
84
|
+
|css = zwei
|
|
85
|
+
|||class=empty
|
|
86
|
+
|-
|
|
87
|
+
|normal
|
|
88
|
+
|//italic//
|
|
89
|
+
|//italic//||class=it
|
|
90
|
+
|-
|
|
91
|
+
|text with | nice! ||class = it
|
|
92
|
+
|||css =
|
|
93
|
+
|
|
|
94
|
+
>>>
|
|
95
|
+
|
|
96
|
+
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
=begin rdoc
|
|
2
|
+
Example how to create rail-diagramms (syntax diagrams specified in EBNF)
|
|
3
|
+
with creole2doc.
|
|
4
|
+
|
|
5
|
+
This examples needs _rail_:
|
|
6
|
+
* http://texcatalogue.sarovar.org/entries/rail.html
|
|
7
|
+
* http://www.dante.ctan.org/tex-archive/support/rail/
|
|
8
|
+
* http://tex.lickert.net/tipps/rail/index.html
|
|
9
|
+
|
|
10
|
+
=end
|
|
11
|
+
$:.unshift '../lib'
|
|
12
|
+
require 'docgenerator/creole'
|
|
13
|
+
require 'docgenerator/creole/plugins/tikz.rb'
|
|
14
|
+
include Docgenerator
|
|
15
|
+
|
|
16
|
+
begin
|
|
17
|
+
require 'rake4latex_pdflatex'
|
|
18
|
+
rescue LoadError
|
|
19
|
+
puts "rake4latex not installed -> no translation of LaTeX-file"
|
|
20
|
+
end
|
|
21
|
+
#
|
|
22
|
+
# Move all results to another folder
|
|
23
|
+
#7
|
|
24
|
+
Dir.chdir('results')
|
|
25
|
+
|
|
26
|
+
doc = Creole::Creole_document.new(
|
|
27
|
+
:title => 'Tikz-images in Creole'
|
|
28
|
+
)
|
|
29
|
+
doc.doc.head << element(:usepackage,{}, 'tikz').cr
|
|
30
|
+
|
|
31
|
+
doc << DATA
|
|
32
|
+
|
|
33
|
+
# ###############################
|
|
34
|
+
# Save the files
|
|
35
|
+
# ###############
|
|
36
|
+
#~ doc.save( __FILE__.sub(/\.rb/, ".html")) --> makes no sense
|
|
37
|
+
doc.save( __FILE__.sub(/\.rb/, ".tex"),
|
|
38
|
+
:runtex => [:statistic, :clean]
|
|
39
|
+
#~ :runtex => [:statistic] #keep log...
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
__END__
|
|
43
|
+
<<<tikz_img|../../unittest/Red_Flower.jpg|remember picture|width=\textwidth
|
|
44
|
+
\node[red,rounded corners,draw] at (.8,.7) (source) {1};
|
|
45
|
+
>>>
|
|
46
|
+
* (1) Blossom<<tikz|\draw[<-,red,ultra thick] (0,0) -- (source);>>
|
|
47
|
+
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
#encoding: utf-8
|
|
2
|
+
=begin rdoc
|
|
3
|
+
=Background
|
|
4
|
+
The docgenerator-gem create documents with export feature as
|
|
5
|
+
LaTeX, HTML, Creole (a common wiki markup, see http://www.wikicreole.org ),
|
|
6
|
+
conTeXt (only rudimentory),
|
|
7
|
+
plain text (not very good supported).
|
|
8
|
+
|
|
9
|
+
This gem extends the docgenerator-gem with a Creole-parser.
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
#~ gem 'docgenerator', '~> 3'
|
|
14
|
+
require 'docgenerator' #unless defined? Docgenerator
|
|
15
|
+
require_relative 'creole/base.rb'
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
#encoding: utf-8
|
|
2
|
+
=begin rdoc
|
|
3
|
+
This is a Creole-to-Docgenerator converter.
|
|
4
|
+
The Docgenerator-data can be exported as
|
|
5
|
+
- HTML
|
|
6
|
+
- LaTeX
|
|
7
|
+
- Creole
|
|
8
|
+
- Plain text
|
|
9
|
+
|
|
10
|
+
For another Creole-to-XHTML converter see
|
|
11
|
+
https://rubyforge.org/projects/wikicreole/
|
|
12
|
+
|
|
13
|
+
More about creole at http://www.wikicreole.org/
|
|
14
|
+
=end
|
|
15
|
+
|
|
16
|
+
module Docgenerator
|
|
17
|
+
|
|
18
|
+
=begin rdoc
|
|
19
|
+
Collect the classes to handle Creole-input.
|
|
20
|
+
|
|
21
|
+
More about creole at http://www.wikicreole.org/
|
|
22
|
+
=end
|
|
23
|
+
module Creole
|
|
24
|
+
VERSION = '3.0.0'
|
|
25
|
+
|
|
26
|
+
#Little structure to store the parsing result.
|
|
27
|
+
Creole_line = Struct.new('Creole_line', :type, :content, :add_info)
|
|
28
|
+
|
|
29
|
+
#Hash with Characters.
|
|
30
|
+
#This characters will be converted into elements.
|
|
31
|
+
CHARACTERS = {
|
|
32
|
+
'%' => element(:'%'),
|
|
33
|
+
'$' => element(:'$'),
|
|
34
|
+
'&' => element(:ampersand),
|
|
35
|
+
'->' => element(:rightarrow),
|
|
36
|
+
'=>' => element(:Rightarrow),
|
|
37
|
+
'<-' => element(:leftarrow),
|
|
38
|
+
'<=' => element(:Leftarrow),
|
|
39
|
+
'_' => element(:underscore),
|
|
40
|
+
'…' => element(:ldots),
|
|
41
|
+
'‚' => element(:sbquo), # einfaches low-9-Zeichen, U+201A , ‚
|
|
42
|
+
'’' => element(:rsquo), #'zu ’
|
|
43
|
+
'„' => element(:bdquo), #"auf „ #bottom double quote
|
|
44
|
+
'“' => element(:ldquo), #"zu “ #left double quote
|
|
45
|
+
'”' => element(:rdquo), #right double quote
|
|
46
|
+
'–' => element(:ndash), # –
|
|
47
|
+
'—' => element(:mdash), # –
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
=begin rdoc
|
|
51
|
+
Add a quick online-help.
|
|
52
|
+
=end
|
|
53
|
+
def self.help( option = :syntax)
|
|
54
|
+
hlp = []
|
|
55
|
+
hlp << "==Creole help #{option}"
|
|
56
|
+
case option
|
|
57
|
+
when :syntax
|
|
58
|
+
hlp << <<Syntax
|
|
59
|
+
Headings:
|
|
60
|
+
= Level 1 (largest) =
|
|
61
|
+
== Level 2 ==
|
|
62
|
+
see also Creole.help(:headings)
|
|
63
|
+
|
|
64
|
+
Bold And Italics:
|
|
65
|
+
** Bold
|
|
66
|
+
// Italics
|
|
67
|
+
You can close them. If not, the markup end with the paragraph.
|
|
68
|
+
|
|
69
|
+
Links: See Creole.help(:links)
|
|
70
|
+
Syntax
|
|
71
|
+
when :creole
|
|
72
|
+
hlp << <<creole
|
|
73
|
+
docgenerator/creole has some special features:
|
|
74
|
+
*headings allows labels ([key] direct after the =)
|
|
75
|
+
*line breaks are ignored, the text is wrapped.
|
|
76
|
+
(you can set it off with option :wrap_at => 0)
|
|
77
|
+
creole
|
|
78
|
+
when :headings
|
|
79
|
+
hlp << <<headings
|
|
80
|
+
Headings:
|
|
81
|
+
= Level 1 (largest) =
|
|
82
|
+
== Level 2 ==
|
|
83
|
+
=== Level 3 ===
|
|
84
|
+
==== Level 4 ====
|
|
85
|
+
===== Level 5 =====
|
|
86
|
+
====== Level 6 ======
|
|
87
|
+
=== Also level 3
|
|
88
|
+
=== Also level 3 =
|
|
89
|
+
=== Also level 3 ==
|
|
90
|
+
=== **not** //parsed// ===
|
|
91
|
+
Headings with label:
|
|
92
|
+
=[lev1] Level 1 (largest) =
|
|
93
|
+
==[lev1.1] Level 2 ==
|
|
94
|
+
|
|
95
|
+
The content is not parsed.
|
|
96
|
+
Details see http://www.wikicreole.org/wiki/Headings
|
|
97
|
+
headings
|
|
98
|
+
when :links
|
|
99
|
+
hlp << <<links
|
|
100
|
+
Explicit:
|
|
101
|
+
* [[http://ruby.lickert.net/docgenerator]]
|
|
102
|
+
* [[http://ruby.lickert.net/docgenerator|Details on docgenerator.rb]]
|
|
103
|
+
|
|
104
|
+
Implicit:
|
|
105
|
+
* http://ruby.lickert.net/docgenerator
|
|
106
|
+
links
|
|
107
|
+
when :tabular
|
|
108
|
+
hlp << <<tabular
|
|
109
|
+
Wikimedia-like syntax:
|
|
110
|
+
<<<tabular
|
|
111
|
+
|!columns=3
|
|
112
|
+
|!columndescription=ccc
|
|
113
|
+
|=1
|
|
114
|
+
|=2
|
|
115
|
+
|=3
|
|
116
|
+
|-
|
|
117
|
+
|eins
|
|
118
|
+
|zwei
|
|
119
|
+
|drei
|
|
120
|
+
|-
|
|
121
|
+
|one
|
|
122
|
+
|two
|
|
123
|
+
|three
|
|
124
|
+
>>>
|
|
125
|
+
tabular
|
|
126
|
+
else
|
|
127
|
+
hlp << "Undefined help for #{option.inspect}"
|
|
128
|
+
end
|
|
129
|
+
return hlp.join("\n")
|
|
130
|
+
end #self.help
|
|
131
|
+
|
|
132
|
+
=begin
|
|
133
|
+
Load sub-classes.
|
|
134
|
+
=end
|
|
135
|
+
require_relative 'placeholder.rb'
|
|
136
|
+
require_relative 'tabular.rb'
|
|
137
|
+
require_relative 'inclusion_and_plugins.rb'
|
|
138
|
+
require_relative 'inclusions.rb'
|
|
139
|
+
require_relative 'characters.rb' #defined as inclusions
|
|
140
|
+
require_relative 'plugins.rb'
|
|
141
|
+
|
|
142
|
+
require_relative 'document.rb'
|
|
143
|
+
require_relative 'creole.rb'
|
|
144
|
+
|
|
145
|
+
end #module Creole
|
|
146
|
+
end #module Docgenerator
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
if [__FILE__ ].include?($0)
|
|
150
|
+
|
|
151
|
+
[
|
|
152
|
+
:syntax,
|
|
153
|
+
:creole,
|
|
154
|
+
:wikimedia,
|
|
155
|
+
:trippfall,
|
|
156
|
+
:headings,
|
|
157
|
+
:links,
|
|
158
|
+
].each{|key|
|
|
159
|
+
puts '='*50
|
|
160
|
+
puts Docgenerator::Creole::Creole.help(key)
|
|
161
|
+
puts '='*50
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
creole = Docgenerator::Creole::Creole.new
|
|
165
|
+
creole << 'x{{-}}y{{-}}z'
|
|
166
|
+
creole << 'x{{shy}}y{{shy}}z'
|
|
167
|
+
creole << ''
|
|
168
|
+
creole << '{{../index.html#aa}}'
|
|
169
|
+
puts creole.to_html
|
|
170
|
+
end
|