Introduction ------------ bpgallery is a small static gallery generator, it generates an index file and thumbnails of your images. The index file is generated in the image folder, icons in a subfolder called icons. Requirements ------------ The ImageMagick tools (convert and identify) bash GNU find GNU xargs sed Installation ------------ Copy the file bpgallery.sh to a directory in your PATH. Usage ----- bpgallery.sh /path/to/image/files Also, the following files, if placed in the images directory, will be used to generate part of the index page: description.txt a simple text file containing paragraphs to go at the beginnings of the index page captions.txt filename<tab>caption style file, it'll add a caption to the images on the index page. If both width and height are specified then it'll be resized to the bounding box that contains it. If height is specified without width then the bounding box will be 100xHEIGHT for icons and 400xMEDIUMHEIGHT for the medium sized image pages The following environment variables can also be used: TITLE the title of the gallery WIDTH the width to make the icons HEIGHT the height to make the icons MEDIUMWIDTH set the width of images in the medium size pages MEDIUMHEIGHT the height to make images in the medium size pages BPGALLERY_THEME set the theme to use (described below) BPGALLERY_THEME_DIR set an extra location to look for themes OUTPUTHTML sets the script output to be wrapped in a <pre> block GENERATEPAGESFORMEDIUMSIZE generate medium sized images and pages GENERATEPAGESFORFULLSIZE decide wether to generate pages for the full size images or not INDEXDOCUMENT name of the index page (e.g. index.html) PAGESDIRECTORY name of the directory in which to put the pages for fullsized and mediumsized images. Defaults to the image directory. This is relative to the images directory, so, for example, PAGESDIRECTORY=pages would create /path/to/image/files/pages MEDIUMDIRECTORY directory to generate medium sized images in, defaults to medium, works the same as the PAGESDIRECTORY variable ICONSDIRECTORY directory to generate thumbnails in, defaults to icons, works the same as MEDIUMDIRECTORY and PAGESDIRECTORY Example Usage: TITLE="My Funky Gallery" bpgallery.sh /path/to/image/files Themes ------ Theme support is very rudimentary, basically you create functions for each of the parts of the template, and put them in a file named the same as the theme. The functions that you need to declare are as follows: Available in all templates: ${BASEURL} Base directory (will generate ../ when making pages in a subdirectory for getting to the generated stylesheet or to the index page) bpgallery_ThemeName_head() what's it for?: This sets up the header for the page, generally everything until the first picture. So, the title bar and any menus you would like to use available variables: $TITLE - the title for the index page bpgallery_ThemeName_tail() what's it for?: Closes the page, is the last thing to be printed. available variables: None bpgallery_ThemeName_description() what's it for?: if there's a description set up (i.e. a description.txt file) then this is what it'll be wrapped in. It comes just after the _head. available variables: $DESCRIPTION - the content of description.txt bpgallery_ThemeName_stylesheet() what's if for?: It generates the stylesheet for the page. available variables: $WIDTH - the width of the images $MAXWIDTH - the maximum width of the images $MAXHEIGHT - the maximum height of the images bpgallery_ThemeName_thumbsline() what's it for?: Whatever is in here is generated per thumbnail. available variables: $link - the page/image to link to $filename - the name of the file $caption - the caption as got from captions.txt bpgallery_ThemeName_page() what's it for?: It generates the pages for fullsize image pages available variables: $filename - the name of the image $previouspage - the URL for the previous page $currentpage - the url for the current page $nextpage - the url for the next page $caption - the image caption If any of the functions are not defined in a theme then the default theme function will be used instead. The default theme is clean and simplistic, this is deliberate! Author ------ Brett Parker: e-mail: <iDunno@sommitrealweird.co.uk> www: http://www.sommitrealweird.co.uk/