dokkit 0.3.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +5 -0
- data/Manifest.txt +90 -105
- data/README.txt +27 -7
- data/Rakefile +2 -3
- data/bin/dokkit +3 -2
- data/lib/dokkit/application.rb +159 -0
- data/lib/dokkit/cache/cache.rb +53 -0
- data/lib/dokkit/{models/simpledocument/model/Rakefile → cache.rb} +3 -15
- data/lib/dokkit/environment/basic.rb +156 -0
- data/lib/dokkit/environment/helpers/extmap.rb +29 -0
- data/lib/dokkit/environment/helpers/fileselection.rb +53 -0
- data/lib/dokkit/environment/helpers.rb +20 -0
- data/{spec/data/test_build/Rakefile → lib/dokkit/environment.rb} +4 -15
- data/lib/dokkit/factory/factory.rb +56 -0
- data/lib/dokkit/factory.rb +9 -0
- data/lib/dokkit/filters/deplate.rb +25 -20
- data/lib/dokkit/filters/maruku.rb +6 -5
- data/lib/dokkit/filters/nil.rb +7 -6
- data/lib/dokkit/filters.rb +5 -27
- data/lib/dokkit/hash.rb +82 -0
- data/lib/dokkit/{logger.rb → logging/logger.rb} +30 -24
- data/lib/dokkit/logging/observers/console.rb +52 -0
- data/lib/dokkit/{extension/extension.rb → logging/observers.rb} +7 -5
- data/lib/dokkit/logging.rb +11 -0
- data/lib/dokkit/models/simple/Rakefile +6 -0
- data/lib/dokkit/models/simple/doc/data/html/css/style.css +3 -0
- data/lib/dokkit/models/simple/doc/data/latex/deplate.sty +46 -0
- data/lib/dokkit/models/simple/doc/layouts/simple.html +9 -0
- data/lib/dokkit/models/simple/doc/layouts/simple.latex +11 -0
- data/lib/dokkit/models/simple/doc/pages/simple.deplate +80 -0
- data/lib/dokkit/models/simple/setup/setup.rb +10 -0
- data/lib/dokkit/resource/data.rb +36 -0
- data/lib/dokkit/resource/document.rb +385 -0
- data/lib/dokkit/resource/extensions/builtin.rb +19 -0
- data/lib/dokkit/resource/extensions/html.rb +22 -0
- data/lib/dokkit/resource/extensions/url.rb +25 -0
- data/lib/dokkit/{filters/base.rb → resource/extensions.rb} +7 -8
- data/lib/dokkit/resource/filenamehelper.rb +28 -0
- data/lib/dokkit/resource.rb +11 -0
- data/lib/dokkit/tasklib/clean.rb +73 -0
- data/lib/dokkit/tasklib/render.rb +137 -0
- data/lib/dokkit/tasklib.rb +11 -0
- data/lib/dokkit.rb +26 -29
- data/spec/dokkit/application_spec.rb +141 -0
- data/spec/dokkit/cache/cache_spec.rb +87 -0
- data/spec/dokkit/dokkit_spec.rb +20 -0
- data/spec/dokkit/environment/basic_spec.rb +135 -0
- data/spec/dokkit/environment/helpers/extmap_spec.rb +52 -0
- data/spec/dokkit/environment/helpers/fileselection_spec.rb +80 -0
- data/spec/dokkit/environment/test_data/doc/pages/document_1.yaml +3 -0
- data/spec/dokkit/factory/factory_spec.rb +69 -0
- data/spec/{filter_deplate_spec.rb → dokkit/filters/deplate_spec.rb} +7 -8
- data/spec/{filter_maruku_spec.rb → dokkit/filters/maruku_spec.rb} +3 -4
- data/spec/{filter_nil_spec.rb → dokkit/filters/nil_spec.rb} +3 -4
- data/spec/{recursivemerge_spec.rb → dokkit/hash_spec.rb} +25 -27
- data/spec/{logger_spec.rb → dokkit/logging/logger_spec.rb} +35 -47
- data/spec/{consolelog_spec.rb → dokkit/logging/observers/console_spec.rb} +14 -15
- data/spec/dokkit/resource/data_spec.rb +32 -0
- data/spec/dokkit/resource/document_spec.rb +485 -0
- data/spec/dokkit/resource/extensions/html_spec.rb +35 -0
- data/spec/dokkit/resource/extensions/url_spec.rb +29 -0
- data/spec/{filehelper_spec.rb → dokkit/resource/filenamehelper_spec.rb} +12 -13
- data/spec/dokkit/resource/test_data/doc/configs/config_1.yaml +3 -0
- data/spec/dokkit/resource/test_data/doc/configs/config_2.yaml +3 -0
- data/spec/dokkit/resource/test_data/doc/configs/required.yaml +3 -0
- data/spec/dokkit/resource/test_data/doc/configs/subdir/document.yaml +3 -0
- data/spec/dokkit/resource/test_data/doc/layouts/container.html +6 -0
- data/spec/dokkit/resource/test_data/doc/layouts/layout.html +6 -0
- data/spec/{data/test_build/doc/layouts → dokkit/resource/test_data/doc/layouts/nested}/nested.html +2 -1
- data/spec/dokkit/resource/test_data/doc/layouts/subdir/document.html +6 -0
- data/spec/dokkit/resource/test_data/doc/pages/COMMON.yaml +4 -0
- data/spec/dokkit/resource/test_data/doc/pages/document_with_many_config.ext +7 -0
- data/spec/dokkit/resource/test_data/doc/pages/document_with_many_errors.ext +12 -0
- data/spec/dokkit/resource/test_data/doc/pages/document_with_many_targets.ext +19 -0
- data/spec/dokkit/resource/test_data/doc/pages/document_with_nested_layout.ext +13 -0
- data/spec/dokkit/resource/test_data/doc/pages/document_with_nil_target.ext +5 -0
- data/spec/dokkit/resource/test_data/doc/pages/document_with_not_defined_target.ext +6 -0
- data/spec/dokkit/resource/test_data/doc/pages/document_with_one_target.ext +8 -0
- data/spec/dokkit/resource/test_data/doc/pages/subdir/COMMON.yaml +3 -0
- data/spec/dokkit/resource/test_data/doc/pages/subdir/document.ext +8 -0
- data/spec/dokkit/resource/test_data/doc/pages/subdir/document.yaml +5 -0
- data/spec/dokkit/tasklib/clean_spec.rb +75 -0
- data/spec/dokkit/tasklib/render_spec.rb +125 -0
- data/spec/dokkit/tasklib/test_data/doc/pages/document_2 +0 -0
- data/spec/dokkit/test_data/dokkit/models/model1/doc/pages/model1 +0 -0
- data/spec/dokkit/test_data/dokkit/models/model2/doc/pages/model2 +0 -0
- data/spec/spec.opts +4 -0
- data/spec/spec_helper.rb +120 -47
- metadata +94 -117
- data/lib/dokkit/app.rb +0 -131
- data/lib/dokkit/builtintask.rb +0 -85
- data/lib/dokkit/cachemanager.rb +0 -61
- data/lib/dokkit/cleantask.rb +0 -51
- data/lib/dokkit/consolelog.rb +0 -42
- data/lib/dokkit/defaults.rb +0 -19
- data/lib/dokkit/deplate/fmt/html-notemplate.rb +0 -21
- data/lib/dokkit/deplate/fmt/latex-notemplate.rb +0 -24
- data/lib/dokkit/document.rb +0 -221
- data/lib/dokkit/dokkitlib.rb +0 -68
- data/lib/dokkit/extension/filehelper.rb +0 -25
- data/lib/dokkit/fileselection.rb +0 -44
- data/lib/dokkit/filters/all.rb +0 -18
- data/lib/dokkit/model.rb +0 -34
- data/lib/dokkit/models/simpledocument/model/doc/layouts/simpledocument.html +0 -9
- data/lib/dokkit/models/simpledocument/model/doc/pages/simpledocument.deplate +0 -102
- data/lib/dokkit/models/simpledocument/model/tasks/all.rb +0 -3
- data/lib/dokkit/models/simpledocument/model/tasks/clean.rake +0 -3
- data/lib/dokkit/models/simpledocument/model/tasks/render.rake +0 -8
- data/lib/dokkit/models/simpledocument/model/tasks/setup.rb +0 -9
- data/lib/dokkit/modeltask.rb +0 -83
- data/lib/dokkit/pathhelper.rb +0 -46
- data/lib/dokkit/recursivemerge.rb +0 -59
- data/lib/dokkit/rendertask.rb +0 -101
- data/lib/dokkit/resourcemanager.rb +0 -177
- data/lib/dokkit/taskconfig.rb +0 -39
- data/lib/dokkit/templatetask.rb +0 -37
- data/spec/app_spec.rb +0 -55
- data/spec/builtintask_spec.rb +0 -114
- data/spec/cachemanager_spec.rb +0 -107
- data/spec/cleantask_spec.rb +0 -72
- data/spec/data/test_build/doc/configs/document_1.yaml +0 -3
- data/spec/data/test_build/doc/configs/required.yaml +0 -3
- data/spec/data/test_build/doc/configs/subdir/document_4.yaml +0 -3
- data/spec/data/test_build/doc/layouts/document_1.html +0 -9
- data/spec/data/test_build/doc/layouts/document_with_partials.html +0 -9
- data/spec/data/test_build/doc/layouts/layout.html +0 -8
- data/spec/data/test_build/doc/layouts/layout.html.backup +0 -8
- data/spec/data/test_build/doc/layouts/partials/partial.html +0 -4
- data/spec/data/test_build/doc/pages/COMMON.yaml +0 -6
- data/spec/data/test_build/doc/pages/document_1 +0 -20
- data/spec/data/test_build/doc/pages/document_1.dep +0 -4
- data/spec/data/test_build/doc/pages/document_1.yaml +0 -11
- data/spec/data/test_build/doc/pages/document_2 +0 -9
- data/spec/data/test_build/doc/pages/document_2.yaml +0 -6
- data/spec/data/test_build/doc/pages/document_3 +0 -13
- data/spec/data/test_build/doc/pages/document_7 +0 -4
- data/spec/data/test_build/doc/pages/document_7.yaml +0 -5
- data/spec/data/test_build/doc/pages/document_extended +0 -1
- data/spec/data/test_build/doc/pages/document_nested +0 -6
- data/spec/data/test_build/doc/pages/document_nested.yaml +0 -5
- data/spec/data/test_build/doc/pages/document_nolayout.ext +0 -3
- data/spec/data/test_build/doc/pages/document_nolayout.yaml +0 -2
- data/spec/data/test_build/doc/pages/document_with_partials +0 -3
- data/spec/data/test_build/doc/pages/document_with_partials.yaml +0 -2
- data/spec/data/test_build/doc/pages/partials/COMMON.yaml +0 -5
- data/spec/data/test_build/doc/pages/partials/circular_partial +0 -2
- data/spec/data/test_build/doc/pages/partials/circular_partial.yaml +0 -3
- data/spec/data/test_build/doc/pages/partials/partial +0 -2
- data/spec/data/test_build/doc/pages/subdir/COMMON.yaml +0 -2
- data/spec/data/test_build/doc/pages/subdir/document_4 +0 -11
- data/spec/data/test_build/doc/pages/subdir/subdir/COMMON.yaml +0 -2
- data/spec/data/test_build/doc/pages/subdir/subdir/document_6 +0 -3
- data/spec/data/test_build/tasks/all.rb +0 -3
- data/spec/data/test_build/tasks/clean.rake +0 -3
- data/spec/data/test_build/tasks/render.rake +0 -8
- data/spec/data/test_build/tasks/setup.rb +0 -9
- data/spec/data/test_build/tasks/template.rake +0 -3
- data/spec/document_spec.rb +0 -321
- data/spec/dokkitlib_spec.rb +0 -63
- data/spec/fileselection_spec.rb +0 -101
- data/spec/filter_base_spec.rb +0 -29
- data/spec/filters_spec.rb +0 -37
- data/spec/model_spec.rb +0 -45
- data/spec/pathhelper_spec.rb +0 -62
- data/spec/rendertask_spec.rb +0 -374
- data/spec/taskconfig_spec.rb +0 -45
- data/spec/templatetask_spec.rb +0 -72
- /data/lib/dokkit/models/{simpledocument/model/doc/configs/simpledocument.yaml → simple/doc/configs/simple.yaml} +0 -0
- /data/lib/dokkit/models/{simpledocument/model/doc/layouts/simpledocument.text → simple/doc/layouts/simple.text} +0 -0
- /data/{lib/dokkit/models/simpledocument/model/doc/data/css/style.css → spec/dokkit/environment/helpers/test_data/doc/pages/document_1.ext_1} +0 -0
- /data/spec/{data/test_build/doc/data/resource → dokkit/environment/helpers/test_data/doc/pages/document_2} +0 -0
- /data/spec/{data/test_build/doc/data/resource.exclude → dokkit/environment/helpers/test_data/doc/pages/document_3.ext_3} +0 -0
- /data/spec/{data/test_build/doc/data/subdir/resource.insubdir → dokkit/environment/test_data/doc/data/data} +0 -0
- /data/spec/{data/test_build/doc/layouts/layout → dokkit/environment/test_data/doc/pages/document_1} +0 -0
- /data/spec/{data/test_build/doc/pages/document_2.dep → dokkit/environment/test_data/doc/pages/document_2} +0 -0
- /data/spec/{data/test_build/doc/pages/document_5.exclude → dokkit/environment/test_data/doc/pages/subdir/document_1} +0 -0
- /data/{lib/dokkit/models/simpledocument/model/doc/layouts/simpledocument.latex → spec/dokkit/resource/test_data/doc/layouts/layout.latex} +0 -0
- /data/spec/{data/test_build/doc/layouts/document_1.latex → dokkit/resource/test_data/doc/layouts/subdir/document.latex} +0 -0
- /data/spec/{data/test_build/templates/layouts/layout → dokkit/tasklib/test_data/doc/data/data_1} +0 -0
- /data/spec/{data/test_build/templates/pages/template → dokkit/tasklib/test_data/doc/pages/document_1} +0 -0
data/History.txt
CHANGED
data/Manifest.txt
CHANGED
@@ -4,115 +4,101 @@ README.txt
|
|
4
4
|
Rakefile
|
5
5
|
bin/dokkit
|
6
6
|
lib/dokkit.rb
|
7
|
-
lib/dokkit/
|
8
|
-
lib/dokkit/
|
9
|
-
lib/dokkit/
|
10
|
-
lib/dokkit/
|
11
|
-
lib/dokkit/
|
12
|
-
lib/dokkit/
|
13
|
-
lib/dokkit/
|
14
|
-
lib/dokkit/
|
15
|
-
lib/dokkit/
|
16
|
-
lib/dokkit/
|
17
|
-
lib/dokkit/extension/extension.rb
|
18
|
-
lib/dokkit/extension/filehelper.rb
|
19
|
-
lib/dokkit/fileselection.rb
|
7
|
+
lib/dokkit/application.rb
|
8
|
+
lib/dokkit/cache.rb
|
9
|
+
lib/dokkit/cache/cache.rb
|
10
|
+
lib/dokkit/environment.rb
|
11
|
+
lib/dokkit/environment/basic.rb
|
12
|
+
lib/dokkit/environment/helpers.rb
|
13
|
+
lib/dokkit/environment/helpers/extmap.rb
|
14
|
+
lib/dokkit/environment/helpers/fileselection.rb
|
15
|
+
lib/dokkit/factory.rb
|
16
|
+
lib/dokkit/factory/factory.rb
|
20
17
|
lib/dokkit/filters.rb
|
21
|
-
lib/dokkit/filters/all.rb
|
22
|
-
lib/dokkit/filters/base.rb
|
23
18
|
lib/dokkit/filters/deplate.rb
|
24
19
|
lib/dokkit/filters/maruku.rb
|
25
20
|
lib/dokkit/filters/nil.rb
|
26
|
-
lib/dokkit/
|
27
|
-
lib/dokkit/
|
28
|
-
lib/dokkit/
|
29
|
-
lib/dokkit/
|
30
|
-
lib/dokkit/
|
31
|
-
lib/dokkit/models/
|
32
|
-
lib/dokkit/models/
|
33
|
-
lib/dokkit/models/
|
34
|
-
lib/dokkit/models/
|
35
|
-
lib/dokkit/models/
|
36
|
-
lib/dokkit/models/
|
37
|
-
lib/dokkit/models/
|
38
|
-
lib/dokkit/models/
|
39
|
-
lib/dokkit/
|
40
|
-
lib/dokkit/
|
41
|
-
lib/dokkit/
|
42
|
-
lib/dokkit/
|
43
|
-
lib/dokkit/
|
44
|
-
lib/dokkit/
|
45
|
-
lib/dokkit/
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
spec/
|
52
|
-
spec/
|
53
|
-
spec/
|
54
|
-
spec/
|
55
|
-
spec/
|
56
|
-
spec/
|
57
|
-
spec/
|
58
|
-
spec/
|
59
|
-
spec/
|
60
|
-
spec/
|
61
|
-
spec/
|
62
|
-
spec/
|
63
|
-
spec/
|
64
|
-
spec/
|
65
|
-
spec/
|
66
|
-
spec/
|
67
|
-
spec/
|
68
|
-
spec/
|
69
|
-
spec/
|
70
|
-
spec/
|
71
|
-
spec/
|
72
|
-
spec/
|
73
|
-
spec/
|
74
|
-
spec/
|
75
|
-
spec/
|
76
|
-
spec/
|
77
|
-
spec/
|
78
|
-
spec/
|
79
|
-
spec/
|
80
|
-
spec/
|
81
|
-
spec/
|
82
|
-
spec/
|
83
|
-
spec/
|
84
|
-
spec/
|
85
|
-
spec/
|
86
|
-
spec/
|
87
|
-
spec/
|
88
|
-
spec/
|
89
|
-
spec/
|
90
|
-
spec/
|
91
|
-
spec/
|
92
|
-
spec/
|
93
|
-
spec/
|
94
|
-
spec/
|
95
|
-
spec/
|
96
|
-
spec/
|
97
|
-
spec/
|
98
|
-
spec/
|
99
|
-
spec/
|
100
|
-
spec/
|
101
|
-
spec/
|
102
|
-
spec/
|
103
|
-
spec/
|
104
|
-
spec/
|
105
|
-
spec/
|
106
|
-
spec/filter_nil_spec.rb
|
107
|
-
spec/filters_spec.rb
|
108
|
-
spec/logger_spec.rb
|
109
|
-
spec/model_spec.rb
|
110
|
-
spec/pathhelper_spec.rb
|
111
|
-
spec/recursivemerge_spec.rb
|
112
|
-
spec/rendertask_spec.rb
|
21
|
+
lib/dokkit/hash.rb
|
22
|
+
lib/dokkit/logging.rb
|
23
|
+
lib/dokkit/logging/logger.rb
|
24
|
+
lib/dokkit/logging/observers.rb
|
25
|
+
lib/dokkit/logging/observers/console.rb
|
26
|
+
lib/dokkit/models/simple/Rakefile
|
27
|
+
lib/dokkit/models/simple/doc/configs/simple.yaml
|
28
|
+
lib/dokkit/models/simple/doc/data/html/css/style.css
|
29
|
+
lib/dokkit/models/simple/doc/data/latex/deplate.sty
|
30
|
+
lib/dokkit/models/simple/doc/layouts/simple.html
|
31
|
+
lib/dokkit/models/simple/doc/layouts/simple.latex
|
32
|
+
lib/dokkit/models/simple/doc/layouts/simple.text
|
33
|
+
lib/dokkit/models/simple/doc/pages/simple.deplate
|
34
|
+
lib/dokkit/models/simple/setup/setup.rb
|
35
|
+
lib/dokkit/resource.rb
|
36
|
+
lib/dokkit/resource/data.rb
|
37
|
+
lib/dokkit/resource/document.rb
|
38
|
+
lib/dokkit/resource/extensions.rb
|
39
|
+
lib/dokkit/resource/extensions/builtin.rb
|
40
|
+
lib/dokkit/resource/extensions/html.rb
|
41
|
+
lib/dokkit/resource/extensions/url.rb
|
42
|
+
lib/dokkit/resource/filenamehelper.rb
|
43
|
+
lib/dokkit/tasklib.rb
|
44
|
+
lib/dokkit/tasklib/clean.rb
|
45
|
+
lib/dokkit/tasklib/render.rb
|
46
|
+
spec/dokkit/application_spec.rb
|
47
|
+
spec/dokkit/cache/cache_spec.rb
|
48
|
+
spec/dokkit/dokkit_spec.rb
|
49
|
+
spec/dokkit/environment/basic_spec.rb
|
50
|
+
spec/dokkit/environment/helpers/extmap_spec.rb
|
51
|
+
spec/dokkit/environment/helpers/fileselection_spec.rb
|
52
|
+
spec/dokkit/environment/helpers/test_data/doc/pages/document_1.ext_1
|
53
|
+
spec/dokkit/environment/helpers/test_data/doc/pages/document_2
|
54
|
+
spec/dokkit/environment/helpers/test_data/doc/pages/document_3.ext_3
|
55
|
+
spec/dokkit/environment/test_data/doc/data/data
|
56
|
+
spec/dokkit/environment/test_data/doc/pages/document_1
|
57
|
+
spec/dokkit/environment/test_data/doc/pages/document_1.yaml
|
58
|
+
spec/dokkit/environment/test_data/doc/pages/document_2
|
59
|
+
spec/dokkit/environment/test_data/doc/pages/subdir/document_1
|
60
|
+
spec/dokkit/factory/factory_spec.rb
|
61
|
+
spec/dokkit/filters/deplate_spec.rb
|
62
|
+
spec/dokkit/filters/maruku_spec.rb
|
63
|
+
spec/dokkit/filters/nil_spec.rb
|
64
|
+
spec/dokkit/hash_spec.rb
|
65
|
+
spec/dokkit/logging/logger_spec.rb
|
66
|
+
spec/dokkit/logging/observers/console_spec.rb
|
67
|
+
spec/dokkit/resource/data_spec.rb
|
68
|
+
spec/dokkit/resource/document_spec.rb
|
69
|
+
spec/dokkit/resource/extensions/html_spec.rb
|
70
|
+
spec/dokkit/resource/extensions/url_spec.rb
|
71
|
+
spec/dokkit/resource/filenamehelper_spec.rb
|
72
|
+
spec/dokkit/resource/test_data/doc/configs/config_1.yaml
|
73
|
+
spec/dokkit/resource/test_data/doc/configs/config_2.yaml
|
74
|
+
spec/dokkit/resource/test_data/doc/configs/required.yaml
|
75
|
+
spec/dokkit/resource/test_data/doc/configs/subdir/document.yaml
|
76
|
+
spec/dokkit/resource/test_data/doc/layouts/container.html
|
77
|
+
spec/dokkit/resource/test_data/doc/layouts/layout.html
|
78
|
+
spec/dokkit/resource/test_data/doc/layouts/layout.latex
|
79
|
+
spec/dokkit/resource/test_data/doc/layouts/nested/nested.html
|
80
|
+
spec/dokkit/resource/test_data/doc/layouts/subdir/document.html
|
81
|
+
spec/dokkit/resource/test_data/doc/layouts/subdir/document.latex
|
82
|
+
spec/dokkit/resource/test_data/doc/pages/COMMON.yaml
|
83
|
+
spec/dokkit/resource/test_data/doc/pages/document_with_many_config.ext
|
84
|
+
spec/dokkit/resource/test_data/doc/pages/document_with_many_errors.ext
|
85
|
+
spec/dokkit/resource/test_data/doc/pages/document_with_many_targets.ext
|
86
|
+
spec/dokkit/resource/test_data/doc/pages/document_with_nested_layout.ext
|
87
|
+
spec/dokkit/resource/test_data/doc/pages/document_with_nil_target.ext
|
88
|
+
spec/dokkit/resource/test_data/doc/pages/document_with_not_defined_target.ext
|
89
|
+
spec/dokkit/resource/test_data/doc/pages/document_with_one_target.ext
|
90
|
+
spec/dokkit/resource/test_data/doc/pages/subdir/COMMON.yaml
|
91
|
+
spec/dokkit/resource/test_data/doc/pages/subdir/document.ext
|
92
|
+
spec/dokkit/resource/test_data/doc/pages/subdir/document.yaml
|
93
|
+
spec/dokkit/tasklib/clean_spec.rb
|
94
|
+
spec/dokkit/tasklib/render_spec.rb
|
95
|
+
spec/dokkit/tasklib/test_data/doc/data/data_1
|
96
|
+
spec/dokkit/tasklib/test_data/doc/pages/document_1
|
97
|
+
spec/dokkit/tasklib/test_data/doc/pages/document_2
|
98
|
+
spec/dokkit/test_data/dokkit/models/model1/doc/pages/model1
|
99
|
+
spec/dokkit/test_data/dokkit/models/model2/doc/pages/model2
|
100
|
+
spec/spec.opts
|
113
101
|
spec/spec_helper.rb
|
114
|
-
spec/taskconfig_spec.rb
|
115
|
-
spec/templatetask_spec.rb
|
116
102
|
tasks/annotations.rake
|
117
103
|
tasks/doc.rake
|
118
104
|
tasks/gem.rake
|
@@ -122,4 +108,3 @@ tasks/setup.rb
|
|
122
108
|
tasks/spec.rake
|
123
109
|
tasks/svn.rake
|
124
110
|
tasks/test.rake
|
125
|
-
|
data/README.txt
CHANGED
@@ -4,11 +4,21 @@ dokkit
|
|
4
4
|
|
5
5
|
== DESCRIPTION:
|
6
6
|
|
7
|
-
dokkit is a document generator. It was inspired by rote but now
|
8
|
-
|
9
|
-
|
7
|
+
dokkit is a document generator. It was inspired by rote but now it is
|
8
|
+
completely independent from it. dokkit uses filters like deplate and
|
9
|
+
maruku to generate output in a large variety of formats (tex, html,
|
10
10
|
docbook, plain text, ...).
|
11
11
|
|
12
|
+
With dokkit you can:
|
13
|
+
|
14
|
+
* generate static websites
|
15
|
+
* generate many types of documents in many formats (html, tex, plain text, etc.)
|
16
|
+
* write your documents using a simple wiki syntax and obtain high quality output
|
17
|
+
* generate different output formats from the same source document
|
18
|
+
* use models to quickly generate the documents you want (technical report, invoice, howto, guides, presentation, website, etc.)
|
19
|
+
* simply derive new documentation models from the existing ones
|
20
|
+
* simply modify existing models to fit your needs
|
21
|
+
|
12
22
|
For more information please execute:
|
13
23
|
|
14
24
|
dokkit --help
|
@@ -17,24 +27,34 @@ For more information please execute:
|
|
17
27
|
|
18
28
|
dokkit key features are:
|
19
29
|
|
20
|
-
* a smart
|
21
|
-
* a
|
22
|
-
* a
|
30
|
+
* a smart building system based on rake[http://rake.rubyforge.org]
|
31
|
+
* a documentation directory structure organized in pages, layouts, configuration files, resources
|
32
|
+
* a templating system based on ERB
|
23
33
|
* a simple and flexible configuration system based on YAML
|
34
|
+
* support for partials
|
24
35
|
|
25
36
|
== SYNOPSIS:
|
26
37
|
|
27
|
-
|
38
|
+
To create a new documentation environment in <dirname> run:
|
39
|
+
|
40
|
+
dokkit <dirname>
|
28
41
|
|
29
42
|
== REQUIREMENTS:
|
30
43
|
|
31
44
|
* deplate >= 0.8.0
|
45
|
+
* maruku => 0.5.9
|
32
46
|
* rake >= 0.8.1
|
33
47
|
|
34
48
|
== INSTALL:
|
35
49
|
|
36
50
|
sudo gem install dokkit
|
37
51
|
|
52
|
+
== QUICK START
|
53
|
+
|
54
|
+
$ dokkit mydocument
|
55
|
+
$ cd mydocument
|
56
|
+
$ rake
|
57
|
+
|
38
58
|
== LICENSE:
|
39
59
|
|
40
60
|
Copyright (c) 2008 Andrea Fazzi
|
data/Rakefile
CHANGED
@@ -10,7 +10,7 @@ require 'dokkit'
|
|
10
10
|
task :default => 'spec:run'
|
11
11
|
|
12
12
|
PROJ.name = 'dokkit'
|
13
|
-
PROJ.version = Dokkit::
|
13
|
+
PROJ.version = Dokkit::VERSION
|
14
14
|
PROJ.summary = 'dokkit is an open source document generator'
|
15
15
|
PROJ.authors = 'Andrea Fazzi'
|
16
16
|
PROJ.email = 'andrea.fazzi@alca.le.it'
|
@@ -18,8 +18,7 @@ PROJ.url = 'http://dokkit.rubyforge.org'
|
|
18
18
|
PROJ.description = paragraphs_of('README.txt', 1).join("\n\n")
|
19
19
|
PROJ.changes = paragraphs_of('History.txt', 0..1).join("\n\n")
|
20
20
|
PROJ.rubyforge_name = 'dokkit'
|
21
|
-
#FIXME: set version numbers for the dependencies below.
|
22
21
|
PROJ.dependencies = ['deplate', 'rake', 'maruku']
|
23
22
|
PROJ.spec_opts << ['--format', 'specdoc', '--color']
|
24
|
-
|
23
|
+
PROJ.rdoc_exclude << "models/simple"
|
25
24
|
# EOF
|
data/bin/dokkit
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
-
require
|
3
|
+
require 'dokkit/application'
|
4
|
+
require 'dokkit/logging'
|
4
5
|
|
5
6
|
# Put your code here
|
6
|
-
Dokkit.
|
7
|
+
Dokkit::Application.new( Dokkit::Logging::Observer::Console.new(Dokkit::Logging::Logger.new).logger ).run
|
7
8
|
# EOF
|
@@ -0,0 +1,159 @@
|
|
1
|
+
#
|
2
|
+
# File 'application.rb' created on 08 mag 2008 at 17:26:07.
|
3
|
+
#
|
4
|
+
# See 'dokkit.rb' or +LICENSE+ for licence information.
|
5
|
+
#
|
6
|
+
# (C)2006-2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
|
7
|
+
#
|
8
|
+
|
9
|
+
require 'getoptlong'
|
10
|
+
require 'fileutils'
|
11
|
+
require 'dokkit'
|
12
|
+
|
13
|
+
module Dokkit
|
14
|
+
class Application
|
15
|
+
|
16
|
+
OPTIONS = [
|
17
|
+
[ "--usage", "-u", GetoptLong::NO_ARGUMENT,
|
18
|
+
"Display usage information." ],
|
19
|
+
[ "--help", "-h", GetoptLong::NO_ARGUMENT,
|
20
|
+
"Synonim for usage."],
|
21
|
+
[ "--version", "-v", GetoptLong::NO_ARGUMENT,
|
22
|
+
"Display the version number and quit." ],
|
23
|
+
[ "--list", '-l', GetoptLong::NO_ARGUMENT,
|
24
|
+
"List the available models."],
|
25
|
+
[ "--model", '-m', GetoptLong::REQUIRED_ARGUMENT,
|
26
|
+
"Specify a documentation model" ]
|
27
|
+
]
|
28
|
+
|
29
|
+
USAGE_PREAMBLE = <<-EOU
|
30
|
+
Usage: dokkit [options] <dest_dir>
|
31
|
+
|
32
|
+
Where dest_dir is the directory in which to setup the documentation
|
33
|
+
environment.
|
34
|
+
|
35
|
+
EOU
|
36
|
+
attr_reader :default_model
|
37
|
+
|
38
|
+
def initialize(logger, configuration = { })
|
39
|
+
@logger = logger
|
40
|
+
@configuration = configuration
|
41
|
+
@dokkit_dir = configuration[:dokkit_dir] || dokkit_dir
|
42
|
+
@user_dir = configuration[:user_dir] || relative_to_home('.dokkit')
|
43
|
+
@model_dir = configuration[:model_dir] || 'models'
|
44
|
+
@default_model = configuration[:default_model] || 'simple'
|
45
|
+
@models = { 'simple' => File.join(@dokkit_dir, 'dokkit/models/simple') } if @dokkit_dir
|
46
|
+
@models.merge!(fetch_models)
|
47
|
+
end
|
48
|
+
|
49
|
+
def run
|
50
|
+
|
51
|
+
process_args
|
52
|
+
|
53
|
+
unless ARGV.empty?
|
54
|
+
create_environment(ARGV.to_s)
|
55
|
+
else
|
56
|
+
do_option('--help')
|
57
|
+
end
|
58
|
+
|
59
|
+
end
|
60
|
+
|
61
|
+
private
|
62
|
+
|
63
|
+
def dokkit_dir
|
64
|
+
lib = nil
|
65
|
+
$:.each do |it|
|
66
|
+
if File.exists?(File.join(it, 'dokkit/models/'))
|
67
|
+
lib = it
|
68
|
+
break
|
69
|
+
end
|
70
|
+
end
|
71
|
+
lib
|
72
|
+
end
|
73
|
+
|
74
|
+
def relative_to_home(path)
|
75
|
+
File.join(((ENV['HOMEPATH'] if RUBY_PLATFORM =~ /win32/) || ENV['HOME']), path)
|
76
|
+
end
|
77
|
+
|
78
|
+
def create_environment(dest_dir)
|
79
|
+
model = @model || @default_model
|
80
|
+
if @models.has_key?(model)
|
81
|
+
unless File.exists?(dest_dir)
|
82
|
+
@logger.info("Creating documentation environment based on '#{model}' on directory '#{dest_dir}'.")
|
83
|
+
FileUtils.cp_r(@models[model], dest_dir)
|
84
|
+
else
|
85
|
+
@logger.error("Directory '#{dest_dir}' already exists.")
|
86
|
+
end
|
87
|
+
else
|
88
|
+
@logger.error("Model '#{model}' not found.")
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
def do_option(option, value = nil)
|
93
|
+
case option
|
94
|
+
when '--usage'
|
95
|
+
help
|
96
|
+
exit
|
97
|
+
when '--help'
|
98
|
+
help
|
99
|
+
exit
|
100
|
+
when '--version'
|
101
|
+
puts "dokkit, version #{Dokkit::VERSION}\n"
|
102
|
+
exit
|
103
|
+
when '--list'
|
104
|
+
list_models
|
105
|
+
exit
|
106
|
+
when '--model'
|
107
|
+
@model = value
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
def command_line_options
|
112
|
+
OPTIONS.collect { |lst| lst[0..-2] }
|
113
|
+
end
|
114
|
+
|
115
|
+
def process_args
|
116
|
+
opts = GetoptLong.new(*command_line_options)
|
117
|
+
opts.each { |opt, value| do_option(opt, value) }
|
118
|
+
end
|
119
|
+
|
120
|
+
def help
|
121
|
+
puts
|
122
|
+
puts USAGE_PREAMBLE
|
123
|
+
puts "Recognized options are:"
|
124
|
+
puts
|
125
|
+
OPTIONS.sort.each do |long, short, mode, desc|
|
126
|
+
if mode == GetoptLong::REQUIRED_ARGUMENT
|
127
|
+
if desc =~ /\b([A-Z]{2,})\b/
|
128
|
+
long = long + "=#{$1}"
|
129
|
+
end
|
130
|
+
end
|
131
|
+
printf " %-20s (%s)\n", long, short
|
132
|
+
printf " %s\n", desc
|
133
|
+
puts
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
def model_dir
|
138
|
+
File.join(@dokkit_dir, @model_dir)
|
139
|
+
end
|
140
|
+
|
141
|
+
def fetch_models
|
142
|
+
models = { }
|
143
|
+
if File.exists?(model_dir)
|
144
|
+
Dir.glob(File.join(model_dir, '*')) do |model|
|
145
|
+
modelname = model.sub(File.join(@dokkit_dir, @model_dir), '').sub('/', '')
|
146
|
+
models[modelname] = model
|
147
|
+
end
|
148
|
+
end
|
149
|
+
models
|
150
|
+
end
|
151
|
+
|
152
|
+
def list_models
|
153
|
+
@models.each_key do |model|
|
154
|
+
@logger.info("Found model '#{model}'.")
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
end
|
159
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
#
|
2
|
+
# File 'cachemanager.rb' created on 28 gen 2008 at 18:31:05.
|
3
|
+
#
|
4
|
+
# See 'dokkit.rb' or +LICENSE+ for licence information.
|
5
|
+
#
|
6
|
+
# (C)2006-2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
|
7
|
+
#
|
8
|
+
|
9
|
+
require 'rake'
|
10
|
+
require 'yaml'
|
11
|
+
|
12
|
+
module Dokkit
|
13
|
+
class Cache
|
14
|
+
attr_reader :deps, :cache_dir, :cache_filename
|
15
|
+
|
16
|
+
def initialize(cache_filename = 'deps.yaml', cache_dir = '.cache')
|
17
|
+
@cache_filename = cache_filename
|
18
|
+
@cache_dir = cache_dir
|
19
|
+
@complete_cache_filename = File.join(cache_dir, cache_filename)
|
20
|
+
load
|
21
|
+
at_exit { save }
|
22
|
+
end
|
23
|
+
|
24
|
+
def add_dependency(source_fn, format, dep)
|
25
|
+
@deps[source_fn] ||= { format => [] }
|
26
|
+
@deps[source_fn][format] << dep unless (dep.nil? or @deps[source_fn][format].include?(dep))
|
27
|
+
end
|
28
|
+
|
29
|
+
def load
|
30
|
+
@deps = load_from_yaml || { }
|
31
|
+
end
|
32
|
+
|
33
|
+
def save
|
34
|
+
write_cache_to_file unless @deps.empty?
|
35
|
+
end
|
36
|
+
|
37
|
+
def clean
|
38
|
+
@deps.clear
|
39
|
+
end
|
40
|
+
|
41
|
+
private
|
42
|
+
|
43
|
+
def load_from_yaml
|
44
|
+
YAML::load_file(@complete_cache_filename) if File.exists?(@complete_cache_filename)
|
45
|
+
end
|
46
|
+
|
47
|
+
def write_cache_to_file
|
48
|
+
mkdir_p(cache_dir, :verbose => false) unless File.exists?(cache_dir)
|
49
|
+
File.open(@complete_cache_filename, 'w') { |file| file.write YAML::dump(@deps) }
|
50
|
+
end
|
51
|
+
|
52
|
+
end
|
53
|
+
end
|
@@ -1,22 +1,10 @@
|
|
1
1
|
#
|
2
|
-
# File '
|
2
|
+
# File 'cache.rb' created on 05 mag 2008 at 16:36:14.
|
3
3
|
#
|
4
4
|
# See 'dokkit.rb' or +LICENSE+ for licence information.
|
5
5
|
#
|
6
|
-
# (C)
|
6
|
+
# (C)2006-2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
|
7
7
|
#
|
8
|
-
# Rakefile for website project model
|
9
|
-
|
10
|
-
require 'tasks/all'
|
11
|
-
|
12
|
-
task :clobber => 'clean:all'
|
13
|
-
task :default => 'render:all'
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
8
|
|
9
|
+
require 'dokkit/cache/cache'
|
22
10
|
|