docgenerator 2.1.0 → 2.1.1
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 +0 -1
- data/examples/creole_example_new_plugin.rb +51 -0
- data/examples/creole_example_tabular.rb +3 -1
- data/examples/wiki2docgenerator_example.rb +2 -2
- data/lib/creole/creole2doc.rb +697 -680
- data/lib/creole/creole_characters.rb +90 -26
- data/lib/creole/creole_inclusion_and_plugins.rb +25 -43
- data/lib/creole/creole_inclusions.rb +87 -75
- data/lib/creole/creole_placeholder.rb +87 -89
- data/lib/creole/creole_plugins.rb +149 -117
- data/lib/creole/creole_tabular.rb +247 -141
- data/lib/creole/plugins/todonotes.rb +48 -48
- data/lib/docgenerator/characters.rb +106 -8
- data/lib/docgenerator/compatibility_v1.rb +7 -1
- data/lib/docgenerator/document.rb +34 -19
- data/lib/docgenerator/element.rb +1 -0
- data/lib/docgenerator/element_meta.rb +1 -1
- data/lib/docgenerator/elements.rb +594 -535
- data/lib/docgenerator/environments.rb +131 -99
- data/lib/docgenerator/index.rb +110 -0
- data/lib/docgenerator/lists.rb +2 -1
- data/lib/docgenerator/packages/caption.rb +32 -34
- data/lib/docgenerator/packages/hyperref.rb +1 -0
- data/lib/docgenerator/packages/multicol.rb +3 -2
- data/lib/docgenerator/packages/pdfpages.rb +71 -20
- data/lib/docgenerator/packages/scrpage2.rb +99 -142
- data/lib/docgenerator/packages/url.rb +75 -81
- data/lib/docgenerator/sections.rb +98 -98
- data/lib/docgenerator/standard.rb +8 -1
- data/lib/docgenerator/tabular.rb +44 -25
- data/lib/docgenerator/templates/docgenerator_template.yaml +28 -0
- data/lib/docgenerator/version.rb +146 -0
- data/lib/docgenerator.rb +20 -15
- data/meta_test_and_doc/build_doc.rb +39 -10
- data/meta_test_and_doc/build_test.rb +34 -12
- data/meta_test_and_doc/manpages/characters.rb +452 -20
- data/meta_test_and_doc/manpages/elementlist.rb +304 -0
- data/meta_test_and_doc/manpages/elements.rb +305 -42
- data/meta_test_and_doc/manpages/others.rb +403 -0
- data/meta_test_and_doc/manpages/pdfpages.rb +117 -18
- data/meta_test_and_doc/manpages/readme.rdoc +3 -1
- data/meta_test_and_doc/manpages/scrpage2.rb +0 -80
- data/meta_test_and_doc/manpages/tables.rb +6 -6
- data/readme.rdoc +11 -120
- data/unittest/expected/test_comment.html +1 -0
- data/unittest/expected/test_comment.latex +5 -0
- data/unittest/expected/test_comment_complex.html +3 -0
- data/unittest/expected/test_comment_complex.latex +15 -0
- data/unittest/expected_creole/test_creole_characters_all.html +6 -5
- data/unittest/expected_creole/test_creole_characters_all.latex +10 -8
- data/unittest/expected_creole/test_creole_creole1.0test.latex +5 -5
- data/unittest/expected_creole/test_creole_input.normsource +11 -9
- data/unittest/expected_creole/test_creole_list_ul.normsource +57 -51
- 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_paragraphs.normsource +12 -10
- data/unittest/expected_creole/test_creole_pictures.latex +2 -2
- data/unittest/expected_creole/test_creole_pictures_css.latex +2 -2
- data/unittest/expected_creole/test_creole_pictures_imgclass.latex +2 -2
- data/unittest/expected_creole/test_creole_pictures_width.latex +1 -1
- data/unittest/expected_creole/test_creole_tabular.latex +3 -3
- data/unittest/expected_creole/test_creole_tabular_creole.latex +2 -2
- data/unittest/expected_creole/test_creole_tabular_css.latex +3 -3
- data/unittest/expected_creole/test_creole_tabular_row_parameters.latex +22 -0
- data/unittest/expected_templates/test_standalone.tex +34 -0
- data/unittest/expected_wikimedia/test_wiki_picture.latex +12 -12
- data/unittest/unittest_creole.rb +22 -3
- data/unittest/unittest_creole_tabular.rb +34 -1
- data/unittest/unittest_docgenerator.rb +46 -3
- data/unittest/unittest_docgenerator_characters.rb +527 -82
- data/unittest/unittest_templates.rb +1 -1
- metadata +149 -108
data/lib/docgenerator.rb
CHANGED
@@ -1,7 +1,13 @@
|
|
1
|
+
#encoding: utf-8
|
1
2
|
=begin rdoc
|
2
3
|
= NAME
|
3
4
|
Docgenerator
|
4
5
|
|
6
|
+
Version see Docgenerator::VERSION
|
7
|
+
|
8
|
+
* For change history, please refer version.rb[link:files/lib/docgenerator/version_rb.html]
|
9
|
+
|
10
|
+
|
5
11
|
= SYNOPSIS
|
6
12
|
Docgenerator provides a ruby interface to build documents.
|
7
13
|
|
@@ -10,8 +16,10 @@ The document generation is build via 'Elements',
|
|
10
16
|
the target format is generic, actual supported are:
|
11
17
|
-LaTeX
|
12
18
|
-HTML
|
13
|
-
|
19
|
+
-Creole
|
20
|
+
Plain text and two Wikimedia-format are defined,
|
14
21
|
but they are not well maintained.
|
22
|
+
|
15
23
|
A context-export is planned for the future
|
16
24
|
(but it has a low level-importance for me).
|
17
25
|
|
@@ -66,23 +74,11 @@ HTML-Versions are not supported properly
|
|
66
74
|
(main problem: End-Tag for br)
|
67
75
|
|
68
76
|
More at http://ruby.lickert.net/docgenerator/index.html
|
69
|
-
=end
|
70
|
-
|
71
|
-
#
|
72
|
-
#For quick test
|
73
|
-
#
|
74
|
-
if $0 == __FILE__ and RUBY_VERSION =~ /1.9/
|
75
|
-
$:.unshift('.')
|
76
|
-
end
|
77
|
-
|
78
|
-
|
79
77
|
|
80
|
-
|
78
|
+
==Module Docgenerator
|
81
79
|
All classes of this gem are encapsulated in module Docgenerator.
|
82
80
|
=end
|
83
81
|
module Docgenerator
|
84
|
-
#Define Version number
|
85
|
-
VERSION = '2.1.0'
|
86
82
|
class << self
|
87
83
|
@trace = nil
|
88
84
|
=begin rdoc
|
@@ -340,6 +336,14 @@ Instance-version of class method.
|
|
340
336
|
end #module Docgenerator
|
341
337
|
|
342
338
|
|
339
|
+
#
|
340
|
+
#For quick syntax checks (and small tests)
|
341
|
+
#
|
342
|
+
if $0 == __FILE__ and RUBY_VERSION =~ /1.9/
|
343
|
+
$:.unshift('.')
|
344
|
+
end
|
345
|
+
|
346
|
+
require 'docgenerator/version'
|
343
347
|
require 'docgenerator/standard'
|
344
348
|
require 'docgenerator/element_meta' #Meta-class definitions
|
345
349
|
require 'docgenerator/element' #includes definition of method 'element'
|
@@ -357,6 +361,7 @@ require 'docgenerator/lists' #define environment
|
|
357
361
|
require 'docgenerator/sections'
|
358
362
|
require 'docgenerator/tabular'
|
359
363
|
require 'docgenerator/footnote'
|
364
|
+
require 'docgenerator/index' #makeindex, index, printindex...
|
360
365
|
require 'docgenerator/characters' #special characters (spaces, euro-sign...)
|
361
366
|
#~ require_relative 'docgenerator/characters' #special characters (spaces, euro-sign...)
|
362
367
|
|
@@ -370,6 +375,6 @@ if $0 == __FILE__
|
|
370
375
|
doc.body << 'text'
|
371
376
|
#~ p doc.to_doc(:html, {:log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER})
|
372
377
|
#~ p doc.to_doc(:latex, {:log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER})
|
373
|
-
doc.save('xx.html')
|
378
|
+
#~ doc.save('xx.html')
|
374
379
|
end
|
375
380
|
__END__
|
@@ -288,7 +288,6 @@ def mk_attr_overview(variant, attr, el)
|
|
288
288
|
|
289
289
|
end #mk_attr_overview
|
290
290
|
|
291
|
-
|
292
291
|
desc "Create all manpages"
|
293
292
|
task :all_man_files
|
294
293
|
#Build single file tasks
|
@@ -299,6 +298,35 @@ FILE_SEPARATION.each{|key, elementlist|
|
|
299
298
|
task :all_man_files => filename #add file task as prerequisite to :all_man_files
|
300
299
|
}
|
301
300
|
|
301
|
+
class Docgenerator::Element
|
302
|
+
#Helper to have access to all ids.
|
303
|
+
def self.ids; @@ids;end
|
304
|
+
end
|
305
|
+
file 'manpages/elementlist.rb' => :force do |tsk|
|
306
|
+
File.open(tsk.name, 'w:utf-8'){|f|
|
307
|
+
f << <<rdoc
|
308
|
+
#encoding: utf-8
|
309
|
+
|
310
|
+
=begin rdoc
|
311
|
+
The following elements and characters are defined and can be used with
|
312
|
+
element(key, { options}, content)
|
313
|
+
|
314
|
+
rdoc
|
315
|
+
|
316
|
+
Docgenerator::Element.ids.sort_by{|id, elclass|id.to_s}.each{|id, elclass|
|
317
|
+
f << "* <tt>%s</tt>: %s\n" % [id.inspect,elclass]
|
318
|
+
#~ f << "[<tt>%s</tt]: %s\n" % [id,elclass] #labeled list (rdoc4.0?)
|
319
|
+
}
|
320
|
+
f << <<rdoc
|
321
|
+
=end
|
322
|
+
def element
|
323
|
+
end #element
|
324
|
+
rdoc
|
325
|
+
}
|
326
|
+
end #file 'manpages/elementlist.rb'
|
327
|
+
task :all_man_files => 'manpages/elementlist.rb'
|
328
|
+
|
329
|
+
|
302
330
|
task :force
|
303
331
|
task :clean do
|
304
332
|
Rake.application[:all_man_files].prerequisites.each{|f|
|
@@ -314,20 +342,21 @@ end
|
|
314
342
|
|
315
343
|
|
316
344
|
#~ task 'manpages/environments.rb' => :force
|
317
|
-
#~ task :
|
345
|
+
#~ task :local_default => 'manpages/environments.rb'
|
318
346
|
#~ task 'manpages/sectioning.rb' => :force
|
319
|
-
#~ task :
|
347
|
+
#~ task :local_default => 'manpages/sectioning.rb'
|
320
348
|
#~ task 'manpages/elements.rb' => :force
|
321
|
-
#~ task :
|
349
|
+
#~ task :local_default => 'manpages/elements.rb'
|
322
350
|
#~ task 'manpages/characters.rb' => :force
|
323
|
-
#~ task :
|
351
|
+
#~ task :local_default => 'manpages/characters.rb'
|
324
352
|
|
325
|
-
#~ task :
|
326
|
-
task :
|
327
|
-
task :
|
328
|
-
#~ task :
|
353
|
+
#~ task :local_default => 'manpages/elementlist.rb'
|
354
|
+
#~ task :local_default => :test
|
355
|
+
#~ task :local_default => :clean
|
356
|
+
#~ task :local_default => :all_man_files
|
357
|
+
task :local_default => :rdoc_manpages
|
329
358
|
|
330
359
|
if $0 == __FILE__
|
331
360
|
app = Rake.application
|
332
|
-
app[:
|
361
|
+
app[:local_default].invoke
|
333
362
|
end
|
@@ -30,7 +30,8 @@ Test generated by #{__FILE__} #{Date.today}
|
|
30
30
|
|
31
31
|
This is not a 'real' test unit.
|
32
32
|
The tests are created with #{__FILE__}:
|
33
|
-
|
33
|
+
|
34
|
+
1) Each Docgenerator::Element is taken and a test is generated.
|
34
35
|
=end
|
35
36
|
|
36
37
|
gem 'test-unit'
|
@@ -206,23 +207,28 @@ end # mk_element_testcase(cl)
|
|
206
207
|
|
207
208
|
|
208
209
|
desc "Create all test files"
|
209
|
-
task :
|
210
|
+
task :create_test_files
|
210
211
|
|
211
212
|
#Create file tasks
|
212
213
|
FILE_SEPARATION.each{|key, elementlist|
|
213
214
|
filename = File.join('unittest', "unittest_#{key}")
|
214
|
-
|
215
|
-
|
215
|
+
#~ puts "file '%s' => :force" % filename
|
216
|
+
desc "Create %s" % filename
|
217
|
+
file filename do |tsk| #Create file task
|
218
|
+
mk_element_test(elementlist, tsk.name, FILE_SEPARATION_REQUIREMENTS[key] )
|
219
|
+
end
|
220
|
+
task :create_test_files => filename #add file task as prerequisite to :create_test_files
|
216
221
|
}
|
217
222
|
|
218
223
|
task :force
|
219
224
|
task :clean do
|
220
|
-
Rake.application[:
|
225
|
+
Rake.application[:create_test_files].prerequisites.each{|f|
|
221
226
|
File.delete(f) if File.exist?(f)
|
222
227
|
}
|
223
228
|
end
|
224
229
|
|
225
|
-
|
230
|
+
$:.unshift('c:/usr/script/knut/knut-testtask/lib') #get local dev. version
|
231
|
+
require 'knut-testtask.rb'
|
226
232
|
Rake::TestTask.new(:run_tests) do |t|
|
227
233
|
t.dir = 'unittest'
|
228
234
|
t.libs << '../lib'
|
@@ -231,13 +237,31 @@ Rake::TestTask.new(:run_tests) do |t|
|
|
231
237
|
t.verbose = true
|
232
238
|
end
|
233
239
|
|
234
|
-
task :
|
235
|
-
|
236
|
-
#~
|
240
|
+
#~ task :local_default => :clean
|
241
|
+
#~ file 'unittest/unittest_attachfile.rb' => :force
|
242
|
+
#~ file 'unittest/unittest_caption.rb' => :force
|
243
|
+
#~ file 'unittest/unittest_hyperref.rb' => :force
|
244
|
+
#~ file 'unittest/unittest_listings.rb' => :force
|
245
|
+
#~ file 'unittest/unittest_pdfpages.rb' => :force
|
246
|
+
#~ file 'unittest/unittest_scrlettr2.rb' => :force
|
247
|
+
#~ file 'unittest/unittest_scrpage2.rb' => :force
|
248
|
+
#~ file 'unittest/unittest_todonotes.rb' => :force
|
249
|
+
#~ file 'unittest/unittest_wiki2docgenerator.rb' => :force
|
250
|
+
#~ file 'unittest/unittest_characters.rb' => :force
|
251
|
+
#~ file 'unittest/unittest_environments.rb' => :force
|
252
|
+
#~ file 'unittest/unittest_lists.rb' => :force
|
253
|
+
#~ file 'unittest/unittest_footnote.rb' => :force
|
254
|
+
#~ file 'unittest/unittest_sectioning.rb' => :force
|
255
|
+
#~ file 'unittest/unittest_tables.rb' => :force
|
256
|
+
#~ file 'unittest/unittest_elements.rb' => :force
|
257
|
+
#~ file 'unittest/unittest_others.rb' => :force
|
258
|
+
|
259
|
+
task :local_default => :create_test_files
|
260
|
+
#~ task :local_default => :run_tests
|
237
261
|
|
238
262
|
if $0 == __FILE__
|
239
263
|
app = Rake.application
|
240
|
-
app[:
|
264
|
+
app[:local_default].invoke
|
241
265
|
end
|
242
266
|
|
243
267
|
#~ puts_elements
|
@@ -247,5 +271,3 @@ fixme:
|
|
247
271
|
- tests mit #cr...
|
248
272
|
- optionale attribute
|
249
273
|
- testdaten in DB? (verschiedene Attributesausprägungen?)
|
250
|
-
|
251
|
-
|