webgen 0.3.8 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- 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.
|