webgen 0.3.8 → 0.4.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.
- data/ChangeLog +2565 -14
- data/README +4 -6
- data/Rakefile +207 -89
- data/TODO +175 -17
- data/VERSION +1 -1
- data/bin/webgen +1 -2
- data/data/webgen/gallery-creator/default.png +0 -0
- data/data/webgen/gallery_styles/default/README +6 -0
- data/data/webgen/gallery_styles/default/gallery_gallery.template +38 -0
- data/data/webgen/gallery_styles/default/gallery_image.template +30 -0
- data/data/webgen/gallery_styles/default/gallery_main.template +18 -0
- data/data/webgen/gallery_styles/slides/README +18 -0
- data/data/webgen/gallery_styles/slides/collage.rb +334 -0
- data/data/webgen/gallery_styles/slides/gallery_gallery.template +62 -0
- data/data/webgen/gallery_styles/slides/gallery_image.template +53 -0
- data/data/webgen/gallery_styles/slides/gallery_main.template +32 -0
- data/data/webgen/resources/images/generated_by_webgen.png +0 -0
- data/data/webgen/resources/images/webgen_logo.png +0 -0
- data/data/webgen/website_styles/1024px/README +10 -0
- data/data/webgen/website_styles/1024px/default.css +188 -0
- data/data/webgen/website_styles/1024px/default.template +62 -0
- data/data/webgen/website_styles/1024px/images/background.gif +0 -0
- data/data/webgen/website_styles/andreas00/README +10 -0
- data/data/webgen/website_styles/andreas00/default.css +290 -0
- data/data/webgen/website_styles/andreas00/default.template +62 -0
- data/data/webgen/website_styles/andreas00/images/bg.gif +0 -0
- data/data/webgen/website_styles/andreas00/images/front.jpg +0 -0
- data/data/webgen/website_styles/andreas00/images/menubg.gif +0 -0
- data/data/webgen/website_styles/andreas00/images/menubg2.gif +0 -0
- data/data/webgen/website_styles/andreas01/README +11 -0
- data/data/webgen/website_styles/andreas01/default.css +310 -0
- data/data/webgen/website_styles/andreas01/default.template +63 -0
- data/data/webgen/website_styles/andreas01/images/bg.gif +0 -0
- data/data/webgen/website_styles/andreas01/images/front.jpg +0 -0
- data/data/webgen/website_styles/andreas01/print.css +35 -0
- data/data/webgen/website_styles/andreas03/README +11 -0
- data/data/webgen/website_styles/andreas03/default.css +223 -0
- data/data/webgen/website_styles/andreas03/default.template +60 -0
- data/data/webgen/website_styles/andreas03/images/bodybg.png +0 -0
- data/data/webgen/website_styles/andreas03/images/contbg.png +0 -0
- data/data/webgen/website_styles/andreas03/images/footerbg.png +0 -0
- data/data/webgen/website_styles/andreas03/images/gradient1.png +0 -0
- data/data/webgen/website_styles/andreas03/images/gradient2.png +0 -0
- data/data/webgen/website_styles/andreas04/README +12 -0
- data/data/webgen/website_styles/andreas04/default.css +290 -0
- data/data/webgen/website_styles/andreas04/default.template +83 -0
- data/data/webgen/website_styles/andreas04/images/blinkarrow.gif +0 -0
- data/data/webgen/website_styles/andreas04/images/bodybg.png +0 -0
- data/data/webgen/website_styles/andreas04/images/contentbg.png +0 -0
- data/data/webgen/website_styles/andreas04/images/entrybg.png +0 -0
- data/data/webgen/website_styles/andreas04/images/flash.gif +0 -0
- data/data/webgen/website_styles/andreas04/images/flash2.gif +0 -0
- data/data/webgen/website_styles/andreas04/images/globe.gif +0 -0
- data/data/webgen/website_styles/andreas04/images/globebottom.gif +0 -0
- data/data/webgen/website_styles/andreas04/images/linkarrow.gif +0 -0
- data/data/webgen/website_styles/andreas04/images/menuhover.png +0 -0
- data/data/webgen/website_styles/andreas05/README +11 -0
- data/data/webgen/website_styles/andreas05/default.css +33 -0
- data/data/webgen/website_styles/andreas05/default.template +42 -0
- data/data/webgen/website_styles/andreas05/images/bodybg.gif +0 -0
- data/data/webgen/website_styles/andreas05/images/front.png +0 -0
- data/data/webgen/website_styles/andreas06/README +11 -0
- data/data/webgen/website_styles/andreas06/default.css +353 -0
- data/data/webgen/website_styles/andreas06/default.template +72 -0
- data/data/webgen/website_styles/andreas06/images/bodybg.gif +0 -0
- data/data/webgen/website_styles/andreas06/images/boxbg.gif +0 -0
- data/data/webgen/website_styles/andreas06/images/greypx.gif +0 -0
- data/data/webgen/website_styles/andreas06/images/header.jpg +0 -0
- data/data/webgen/website_styles/andreas06/images/innerbg.gif +0 -0
- data/data/webgen/website_styles/andreas06/images/leaves.jpg +0 -0
- data/data/webgen/website_styles/andreas06/images/tabs.gif +0 -0
- data/data/webgen/website_styles/andreas07/README +12 -0
- data/data/webgen/website_styles/andreas07/browserfix.css +7 -0
- data/data/webgen/website_styles/andreas07/default.css +92 -0
- data/data/webgen/website_styles/andreas07/default.template +44 -0
- data/data/webgen/website_styles/andreas07/images/bodybg.gif +0 -0
- data/data/webgen/website_styles/andreas07/images/sidebarbg.gif +0 -0
- data/data/webgen/website_styles/andreas08/README +11 -0
- data/data/webgen/website_styles/andreas08/default.css +224 -0
- data/data/webgen/website_styles/andreas08/default.template +53 -0
- data/data/webgen/website_styles/andreas09/README +11 -0
- data/data/webgen/website_styles/andreas09/default.css +308 -0
- data/data/webgen/website_styles/andreas09/default.template +70 -0
- data/data/webgen/website_styles/andreas09/images/bodybg-black.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/bodybg-green.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/bodybg-orange.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/bodybg-purple.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/bodybg-red.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/bodybg.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/footerbg.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/menuhover-black.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/menuhover-green.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/menuhover-orange.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/menuhover-purple.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/menuhover-red.jpg +0 -0
- data/data/webgen/website_styles/andreas09/images/menuhover.jpg +0 -0
- data/data/webgen/website_styles/default/README +6 -0
- data/data/webgen/website_styles/default/default.css +1 -1
- data/data/webgen/website_styles/default/default.template +9 -3
- data/data/webgen/website_styles/plain/README +12 -0
- data/data/webgen/website_styles/plain/default.css +244 -0
- data/data/webgen/website_styles/plain/default.template +63 -0
- data/data/webgen/website_styles/plain/images/a_hover.jpg +0 -0
- data/data/webgen/website_styles/plain/images/desc.jpg +0 -0
- data/data/webgen/website_styles/plain/images/li.gif +0 -0
- data/data/webgen/website_styles/plain/images/mainbar.jpg +0 -0
- data/data/webgen/website_styles/plain/images/menu.jpg +0 -0
- data/data/webgen/website_styles/plain/images/submenua.gif +0 -0
- data/data/webgen/website_styles/plain/images/submenua_hover.jpg +0 -0
- data/data/webgen/website_templates/default/README +7 -5
- data/data/webgen/website_templates/personal_hp/README +7 -5
- data/data/webgen/website_templates/project/README +8 -6
- data/doc/config.yaml +2 -2
- data/doc/examples/website_styles/1024px/README +9 -0
- data/doc/examples/website_styles/1024px/config.yaml +2 -0
- data/doc/examples/website_styles/1024px/src/about.page +12 -0
- data/doc/examples/website_styles/1024px/src/default.css +188 -0
- data/doc/examples/website_styles/1024px/src/default.template +62 -0
- data/doc/examples/website_styles/1024px/src/download.page +15 -0
- data/doc/examples/website_styles/1024px/src/features.page +8 -0
- data/doc/examples/website_styles/1024px/src/images/background.gif +0 -0
- data/doc/examples/website_styles/1024px/src/index.page +9 -0
- data/doc/examples/website_styles/1024px/src/screenshots.page +18 -0
- data/doc/examples/website_styles/andreas00/README +9 -0
- data/doc/examples/website_styles/andreas00/config.yaml +2 -0
- data/doc/examples/website_styles/andreas00/src/about.page +12 -0
- data/doc/examples/website_styles/andreas00/src/default.css +290 -0
- data/doc/examples/website_styles/andreas00/src/default.template +62 -0
- data/doc/examples/website_styles/andreas00/src/download.page +15 -0
- data/doc/examples/website_styles/andreas00/src/features.page +8 -0
- data/doc/examples/website_styles/andreas00/src/images/bg.gif +0 -0
- data/doc/examples/website_styles/andreas00/src/images/front.jpg +0 -0
- data/doc/examples/website_styles/andreas00/src/images/menubg.gif +0 -0
- data/doc/examples/website_styles/andreas00/src/images/menubg2.gif +0 -0
- data/doc/examples/website_styles/andreas00/src/index.page +9 -0
- data/doc/examples/website_styles/andreas00/src/screenshots.page +18 -0
- data/doc/examples/website_styles/andreas01/README +9 -0
- data/doc/examples/website_styles/andreas01/config.yaml +2 -0
- data/doc/examples/website_styles/andreas01/src/about.page +12 -0
- data/doc/examples/website_styles/andreas01/src/default.css +310 -0
- data/doc/examples/website_styles/andreas01/src/default.template +63 -0
- data/doc/examples/website_styles/andreas01/src/download.page +15 -0
- data/doc/examples/website_styles/andreas01/src/features.page +8 -0
- data/doc/examples/website_styles/andreas01/src/images/bg.gif +0 -0
- data/doc/examples/website_styles/andreas01/src/images/front.jpg +0 -0
- data/doc/examples/website_styles/andreas01/src/index.page +9 -0
- data/doc/examples/website_styles/andreas01/src/print.css +35 -0
- data/doc/examples/website_styles/andreas01/src/screenshots.page +18 -0
- data/doc/examples/website_styles/andreas03/README +9 -0
- data/doc/examples/website_styles/andreas03/config.yaml +2 -0
- data/doc/examples/website_styles/andreas03/src/about.page +12 -0
- data/doc/examples/website_styles/andreas03/src/default.css +223 -0
- data/doc/examples/website_styles/andreas03/src/default.template +60 -0
- data/doc/examples/website_styles/andreas03/src/download.page +15 -0
- data/doc/examples/website_styles/andreas03/src/features.page +8 -0
- data/doc/examples/website_styles/andreas03/src/images/bodybg.png +0 -0
- data/doc/examples/website_styles/andreas03/src/images/contbg.png +0 -0
- data/doc/examples/website_styles/andreas03/src/images/footerbg.png +0 -0
- data/doc/examples/website_styles/andreas03/src/images/gradient1.png +0 -0
- data/doc/examples/website_styles/andreas03/src/images/gradient2.png +0 -0
- data/doc/examples/website_styles/andreas03/src/index.page +9 -0
- data/doc/examples/website_styles/andreas03/src/screenshots.page +18 -0
- data/doc/examples/website_styles/andreas04/README +9 -0
- data/doc/examples/website_styles/andreas04/config.yaml +2 -0
- data/doc/examples/website_styles/andreas04/src/about.page +12 -0
- data/doc/examples/website_styles/andreas04/src/default.css +290 -0
- data/doc/examples/website_styles/andreas04/src/default.template +83 -0
- data/doc/examples/website_styles/andreas04/src/download.page +15 -0
- data/doc/examples/website_styles/andreas04/src/features.page +8 -0
- data/doc/examples/website_styles/andreas04/src/images/blinkarrow.gif +0 -0
- data/doc/examples/website_styles/andreas04/src/images/bodybg.png +0 -0
- data/doc/examples/website_styles/andreas04/src/images/contentbg.png +0 -0
- data/doc/examples/website_styles/andreas04/src/images/entrybg.png +0 -0
- data/doc/examples/website_styles/andreas04/src/images/flash.gif +0 -0
- data/doc/examples/website_styles/andreas04/src/images/flash2.gif +0 -0
- data/doc/examples/website_styles/andreas04/src/images/globe.gif +0 -0
- data/doc/examples/website_styles/andreas04/src/images/globebottom.gif +0 -0
- data/doc/examples/website_styles/andreas04/src/images/linkarrow.gif +0 -0
- data/doc/examples/website_styles/andreas04/src/images/menuhover.png +0 -0
- data/doc/examples/website_styles/andreas04/src/index.page +9 -0
- data/doc/examples/website_styles/andreas04/src/screenshots.page +18 -0
- data/doc/examples/website_styles/andreas05/README +9 -0
- data/doc/examples/website_styles/andreas05/config.yaml +2 -0
- data/doc/examples/website_styles/andreas05/src/about.page +12 -0
- data/doc/examples/website_styles/andreas05/src/default.css +33 -0
- data/doc/examples/website_styles/andreas05/src/default.template +42 -0
- data/doc/examples/website_styles/andreas05/src/download.page +15 -0
- data/doc/examples/website_styles/andreas05/src/features.page +8 -0
- data/doc/examples/website_styles/andreas05/src/images/bodybg.gif +0 -0
- data/doc/examples/website_styles/andreas05/src/images/front.png +0 -0
- data/doc/examples/website_styles/andreas05/src/index.page +9 -0
- data/doc/examples/website_styles/andreas05/src/screenshots.page +18 -0
- data/doc/examples/website_styles/andreas06/README +9 -0
- data/doc/examples/website_styles/andreas06/config.yaml +2 -0
- data/doc/examples/website_styles/andreas06/src/about.page +12 -0
- data/doc/examples/website_styles/andreas06/src/default.css +353 -0
- data/doc/examples/website_styles/andreas06/src/default.template +72 -0
- data/doc/examples/website_styles/andreas06/src/download.page +15 -0
- data/doc/examples/website_styles/andreas06/src/features.page +8 -0
- data/doc/examples/website_styles/andreas06/src/images/bodybg.gif +0 -0
- data/doc/examples/website_styles/andreas06/src/images/boxbg.gif +0 -0
- data/doc/examples/website_styles/andreas06/src/images/greypx.gif +0 -0
- data/doc/examples/website_styles/andreas06/src/images/header.jpg +0 -0
- data/doc/examples/website_styles/andreas06/src/images/innerbg.gif +0 -0
- data/doc/examples/website_styles/andreas06/src/images/leaves.jpg +0 -0
- data/doc/examples/website_styles/andreas06/src/images/tabs.gif +0 -0
- data/doc/examples/website_styles/andreas06/src/index.page +9 -0
- data/doc/examples/website_styles/andreas06/src/screenshots.page +18 -0
- data/doc/examples/website_styles/andreas07/README +9 -0
- data/doc/examples/website_styles/andreas07/config.yaml +2 -0
- data/doc/examples/website_styles/andreas07/src/about.page +12 -0
- data/doc/examples/website_styles/andreas07/src/browserfix.css +7 -0
- data/doc/examples/website_styles/andreas07/src/default.css +92 -0
- data/doc/examples/website_styles/andreas07/src/default.template +44 -0
- data/doc/examples/website_styles/andreas07/src/download.page +15 -0
- data/doc/examples/website_styles/andreas07/src/features.page +8 -0
- data/doc/examples/website_styles/andreas07/src/images/bodybg.gif +0 -0
- data/doc/examples/website_styles/andreas07/src/images/sidebarbg.gif +0 -0
- data/doc/examples/website_styles/andreas07/src/index.page +9 -0
- data/doc/examples/website_styles/andreas07/src/screenshots.page +18 -0
- data/doc/examples/website_styles/andreas08/README +9 -0
- data/doc/examples/website_styles/andreas08/config.yaml +2 -0
- data/doc/examples/website_styles/andreas08/src/about.page +12 -0
- data/doc/examples/website_styles/andreas08/src/default.css +224 -0
- data/doc/examples/website_styles/andreas08/src/default.template +53 -0
- data/doc/examples/website_styles/andreas08/src/download.page +15 -0
- data/doc/examples/website_styles/andreas08/src/features.page +8 -0
- data/doc/examples/website_styles/andreas08/src/index.page +9 -0
- data/doc/examples/website_styles/andreas08/src/screenshots.page +18 -0
- data/doc/examples/website_styles/andreas09/README +9 -0
- data/doc/examples/website_styles/andreas09/config.yaml +2 -0
- data/doc/examples/website_styles/andreas09/src/about.page +12 -0
- data/doc/examples/website_styles/andreas09/src/default.css +308 -0
- data/doc/examples/website_styles/andreas09/src/default.template +70 -0
- data/doc/examples/website_styles/andreas09/src/download.page +15 -0
- data/doc/examples/website_styles/andreas09/src/features.page +8 -0
- data/doc/examples/website_styles/andreas09/src/images/bodybg-black.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/bodybg-green.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/bodybg-orange.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/bodybg-purple.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/bodybg-red.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/bodybg.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/footerbg.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/menuhover-black.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/menuhover-green.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/menuhover-orange.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/menuhover-purple.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/menuhover-red.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/images/menuhover.jpg +0 -0
- data/doc/examples/website_styles/andreas09/src/index.page +9 -0
- data/doc/examples/website_styles/andreas09/src/screenshots.page +18 -0
- data/doc/examples/website_styles/default/README +9 -0
- data/doc/examples/website_styles/default/config.yaml +2 -0
- data/doc/examples/website_styles/default/src/about.page +12 -0
- data/doc/examples/website_styles/default/src/default.css +84 -0
- data/doc/examples/website_styles/default/src/default.template +38 -0
- data/doc/examples/website_styles/default/src/download.page +15 -0
- data/doc/examples/website_styles/default/src/features.page +8 -0
- data/doc/examples/website_styles/default/src/index.page +9 -0
- data/doc/examples/website_styles/default/src/screenshots.page +18 -0
- data/doc/examples/website_styles/plain/README +9 -0
- data/doc/examples/website_styles/plain/config.yaml +2 -0
- data/doc/examples/website_styles/plain/src/about.page +12 -0
- data/doc/examples/website_styles/plain/src/default.css +244 -0
- data/doc/examples/website_styles/plain/src/default.template +63 -0
- data/doc/examples/website_styles/plain/src/download.page +15 -0
- data/doc/examples/website_styles/plain/src/features.page +8 -0
- data/doc/examples/website_styles/plain/src/images/a_hover.jpg +0 -0
- data/doc/examples/website_styles/plain/src/images/desc.jpg +0 -0
- data/doc/examples/website_styles/plain/src/images/li.gif +0 -0
- data/doc/examples/website_styles/plain/src/images/mainbar.jpg +0 -0
- data/doc/examples/website_styles/plain/src/images/menu.jpg +0 -0
- data/doc/examples/website_styles/plain/src/images/submenua.gif +0 -0
- data/doc/examples/website_styles/plain/src/images/submenua_hover.jpg +0 -0
- data/doc/examples/website_styles/plain/src/index.page +9 -0
- data/doc/examples/website_styles/plain/src/screenshots.page +18 -0
- data/doc/examples/website_templates/default/README +8 -0
- data/doc/examples/website_templates/default/config.yaml +2 -0
- data/doc/examples/website_templates/default/src/default.css +84 -0
- data/doc/examples/website_templates/default/src/default.template +38 -0
- data/doc/examples/website_templates/default/src/index.page +8 -0
- data/doc/examples/website_templates/personal_hp/README +8 -0
- data/doc/examples/website_templates/personal_hp/config.yaml +2 -0
- data/doc/examples/website_templates/personal_hp/src/about.page +12 -0
- data/doc/examples/website_templates/personal_hp/src/default.css +84 -0
- data/doc/examples/website_templates/personal_hp/src/default.template +38 -0
- data/doc/examples/website_templates/personal_hp/src/index.page +9 -0
- data/doc/examples/website_templates/personal_hp/src/links.page +22 -0
- data/doc/examples/website_templates/personal_hp/src/projects.page +20 -0
- data/doc/examples/website_templates/project/README +9 -0
- data/doc/examples/website_templates/project/config.yaml +2 -0
- data/doc/examples/website_templates/project/src/about.page +12 -0
- data/doc/examples/website_templates/project/src/default.css +84 -0
- data/doc/examples/website_templates/project/src/default.template +38 -0
- data/doc/examples/website_templates/project/src/download.page +15 -0
- data/doc/examples/website_templates/project/src/features.page +8 -0
- data/doc/examples/website_templates/project/src/index.page +9 -0
- data/doc/examples/website_templates/project/src/screenshots.page +18 -0
- data/doc/metainfo.yaml +85 -0
- data/doc/plugin/emoticon.rb +19 -21
- data/doc/plugin/extension.rb +134 -55
- data/doc/plugin/gallery/slides/collage.rb +334 -0
- data/doc/plugin/listpluginparameters.rb +24 -26
- data/doc/plugin/resources.rb +20 -22
- data/doc/src/default.css +333 -154
- data/doc/src/default.template +92 -39
- data/doc/src/documentation/extending_webgen.page +1 -2
- data/doc/src/documentation/gettingstarted.page +161 -44
- data/doc/src/documentation/index.page +15 -28
- data/doc/src/documentation/plugins/contentconverter/default.page +15 -0
- data/doc/src/documentation/plugins/contentconverter/html.page +10 -0
- data/doc/src/documentation/plugins/contentconverter/markdown.page +21 -0
- data/doc/src/documentation/plugins/contentconverter/rdoc.page +11 -0
- data/doc/src/documentation/plugins/contentconverter/textile.page +21 -0
- data/doc/src/documentation/plugins/contentconverter/xmlbuilder.page +61 -0
- data/doc/src/documentation/plugins/core/configuration.page +11 -0
- data/doc/src/documentation/plugins/core/filehandler.page +214 -0
- data/doc/src/documentation/plugins/core/index.page +11 -0
- data/doc/src/documentation/plugins/core/resourcemanager.page +46 -0
- data/doc/src/documentation/plugins/core/tagprocessor.page +17 -0
- data/doc/src/documentation/plugins/file/copyhandler.page +26 -0
- data/doc/src/documentation/plugins/file/defaulthandler.page +15 -0
- data/doc/src/documentation/plugins/file/directoryhandler.page +37 -0
- data/doc/src/documentation/plugins/file/galleryhandler.page +181 -0
- data/doc/src/documentation/plugins/file/pagehandler.page +154 -0
- data/doc/src/documentation/plugins/file/templatehandler.page +34 -0
- data/doc/src/documentation/plugins/file/thumbnailwriter.page +39 -0
- data/doc/src/documentation/plugins/htmlvalidator/default.page +12 -0
- data/doc/src/documentation/plugins/htmlvalidator/xmllint.page +12 -0
- data/doc/src/documentation/plugins/index.page +32 -11
- data/doc/src/documentation/plugins/menustyle/default.page +19 -0
- data/doc/src/documentation/plugins/menustyle/horizontal.page +32 -0
- data/doc/src/documentation/plugins/{menustyles → menustyle}/horizontaldropdown.page +25 -19
- data/doc/src/documentation/plugins/menustyle/section.page +34 -0
- data/doc/src/documentation/plugins/menustyle/vertical.page +48 -0
- data/doc/src/documentation/plugins/menustyle/verticaldropdown.page +29 -0
- data/doc/src/documentation/plugins/misc/index.page +9 -0
- data/doc/src/documentation/plugins/{miscplugins → misc}/smileyreplacer.page +15 -14
- data/doc/src/documentation/plugins/misc/syntaxhighlighter.page +26 -0
- data/doc/src/documentation/plugins/tag/block.page +29 -0
- data/doc/src/documentation/plugins/tag/breadcrumbtrail.page +29 -0
- data/doc/src/documentation/plugins/tag/date.page +34 -0
- data/doc/src/documentation/plugins/tag/default.page +27 -0
- data/doc/src/documentation/plugins/tag/download.page +60 -0
- data/doc/src/documentation/plugins/tag/executecommand.page +29 -0
- data/doc/src/documentation/plugins/tag/includefile.page +30 -0
- data/doc/src/documentation/plugins/{tags → tag}/langbar.de.page +1 -1
- data/doc/src/documentation/plugins/tag/langbar.fr.page +6 -0
- data/doc/src/documentation/plugins/tag/langbar.page +41 -0
- data/doc/src/documentation/plugins/tag/menu.page +78 -0
- data/doc/src/documentation/plugins/{tags → tag}/meta.page +8 -7
- data/doc/src/documentation/plugins/tag/relocatable.page +46 -0
- data/doc/src/documentation/plugins/tag/resource.page +35 -0
- data/doc/src/documentation/plugins/tag/sitemap.page +35 -0
- data/doc/src/documentation/plugins/tag/wikilink.page +33 -0
- data/doc/src/documentation/references/index.page +0 -1
- data/doc/src/documentation/references/meta_info_reference.page +90 -13
- data/doc/src/documentation/references/parameter_reference.page +0 -1
- data/doc/src/documentation/references/webpage_format.page +249 -0
- data/doc/src/download.page +50 -21
- data/doc/src/examples/gallery_styles/default/default.gallery +78 -0
- data/doc/src/examples/gallery_styles/default/gallery_gallery.template +38 -0
- data/doc/src/examples/gallery_styles/default/gallery_image.template +30 -0
- data/doc/src/examples/gallery_styles/default/gallery_main.template +18 -0
- data/doc/src/examples/gallery_styles/index.page +22 -0
- data/doc/src/examples/gallery_styles/slides/gallery_gallery.template +62 -0
- data/doc/src/examples/gallery_styles/slides/gallery_image.template +53 -0
- data/doc/src/examples/gallery_styles/slides/gallery_main.template +32 -0
- data/doc/src/examples/gallery_styles/slides/slides.gallery +79 -0
- data/doc/src/examples/images/image01.jpg +0 -0
- data/doc/src/examples/images/image02.jpg +0 -0
- data/doc/src/examples/images/image03.jpg +0 -0
- data/doc/src/examples/images/image04.jpg +0 -0
- data/doc/src/examples/images/image05.jpg +0 -0
- data/doc/src/examples/images/image06.jpg +0 -0
- data/doc/src/examples/images/image07.jpg +0 -0
- data/doc/src/examples/images/image08.jpg +0 -0
- data/doc/src/examples/images/image09.jpg +0 -0
- data/doc/src/examples/images/image10.jpg +0 -0
- data/doc/src/examples/images/image11.jpg +0 -0
- data/doc/src/examples/images/image12.jpg +0 -0
- data/doc/src/examples/images/image13.jpg +0 -0
- data/doc/src/examples/images/image14.jpg +0 -0
- data/doc/src/examples/images/image15.jpg +0 -0
- data/doc/src/examples/images/image16.jpg +0 -0
- data/doc/src/examples/images/image17.jpg +0 -0
- data/doc/src/examples/images/image18.jpg +0 -0
- data/doc/src/examples/index.page +18 -0
- data/doc/src/examples/website_styles/1024px.page +5 -0
- data/doc/src/examples/website_styles/andreas00.page +5 -0
- data/doc/src/examples/website_styles/andreas01.page +5 -0
- data/doc/src/examples/website_styles/andreas03.page +5 -0
- data/doc/src/examples/website_styles/andreas04.page +5 -0
- data/doc/src/examples/website_styles/andreas05.page +5 -0
- data/doc/src/examples/website_styles/andreas06.page +5 -0
- data/doc/src/examples/website_styles/andreas07.page +5 -0
- data/doc/src/examples/website_styles/andreas08.page +5 -0
- data/doc/src/examples/website_styles/andreas09.page +5 -0
- data/doc/src/examples/website_styles/default.page +5 -0
- data/doc/src/examples/website_styles/index.page +71 -0
- data/doc/src/examples/website_styles/plain.page +5 -0
- data/doc/src/examples/website_templates/default.page +5 -0
- data/doc/src/examples/website_templates/index.page +24 -0
- data/doc/src/examples/website_templates/personal_hp.page +5 -0
- data/doc/src/examples/website_templates/project.page +5 -0
- data/doc/src/features.page +16 -14
- data/doc/src/images/bodybg.jpg +0 -0
- data/doc/src/images/footerbg.jpg +0 -0
- data/doc/src/images/menuhover.jpg +0 -0
- data/doc/src/images/node_diagram.svg +7132 -0
- data/doc/src/images/thumb_example.jpg +0 -0
- data/doc/src/images/thumb_example_cropped.jpg +0 -0
- data/doc/src/images/thumb_example_normal.jpg +0 -0
- data/doc/src/index.page +14 -102
- data/doc/src/news.page +154 -0
- data/doc/src/plugin.template +10 -0
- data/lib/webgen/cli.rb +427 -0
- data/lib/webgen/composite.rb +11 -11
- data/lib/webgen/config.rb +52 -0
- data/lib/webgen/content.rb +172 -0
- data/lib/webgen/extcommand.rb +23 -0
- data/lib/webgen/languages.rb +110 -0
- data/lib/webgen/listener.rb +1 -1
- data/lib/webgen/node.rb +196 -124
- data/lib/webgen/plugin.rb +480 -144
- data/lib/webgen/plugins/{contenthandlers → contentconverters}/default.rb +10 -9
- data/lib/webgen/plugins/{contenthandlers → contentconverters}/html.rb +11 -8
- data/lib/webgen/plugins/contentconverters/markdown.rb +54 -0
- data/lib/webgen/plugins/{contenthandlers → contentconverters}/rdoc.rb +16 -12
- data/lib/webgen/plugins/{contenthandlers → contentconverters}/textile.rb +18 -13
- data/lib/webgen/plugins/contentconverters/xmlbuilder.rb +58 -0
- data/lib/webgen/plugins/coreplugins/configuration.rb +11 -102
- data/lib/webgen/plugins/coreplugins/resourcemanager.rb +95 -74
- data/lib/webgen/plugins/filehandlers/copy.rb +41 -19
- data/lib/webgen/plugins/filehandlers/directory.rb +52 -50
- data/lib/webgen/plugins/filehandlers/filehandler.rb +370 -123
- data/lib/webgen/plugins/filehandlers/gallery.rb +368 -117
- data/lib/webgen/plugins/filehandlers/page.rb +160 -146
- data/lib/webgen/plugins/filehandlers/template.rb +65 -52
- data/lib/webgen/plugins/htmlvalidators/default.rb +9 -7
- data/lib/webgen/plugins/htmlvalidators/xmllint.rb +17 -33
- data/lib/webgen/plugins/menustyles/default.rb +27 -25
- data/lib/webgen/plugins/menustyles/horizontal.rb +22 -41
- data/lib/webgen/plugins/menustyles/horizontal_dropdown.rb +25 -39
- data/lib/webgen/plugins/menustyles/section.rb +68 -0
- data/lib/webgen/plugins/menustyles/vertical.rb +36 -56
- data/lib/webgen/plugins/menustyles/vertical_dropdown.rb +24 -32
- data/lib/webgen/plugins/miscplugins/smileyreplacer.rb +20 -17
- data/lib/webgen/plugins/miscplugins/syntax_highlighter.rb +72 -0
- data/lib/webgen/plugins/miscplugins/treewalker.rb +9 -36
- data/lib/webgen/plugins/tags/block.rb +65 -0
- data/lib/webgen/plugins/tags/breadcrumbtrail.rb +15 -11
- data/lib/webgen/plugins/tags/date.rb +11 -7
- data/lib/webgen/plugins/tags/download.rb +38 -38
- data/lib/webgen/plugins/tags/executecommand.rb +30 -15
- data/lib/webgen/plugins/tags/includefile.rb +26 -13
- data/lib/webgen/plugins/tags/langbar.rb +23 -18
- data/lib/webgen/plugins/tags/menu.rb +49 -70
- data/lib/webgen/plugins/tags/meta.rb +12 -9
- data/lib/webgen/plugins/tags/relocatable.rb +41 -13
- data/lib/webgen/plugins/tags/sitemap.rb +32 -28
- data/lib/webgen/plugins/tags/tag_processor.rb +279 -0
- data/lib/webgen/plugins/tags/wikilink.rb +25 -20
- data/lib/webgen/test.rb +202 -0
- data/lib/webgen/website.rb +310 -0
- data/test/fixtures/sample_site/src/chained.template +3 -0
- data/test/fixtures/sample_site/src/default.template +3 -0
- data/test/fixtures/sample_site/src/dir1/dir11/file111.de.page +3 -0
- data/test/fixtures/sample_site/src/dir1/dir11/file111.page +3 -0
- data/test/fixtures/sample_site/src/dir1/dir11/index.page +3 -0
- data/test/fixtures/sample_site/src/dir1/file11.page +3 -0
- data/test/fixtures/sample_site/src/dir2/file21.page +3 -0
- data/test/fixtures/sample_site/src/embedded.rhtml +1 -0
- data/test/fixtures/sample_site/src/file1.page +8 -0
- data/test/fixtures/sample_site/src/file2.de.page +6 -0
- data/test/fixtures/sample_site/src/index.de.page +4 -0
- data/test/fixtures/sample_site/src/index.en.page +1 -0
- data/test/fixtures/sample_site/src/invalid.template +3 -0
- data/test/fixtures/sample_site/src/test.jpg +1 -0
- data/test/fixtures/sample_site/src/test.template +3 -0
- data/test/fixtures/tc_content/blocks.yaml +40 -0
- data/test/fixtures/tc_content/correct.yaml +65 -0
- data/test/fixtures/tc_content/incorrect.yaml +42 -0
- data/test/fixtures/tc_filehandler_filehandler/backing/metainfo.yaml +9 -0
- data/test/fixtures/tc_filehandler_filehandler/backing_empty/metainfo.yaml +6 -0
- data/test/fixtures/tc_filehandler_filehandler/sample_plugin.rb +49 -0
- data/test/fixtures/tc_filehandler_filehandler/unmodified +0 -0
- data/test/fixtures/tc_filehandler_gallery/test.gallery +2 -0
- data/test/fixtures/tc_filehandler_gallery/test1.gallery +2 -0
- data/test/fixtures/tc_filehandler_gallery/test1.jpg +0 -0
- data/test/fixtures/tc_filehandler_gallery/test2.jpg +0 -0
- data/test/fixtures/tc_filehandler_gallery/test3.jpg +0 -0
- data/test/fixtures/tc_filehandler_gallery/test4.jpg +0 -0
- data/test/fixtures/tc_filehandler_page/testdata.yaml +10 -0
- data/test/fixtures/tc_menustyles_default/menustyle.rb +7 -0
- data/test/fixtures/tc_node/nodes.yaml +64 -0
- data/test/fixtures/tc_plugin/handlerplugin.rb +15 -0
- data/test/fixtures/tc_plugin/plugin1.rb +33 -0
- data/test/fixtures/tc_plugin/plugin2.rb +8 -0
- data/test/fixtures/tc_tags_includefile/testfile +1 -0
- data/test/fixtures/tc_tags_tag_processor/test_file1 +1 -0
- data/test/fixtures/tc_tags_tag_processor/testtag.rb +17 -0
- data/test/fixtures/tc_website/correct.yaml +6 -0
- data/test/fixtures/tc_website/incorrect_structure.yaml +2 -0
- data/test/fixtures/tc_website/incorrect_yaml.yaml +5 -0
- data/test/fixtures/tc_website/meta_info_test.yaml +10 -0
- data/test/fixtures/tc_website/testdir/README +1 -0
- data/test/fixtures/tc_website/testdir/falsedir/README +1 -0
- data/test/runtests.rb +2 -0
- data/test/unittests/tc_composite.rb +82 -0
- data/test/unittests/tc_config.rb +18 -0
- data/test/unittests/tc_content.rb +88 -0
- data/test/unittests/tc_contentconverters_default.rb +13 -0
- data/test/unittests/tc_contentconverters_html.rb +16 -0
- data/test/unittests/tc_contentconverters_markdown.rb +22 -0
- data/test/unittests/tc_contentconverters_rdoc.rb +16 -0
- data/test/unittests/tc_contentconverters_textile.rb +22 -0
- data/test/unittests/tc_contentconverters_xmlbuilder.rb +22 -0
- data/test/unittests/tc_filehandler_copy.rb +65 -0
- data/test/unittests/tc_filehandler_directory.rb +134 -0
- data/test/unittests/tc_filehandler_filehandler.rb +294 -0
- data/test/unittests/tc_filehandler_gallery.rb +165 -0
- data/test/unittests/tc_filehandler_page.rb +183 -0
- data/test/unittests/tc_filehandler_template.rb +60 -0
- data/test/unittests/tc_htmlvalidators_default.rb +12 -0
- data/test/unittests/tc_htmlvalidators_xmllint.rb +19 -0
- data/test/unittests/tc_languages.rb +57 -0
- data/test/unittests/tc_listener.rb +72 -0
- data/test/unittests/tc_menustyles_default.rb +51 -0
- data/test/unittests/tc_menustyles_horizontal.rb +18 -0
- data/test/unittests/tc_menustyles_horizontal_dropdown.rb +18 -0
- data/test/unittests/tc_menustyles_section.rb +59 -0
- data/test/unittests/tc_menustyles_vertical.rb +79 -0
- data/test/unittests/tc_menustyles_vertical_dropdown.rb +18 -0
- data/test/unittests/tc_node.rb +202 -0
- data/test/unittests/tc_plugin.rb +214 -0
- data/test/unittests/tc_resourcemanager.rb +42 -0
- data/test/unittests/tc_smileyreplacer.rb +25 -0
- data/test/unittests/tc_syntax_highlighter.rb +30 -0
- data/test/unittests/tc_tags_block.rb +27 -0
- data/test/unittests/tc_tags_breadcrumbtrail.rb +22 -0
- data/test/unittests/tc_tags_date.rb +15 -0
- data/test/unittests/tc_tags_download.rb +32 -0
- data/test/unittests/tc_tags_executecommand.rb +37 -0
- data/test/unittests/tc_tags_includefile.rb +53 -0
- data/test/unittests/tc_tags_langbar.rb +42 -0
- data/test/unittests/tc_tags_menu.rb +50 -0
- data/test/unittests/tc_tags_meta.rb +19 -0
- data/test/unittests/tc_tags_relocatable.rb +66 -0
- data/test/unittests/tc_tags_sitemap.rb +33 -0
- data/test/unittests/tc_tags_tag_processor.rb +107 -0
- data/test/unittests/tc_tags_wikilink.rb +22 -0
- data/test/unittests/tc_treewalker.rb +44 -0
- data/test/unittests/tc_website.rb +188 -0
- metadata +829 -312
- data/bin/webgen-gallery-editor +0 -654
- data/bin/webgen-gui +0 -10
- data/data/webgen/website_templates/default/config.yaml +0 -2
- data/doc/plugin/clidesc.rb +0 -46
- data/doc/plugin/source.rb +0 -21
- data/doc/src/about.page +0 -22
- data/doc/src/documentation/cli.page +0 -12
- data/doc/src/documentation/plugins/contenthandlers/html.page +0 -11
- data/doc/src/documentation/plugins/contenthandlers/index.page +0 -7
- data/doc/src/documentation/plugins/contenthandlers/markdown.page +0 -11
- data/doc/src/documentation/plugins/contenthandlers/rdoc.page +0 -11
- data/doc/src/documentation/plugins/contenthandlers/textile.page +0 -11
- data/doc/src/documentation/plugins/coreplugins/configuration.page +0 -12
- data/doc/src/documentation/plugins/coreplugins/index.page +0 -7
- data/doc/src/documentation/plugins/coreplugins/logging.page +0 -13
- data/doc/src/documentation/plugins/coreplugins/resourcemanager.page +0 -34
- data/doc/src/documentation/plugins/filehandlers/backing.page +0 -46
- data/doc/src/documentation/plugins/filehandlers/copy.page +0 -12
- data/doc/src/documentation/plugins/filehandlers/directoryhandler.page +0 -35
- data/doc/src/documentation/plugins/filehandlers/gallery.page +0 -86
- data/doc/src/documentation/plugins/filehandlers/index.page +0 -34
- data/doc/src/documentation/plugins/filehandlers/page.page +0 -170
- data/doc/src/documentation/plugins/filehandlers/template.page +0 -21
- data/doc/src/documentation/plugins/gallerylayouters/index.page +0 -18
- data/doc/src/documentation/plugins/htmlvalidators/index.page +0 -6
- data/doc/src/documentation/plugins/htmlvalidators/xmllint.page +0 -14
- data/doc/src/documentation/plugins/menustyles/horizontal.page +0 -21
- data/doc/src/documentation/plugins/menustyles/index.page +0 -12
- data/doc/src/documentation/plugins/menustyles/partial.page +0 -27
- data/doc/src/documentation/plugins/menustyles/vertical.page +0 -32
- data/doc/src/documentation/plugins/menustyles/verticaldropdown.page +0 -23
- data/doc/src/documentation/plugins/miscplugins/index.page +0 -7
- data/doc/src/documentation/plugins/tags/breadcrumbtrail.page +0 -20
- data/doc/src/documentation/plugins/tags/date.page +0 -19
- data/doc/src/documentation/plugins/tags/download.page +0 -23
- data/doc/src/documentation/plugins/tags/executecommand.page +0 -18
- data/doc/src/documentation/plugins/tags/includefile.page +0 -15
- data/doc/src/documentation/plugins/tags/index.page +0 -44
- data/doc/src/documentation/plugins/tags/langbar.page +0 -27
- data/doc/src/documentation/plugins/tags/menu.de.page +0 -12
- data/doc/src/documentation/plugins/tags/menu.page +0 -19
- data/doc/src/documentation/plugins/tags/multilang.de.page +0 -4
- data/doc/src/documentation/plugins/tags/multilang.fr.page +0 -4
- data/doc/src/documentation/plugins/tags/multilang.page +0 -4
- data/doc/src/documentation/plugins/tags/relocatable.page +0 -16
- data/doc/src/documentation/plugins/tags/resource.page +0 -22
- data/doc/src/documentation/plugins/tags/sitemap.page +0 -17
- data/doc/src/documentation/plugins/tags/wikilink.page +0 -18
- data/doc/src/documentation/webgen_gallery_editor.page +0 -82
- data/doc/src/images/screenshots/wge-image.png +0 -0
- data/doc/src/images/screenshots/wge-layout-preview.png +0 -0
- data/doc/src/images/screenshots/wge-main-disabled.png +0 -0
- data/doc/src/images/screenshots/wge-main.png +0 -0
- data/doc/src/meta.info +0 -30
- data/doc/src/screenshots.gallery +0 -33
- data/install.rb +0 -19
- data/lib/webgen.rb +0 -277
- data/lib/webgen/plugins/contenthandlers/markdown.rb +0 -50
- data/lib/webgen/plugins/coreplugins/logging.rb +0 -101
- data/lib/webgen/plugins/filehandlers/backing.rb +0 -159
- data/lib/webgen/plugins/gallerylayouters/default.rb +0 -152
- data/lib/webgen/plugins/menustyles/partial.rb +0 -95
- data/lib/webgen/plugins/tags/tags.rb +0 -254
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: CopyHandler
|
|
3
|
+
inMenu: true
|
|
4
|
+
template: /plugin.template
|
|
5
|
+
plugin: File/CopyHandler
|
|
6
|
+
---
|
|
7
|
+
h2(#description). Description
|
|
8
|
+
|
|
9
|
+
This plugin has two operation modes:
|
|
10
|
+
|
|
11
|
+
* All files that match the {param: File/CopyHandler:erbPaths} parameter are processed with ERB and
|
|
12
|
+
then written out. The leading letter @r@ is stripped from the extension (e.g. @.rhtml@) to form
|
|
13
|
+
the output file name. During processing with ERB the current @node@ object is available. This
|
|
14
|
+
operation mode is useful, for example, for @.rhtml@ files (HTML with embedded ruby) or @.rcss@
|
|
15
|
+
files (CSS files with embedded ruby).
|
|
16
|
+
|
|
17
|
+
* All files that match the {param: File/CopyHandler:paths} parameter are copied from the source to
|
|
18
|
+
the output directory without modification. This is useful, for example, for CSS stylesheets,
|
|
19
|
+
javascript files and images.
|
|
20
|
+
|
|
21
|
+
When a file matches against both parameters, it is handled as if it matches only against {param:
|
|
22
|
+
File/CopyHandler:erbPaths}.
|
|
23
|
+
|
|
24
|
+
Also note that files are written only if the source file is newer than the output file! This means
|
|
25
|
+
that, for example, images are copied only during the first webgen run and not during the second if
|
|
26
|
+
the image files have not changed.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: DefaultHandler
|
|
3
|
+
directoryName: File
|
|
4
|
+
inMenu: true
|
|
5
|
+
template: /plugin.template
|
|
6
|
+
plugin: File/DefaultHandler
|
|
7
|
+
---
|
|
8
|
+
h2(#description). Description
|
|
9
|
+
|
|
10
|
+
The DefaultHandler is the base plugin for all file handler plugins. It is used to hold the
|
|
11
|
+
parameters that apply to all file handler plugins and it provides default implementations for some
|
|
12
|
+
methods as well as the functionality to specify path patterns.
|
|
13
|
+
|
|
14
|
+
For information on how the files in the source directory are generally handled have a look at the
|
|
15
|
+
{plugin: Core/FileHandler#filehandling}.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: DirectoryHandler
|
|
3
|
+
inMenu: true
|
|
4
|
+
template: /plugin.template
|
|
5
|
+
plugin: File/DirectoryHandler
|
|
6
|
+
---
|
|
7
|
+
h2(#description). Description
|
|
8
|
+
|
|
9
|
+
The directory handler is used for handling directories, ie. it creates the target directories.
|
|
10
|
+
Additionally an index file for each directory can be specified. If it is specified, this file is
|
|
11
|
+
used instead of the plain directory index for displaying purposes. This means that when the
|
|
12
|
+
directory path is resolved (e.g. by the {plugin: Tag/Relocatable}) the index file is returned.
|
|
13
|
+
|
|
14
|
+
The name of the index file is specified with the @indexFile@ meta information on a directory node.
|
|
15
|
+
This meta information is set by default and can be overridden globally by using the special
|
|
16
|
+
@defaultMetaInfo@ param for the @DirectoryHandler@ in the
|
|
17
|
+
<a href="{relocatable: /documentation/gettingstarted.page#config}">configuration file</a> or by
|
|
18
|
+
setting it on individual directories using the
|
|
19
|
+
<a href="{relocatable: ../core/filehandler.page#metainfo-file}">meta information backing file</a>.
|
|
20
|
+
|
|
21
|
+
The title for a directory can be set via the @title@ meta information on the directory itself.
|
|
22
|
+
However, if the directory has an index file, the meta information @directoryName@ of the index file
|
|
23
|
+
is used for the directory title. This allows different directory names based on the current
|
|
24
|
+
language.
|
|
25
|
+
|
|
26
|
+
Normally, webgen shows a warning if it could not find the directory index file for a directory.
|
|
27
|
+
However, there are most certainly directories which should not have an index file, e.g. a directory
|
|
28
|
+
with only images. To prevent webgen from displaying warnings for such directories, you can set a
|
|
29
|
+
null index file using the meta information backing file:
|
|
30
|
+
|
|
31
|
+
<pre>
|
|
32
|
+
dirWithOnlyImages:
|
|
33
|
+
indexFile: ~
|
|
34
|
+
</pre>
|
|
35
|
+
|
|
36
|
+
This will prevent webgen from showing warnings because you explicitly define a null index file. This
|
|
37
|
+
can also be done globally in the configuration file!
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: GalleryHandler
|
|
3
|
+
inMenu: true
|
|
4
|
+
template: /plugin.template
|
|
5
|
+
plugin: File/GalleryHandler
|
|
6
|
+
---
|
|
7
|
+
h2(#description). Description
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
This file handler uses image gallery files to automatically build image galleries. These image
|
|
11
|
+
galleries are highly configurable and theme-able through the use of different gallery styles - have
|
|
12
|
+
a look at the <a href="{relocatable: /examples/gallery_styles}">examples section</a>!
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
h2(#structure). Structure of image galleries
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
An image gallery consists of three types of page files:
|
|
19
|
+
|
|
20
|
+
* *image pages*: An image page is created for each image. Normally the title, the unresized image,
|
|
21
|
+
the image description and possible other information as well as navigational links (link to the
|
|
22
|
+
next/previous image etc.) are displayed.
|
|
23
|
+
* *gallery pages*: A gallery page displays a list of images (number of images per gallery page is
|
|
24
|
+
customizable). If more images than the maximum number of images per gallery page exist, then two
|
|
25
|
+
or more gallery pages are created.
|
|
26
|
+
* *main page*: A main page is only created if two or more gallery pages exist and is used for
|
|
27
|
+
displaying links to the gallery pages.
|
|
28
|
+
|
|
29
|
+
All these pages are created automatically by the gallery handler, but they don't have any content;
|
|
30
|
+
everything is done by the templates of a gallery style. The parameters {param:
|
|
31
|
+
File/GalleryHandler:imagePageTemplate}, {param: File/GalleryHandler:galleryPageTemplate} and {param:
|
|
32
|
+
File/GalleryHandler:mainPageTemplate} define which templates should be used for image pages, gallery
|
|
33
|
+
pages and the main page. The default values can be overwritten in the gallery file!
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
h2(#gallery-styles). Gallery styles
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
Gallery styles are used... to style image galleries ;-) A gallery style consists of templates and,
|
|
40
|
+
optionally, plugins. A minimal gallery style consists of the following files:
|
|
41
|
+
|
|
42
|
+
* @gallery_image.template@
|
|
43
|
+
* @gallery_gallery.template@
|
|
44
|
+
* @gallery_main.template@
|
|
45
|
+
|
|
46
|
+
To display all available gallery styles use the following command:
|
|
47
|
+
|
|
48
|
+
<pre>
|
|
49
|
+
$ wegben help use gallery_style
|
|
50
|
+
</pre>
|
|
51
|
+
|
|
52
|
+
To use a specific gallery style called STYLE issue the following command:
|
|
53
|
+
|
|
54
|
+
<pre>
|
|
55
|
+
$ wegben use gallery_style STYLE
|
|
56
|
+
</pre>
|
|
57
|
+
|
|
58
|
+
This copies all normal gallery style files from the gallery style to the source directory and all
|
|
59
|
+
plugins to the plugin directory, maybe overwritting files (you are asked before copying if you would
|
|
60
|
+
like to procede). However, this command is not able to delete previously copied gallery style files,
|
|
61
|
+
so you have to remove them yourself.
|
|
62
|
+
|
|
63
|
+
For information about how a gallery style can be created have a look at
|
|
64
|
+
<a href="{relocatable: /documentation/extending_webgen.page}">extending webgen section</a>!
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
h2(#file-format). Gallery File Format
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
A gallery file has YAML as file format and is easy to create. It consists of two sections which are
|
|
71
|
+
separated by a line consisting only of three dashes: the configuration section and the image
|
|
72
|
+
section.
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
h3(#file-format-config-sec). The configuration section
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
The first section of a gallery file is the configuration section in which you define the basic
|
|
79
|
+
properties of your image gallery like the title or how many images should be displayed per page. By
|
|
80
|
+
using the name of a gallery handler parameter as key you can override its value. Additionally the
|
|
81
|
+
following keys are used by the gallery handler:
|
|
82
|
+
|
|
83
|
+
* *title*: The title of the gallery. If this key is not specified, the capitalized file name is used.
|
|
84
|
+
* *mainPageMetaInfo*: Used for setting additional meta information for the main page.
|
|
85
|
+
* *galleryPagesMetaInfo*: Used for setting additional meta information for the gallery pages.
|
|
86
|
+
* *layouter*: Plugin used for additional gallery tasks, has to be registered under
|
|
87
|
+
@GalleryLayouter/<layouter-name>@
|
|
88
|
+
* *thumbnailSize*: The size of the thumbnails, can also be set individually for each image.
|
|
89
|
+
* *thumbnailResizeMethod*: The method used for creating the thumbnails, can also be set individually
|
|
90
|
+
for each image.
|
|
91
|
+
|
|
92
|
+
For more information about the last two items have a look at {plugin: File/ThumbnailWriter}!
|
|
93
|
+
|
|
94
|
+
Two nearly always specified parameters should also be mentioned here: {param:
|
|
95
|
+
File/GalleryHandler:imagesPerPage} and {param: File/GalleryHandler:images}. The first specifies how
|
|
96
|
+
many images should be placed on a single gallery page. The second one specifies which images should
|
|
97
|
+
be used the whole image gallery. These images have to be somewhere in the website source directory!
|
|
98
|
+
You can/should not specify images outside the source directory as these images are not automatically
|
|
99
|
+
copied to the output directory and automatic thumbnail creation may not work correctly!
|
|
100
|
+
|
|
101
|
+
All other key-value pairs specified are not used by webgen. However, as layouter plugins have access
|
|
102
|
+
to the whole configuration section they may use their own configuration keys.
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
h3(#file-format-image-sec). The image section
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
The second section is the image data section in which additional data can be set for images. It has
|
|
109
|
+
the image file paths as keys. These paths have to be relative to the gallery file! The following
|
|
110
|
+
keys are used and/or set by the gallery handler:
|
|
111
|
+
|
|
112
|
+
* *title*: The title of the image. If not set, a default value will be assigned.
|
|
113
|
+
* *template*: The template file for the image page. If not set, the value of the parameter {param:
|
|
114
|
+
File/GalleryHandler:imagePageTemplate} will be used.
|
|
115
|
+
* *orderInfo*: The images are sorted according to this key. If this key is not set, the title is
|
|
116
|
+
used; if this is also not set, the image file name is used for sorting.
|
|
117
|
+
* *thumbnail*: If this key is set for an image, the value is assumed to be the path to a thumbnail
|
|
118
|
+
for this image. Otherwise, it is set by the gallery handler and a thumbnail is created
|
|
119
|
+
automatically (if the {plugin: File/ThumbnailWriter} could be loaded).
|
|
120
|
+
* *thumbnailSize*: The size of the automatically created thumbnail in the format "WIDTHxHEIGHT"
|
|
121
|
+
where WIDTH and HEIGHT are numeric values specifying the width and the height. If not set, the
|
|
122
|
+
value from the configuration section is used. If that is also not set, a default value is used
|
|
123
|
+
(see {param: File/ThumbnailWriter:thumbnailSize}).
|
|
124
|
+
* *thumbnailResizeMethod*: The method used to create the automatic thumbnail. For more information
|
|
125
|
+
about the possible values have a look at {param: File/ThumbnailWriter:resizeMethod}. If
|
|
126
|
+
not set, the value from the configuration section is used, If that is also not set, a default
|
|
127
|
+
value is used (see {param: File/ThumbnailWriter:resizeMethod}).
|
|
128
|
+
* *exif*: If not set and the exif reading library is installed, it is assigned the exif information
|
|
129
|
+
of the image. The exif reading library can be installed using <code>gem install exifr</code>
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
h2(#thumbnail-creation). Automatic thumbnail creation
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
The gallery handler is able to automatically create thumbnails for the images in the image gallery
|
|
136
|
+
if the {plugin: File/ThumbnailWriter} is available. If so, the @thumbnailSize@ and
|
|
137
|
+
@thumbnailResizeMethod@ keys described above are used to create the thumbnail.
|
|
138
|
+
|
|
139
|
+
If the plugin is not available, you either have to explicitly specify a thumbnail via the
|
|
140
|
+
@thumbnail@ key for an image or the @width@ and @height@ attributes of the HTML @img@ tag are used
|
|
141
|
+
to scale the full image to the thumbnail size.
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
h2(#file-format-example). Example gallery file
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
The following example gallery file shows the most common used configuration options:
|
|
148
|
+
|
|
149
|
+
<pre>
|
|
150
|
+
title: Example Gallery
|
|
151
|
+
imagesPerPage: 32
|
|
152
|
+
images: example/**/*.jpg
|
|
153
|
+
|
|
154
|
+
mainPageMetaInfo:
|
|
155
|
+
inMenu: false
|
|
156
|
+
otherKey: value
|
|
157
|
+
|
|
158
|
+
galleryPagesMetaInfo:
|
|
159
|
+
orderInfo: 10
|
|
160
|
+
inMenu: true
|
|
161
|
+
\---
|
|
162
|
+
example/dir1/img1.jpg:
|
|
163
|
+
title: Test title
|
|
164
|
+
description: Long description of image
|
|
165
|
+
|
|
166
|
+
example/img2.jpg
|
|
167
|
+
title: Title2 of pic
|
|
168
|
+
mykey: mydata
|
|
169
|
+
</pre>
|
|
170
|
+
|
|
171
|
+
First the title of the gallery is set and the {param: File/GalleryHandler:imagesPerPage} parameter
|
|
172
|
+
value is overridden. Then it is specified that all files with the extension @jpg@ under the
|
|
173
|
+
directory @example@ should be used for this image gallery.
|
|
174
|
+
|
|
175
|
+
The next two keys set the meta information for the main page and the gallery pages. Be aware that
|
|
176
|
+
the @orderInfo@ meta information is set for the gallery pages. This implies that the gallery handler
|
|
177
|
+
automatically increments the @orderInfo@ value for each gallery page sothat they are sorted and
|
|
178
|
+
displayed in the menu correctly.
|
|
179
|
+
|
|
180
|
+
The second section sets the meta information for the images of the gallery. All meta information set
|
|
181
|
+
for the images will be available to the image template.
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: PageHandler
|
|
3
|
+
inMenu: true
|
|
4
|
+
template: /plugin.template
|
|
5
|
+
plugin: File/PageHandler
|
|
6
|
+
---
|
|
7
|
+
h2(#description). Description
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
Page files are used to specify the actual content for the website. They contain the content for a
|
|
11
|
+
web page and, optionally, meta information. For information about the format used for page files
|
|
12
|
+
have a look at the <a href="{relocatable: /documentation/references/webpage_format.page}">WebPage Format reference</a>.
|
|
13
|
+
The default values for the content block name and format specifier have been overwritten by setting
|
|
14
|
+
a default for the @blocks@ meta information!
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
h2(#conventions). Conventions
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
h3(#inputfile-naming). Page file naming
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
The filename of a page file should be in the following format sothat meta information can be
|
|
24
|
+
extracted correctly and that referencing a page file works correctly:
|
|
25
|
+
|
|
26
|
+
p=. <b>[orderInfo.]name[.lang].extension</b>
|
|
27
|
+
|
|
28
|
+
* @orderInfo@
|
|
29
|
+
|
|
30
|
+
This part is optional and has to consist purely of the digits 0 to 9. It's value is used for the
|
|
31
|
+
meta information @orderInfo@. If not specified, it defaults to the value zero.
|
|
32
|
+
|
|
33
|
+
* @lang@
|
|
34
|
+
|
|
35
|
+
This part is optional and has to be an "ISO-639-1/2":http://www.loc.gov/standards/iso639-2/
|
|
36
|
+
language identifier (two or three characters (a-z) long). If not specified, it is assumed that the
|
|
37
|
+
page file is written in the default language set via {param: Core/Configuration:lang}.
|
|
38
|
+
|
|
39
|
+
* @extension@
|
|
40
|
+
|
|
41
|
+
This has to be @page@ for now.
|
|
42
|
+
|
|
43
|
+
* @name@
|
|
44
|
+
|
|
45
|
+
This part is used on the one hand for the @title@ meta information (but with these
|
|
46
|
+
transformations: '_' and '-' become spaces). On the other hand, the standardized page and
|
|
47
|
+
localized page names are derived from it. @name@ must not contain any dots. Also: if two page
|
|
48
|
+
files have the same @name@ part, they should define the same content for different languages as
|
|
49
|
+
webgen consideres them as "one" page file in two languages. If the @name@ parts and the languages
|
|
50
|
+
are the same, webgen can't distinguish the two page files and raises an error.
|
|
51
|
+
|
|
52
|
+
Following are some examples of page file names:
|
|
53
|
+
|
|
54
|
+
<table class="examples">
|
|
55
|
+
<tr><th>Filename</th><th>Parsed meta information</th></tr>
|
|
56
|
+
<tr>
|
|
57
|
+
<td>@name.page@</td>
|
|
58
|
+
<td>title: Name, language: en, orderInfo: 0</td>
|
|
59
|
+
</tr>
|
|
60
|
+
<tr>
|
|
61
|
+
<td>@name.de.page@</td>
|
|
62
|
+
<td>title: Name, language: de, orderInfo: 0</td>
|
|
63
|
+
</tr>
|
|
64
|
+
<tr>
|
|
65
|
+
<td>@01.name_of-file.eo.page@</td>
|
|
66
|
+
<td>title: Name of file, language: de, orderInfo: 1</td>
|
|
67
|
+
</tr>
|
|
68
|
+
</table>
|
|
69
|
+
|
|
70
|
+
Notice: The first two examples define the same content for two different languages (en and de) as
|
|
71
|
+
they have the same @name@ part.
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
h3(#outputfile-naming). Output file naming
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
The output name of a page file can be customized using the {param: File/PageHandler:outputNameStyle}
|
|
78
|
+
parameter (which can be overridden by setting the @outputNameStyle@ meta information). This allows
|
|
79
|
+
to change the output name so that, for example, Apache's built in "select HTML file by language"
|
|
80
|
+
magic can be utilized.
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
h3(#pagename). Standardized page names for referencing page files
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
As described above the name part of the page file filename is used for creating the *standardized
|
|
87
|
+
page name* and the *standardized localized page name* as follows:
|
|
88
|
+
|
|
89
|
+
* standardized page name: <name part>.page
|
|
90
|
+
* standardized localized page name: <name part>.<language code>.page
|
|
91
|
+
|
|
92
|
+
When two page files have the same name part, they have a common standardized page name but different
|
|
93
|
+
standardized localized page names. As the output name of a page file can be customized, it is not
|
|
94
|
+
wise to reference a page file by its output file name. Use the standardized page names instead.
|
|
95
|
+
Therefore if you reference a page file using the standardized page name, you will always get the
|
|
96
|
+
page file in the current language. If you use the standardized localized page name, you will always
|
|
97
|
+
get the page file in the specified language. So, all in all, you can reference a page file by (in
|
|
98
|
+
order of preference): the standardized page name, the standardized local page name and the output
|
|
99
|
+
name.
|
|
100
|
+
|
|
101
|
+
These conventions are best shown using examples:
|
|
102
|
+
|
|
103
|
+
<table class="examples">
|
|
104
|
+
<tr><th>Filename</th><th>Standardized page name</th><th>Standardized localized page name</th></tr>
|
|
105
|
+
<tr>
|
|
106
|
+
<td>@hallo.page@</td>
|
|
107
|
+
<td>@hallo.page@</td>
|
|
108
|
+
<td>@hallo.en.page@ (if the default language is English)</td>
|
|
109
|
+
</tr>
|
|
110
|
+
<tr>
|
|
111
|
+
<td>@the_others.de.page@</td>
|
|
112
|
+
<td>@the_others.page@</td>
|
|
113
|
+
<td>@the_others.de.page@</td>
|
|
114
|
+
</tr>
|
|
115
|
+
<tr>
|
|
116
|
+
<td>@12.documentation.eo.page@</td>
|
|
117
|
+
<td>@documentation.page@</td>
|
|
118
|
+
<td>@documentation.eo.page@</td>
|
|
119
|
+
</tr>
|
|
120
|
+
</table>
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
h2(#howto-metainfo). How meta information is set
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
As meta information can be defined in page files, the following sections explains in more detail
|
|
127
|
+
what is done in step 4 of the list from the section "Processing order" in {plugin:
|
|
128
|
+
Core/FileHandler#metainfo-processing}:
|
|
129
|
+
|
|
130
|
+
* Meta information from the filename
|
|
131
|
+
|
|
132
|
+
Meta information derived from the filename overrides the default meta information. This includes
|
|
133
|
+
the meta information @orderInfo@, @lang@ and @title@.
|
|
134
|
+
|
|
135
|
+
* Meta information from the meta information section of the page file
|
|
136
|
+
|
|
137
|
+
All meta information from this part set previously set meta information, especially the meta
|
|
138
|
+
information @lang@, @orderInfo@ and @title@!
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
h2(#fragment-nodes). Fragment Nodes
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
As a page file specifies the content of web page, it normally has sections, subsections and so on
|
|
145
|
+
(created by the @h1@ - @h6@ HTML tags). Nodes for these sections are created under the page file
|
|
146
|
+
node sothat they can be used later by webgen plugins. However, there are certain restrictions:
|
|
147
|
+
|
|
148
|
+
* Only sections of the block named 'content' (the default name for the main block) are added to the
|
|
149
|
+
page file node
|
|
150
|
+
* Only already existing sections _WITH_ an @id@ attribute are used. This means that sections without
|
|
151
|
+
and @id@ attribute and sections defined later via webgen tags or ERB are not used!
|
|
152
|
+
|
|
153
|
+
A plugin using these fragment nodes is {plugin: MenuStyle/Section} which displays an in-page content
|
|
154
|
+
menu.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: TemplateHandler
|
|
3
|
+
inMenu: true
|
|
4
|
+
template: /plugin.template
|
|
5
|
+
plugin: File/TemplateHandler
|
|
6
|
+
---
|
|
7
|
+
h2(#description). Description
|
|
8
|
+
|
|
9
|
+
The template handler processes the templates found in the source directory. Templates, as the name
|
|
10
|
+
already implies, normally specify the layout and the overall "picture" of a web page that is defined
|
|
11
|
+
using a page file.
|
|
12
|
+
|
|
13
|
+
These files have the same format as page files - more information about this format can be found
|
|
14
|
+
in the <a href="{relocatable: /documentation/references/webpage_format.page}">WebPage Format reference</a>.
|
|
15
|
+
Also be aware that the template handler uses the content format set for the page handler! This is
|
|
16
|
+
normally something like Textile or Markdown, if you want to use plain HTML you have to explicitly
|
|
17
|
+
specify it!
|
|
18
|
+
|
|
19
|
+
The parameter {param: File/TemplateHandler:defaultTemplate} specifies the name of the default
|
|
20
|
+
template which is used when no explicit template for a page file is set via the meta information
|
|
21
|
+
@template@. webgen assumes that the default template is in the same directory as the page file.
|
|
22
|
+
However, if it can not be found there, the parent directory is searched for it and so on. If a
|
|
23
|
+
default template isn't found in the root directory, no template is used at all. This means that when
|
|
24
|
+
you create a default template in the root directory, it is used as template for all page files that
|
|
25
|
+
have no explicit template set.
|
|
26
|
+
|
|
27
|
+
It is also possible to nest templates. This makes it possible, for example, to create a general
|
|
28
|
+
website layout and then to create a special image gallery layout which uses the general one. As the
|
|
29
|
+
template files have the same format as page files, you just need to set the @template@ meta
|
|
30
|
+
information on a template to specify the template in which it should be nested.
|
|
31
|
+
|
|
32
|
+
This page uses two templates: a general one which defines the overall layout of the website (the
|
|
33
|
+
menus and so on) and a specific plugin documentation template which provides the general information
|
|
34
|
+
section.
|