Voyage of the Beagle by Darwin
Voyage of the Beagle by Darwin is a folderish Archetypes-based Plone/Zope product that shows the full text of the book along with web links provided by the user for selected terms or phrases.
Current release
No stable release available yet.
Project Description
LICENSE
- GPL: See VoyageOfTheBeagleByDarwin.py header.
AUTHORSHIP
- initial coding: Jeff Pittman, http://www.geojeff.org
DESCRIPTION
Voyage of the Beagle by Darwin is a folderish Archetypes-based Plone/Zope product that shows the full text of the book along with web links provided by the user for selected terms or phrases.
When instantiated, the original text (slightly modified, as described in the code) is read in and parsed to prepare structured text for several documents created and stored:
- a single document containing all the original text
- individual documents for header, preface, and 21 chapters
If the user provided a list of web links for terms or phrases, the terms or phrases are searched for and links added to the structured text documents.
The "small print" in the header, which is included in full as per what it states about "reuse", is from Project Gutenberg. No intentional changes were made to the text, except those allowed for in creating links, and other embedded code for using modern web technology to best present the book.
Regarding the product name, it is a tad long, as per the grief given on
IRC :) Well, first it was VoyageOfTheBeagleByCharlesDarwin, but that
would have set the product name record. Then it was VOTBByCharlesDarwin,
but the VOTBBy got stuck together in the Add Item menu (so you would add
VOTBBy Charles Darwin). So, with a chop of the Charles it took final form
as a compromise. As it is a real book, care about the title and
authorship seem to take precedence. There's probably a basic way to
control the product name in menus, but it hasn't been searched out.
Some ideas for use/enhancement include:
- The product could be used for installation on a local Plone/Zope for handy reading.
- Add your own links for a given focus.
- Add some code to do linguistic analysis.
- Add code for quiz handling.
- Add code for doing paragraph-by-paragraph comment handling, or something similar to facilitate discussion, perhaps by tying in with a forum product.
Presentation choices, as controlled by page templates, include:
- COMPLETE, whole book on one web page
- CHAPTERS, chapter by chapter
VoyageOfTheBeagleByDarwin takes input of the following items:
- book_links, entered as comma-separated values on separate lines
with CSV data containing (both items need to be in quotes):
- term or phrase (as text; escape single or double quotes by putting a \ in front)
- link (http://www.whatever.org)
REQUIREMENTS
- Archetypes (tested with Archetypes-1.3.2-final bundle)
- Plone (tested with Plone-2.1.1)
INSTALLATION
- Put VoyageOfTheBeagleByDarwin in your Zope Products directory.
- Restart Zope.
- Install VoyageOfTheBeagleByDarwin into your Plone site using CMFQuickInstaller. (In Plone, select "plone setup", click on "Add/Remove Products" and install VoyageOfTheBeagleByDarwin.) You can also use the portal_quickinstaller tool from the ZMI to install the Product.
CREDITS
- Charles Darwin, of course.
- Project Gutenberg, and the other online sources of public domain info.
- PloneBook, by Raphael Ritz, which contains the package_home, etc. usage.
- Originally this started out as new code for BookAnnotation, another Plone product, but it became apparent that much of the effort here is specific to the Voyage of the Beagle. Still, parts of this code will make it into BookAnnotation. Having a real book to work with has helped in making useful methods for preparing stx files.
TO DO
- There is no validation. There are methods available for link checking, so use one of those.
- Add a link set that is added in by default, but give user a choice to use their own links instead. [A student and I are working on this.]
- Make a better main view page, with a picture of Darwin or Beagle.
- It should be fine to scan the few illustrations in the book and add them to the text.
- Make a better Chapter-by-chapter page template that has next and back buttons or links.
- Styleize the links to perhaps not show the little world icon, but a more subtle shading or underlining to enhance readability.
- An additional field could be added to the cvs data for links to take the "link type", which could be used to show a particular class of links (for a particular class of terms/phrases) in a given color or link formatting.
- Add annotations/definitions capability, ala BookAnnotation, except here the text is available. With the new restrictions in CMFDefault/utils.py, the onmouseover tags used in javascript tooltips for definitions aren't possible without circumvention. However, perhaps something could be done with CSS for showing annotations or definitions.
- Add background info on the book, info about other pertinent books and websites, etc. in a resources page.
- The complete view has problems with grey boxes that appear. Perhaps this is caused by the pre block in the header, because the grey boxes don't appear in the individual chapter files.
- Is there something fancy (ahem, useful) with CSS that could be done to control font and font size for easier reading, especially for those who need better support, if it isn't there already in Plone?
- The quiz handling code idea is an attractive one for using this book in college courses, and so is the forum-tie-in idea.
BUGS AND FEATURE REQUESTS
Please report bugs and feature requests to Jeff Pittman, who can be reached at jeff@geojeff.org. Jeff is often on the #plone irc channel as geojeff.
IRC FUN
hannoschthinks we need some policy for product names: What isVoyage of the Beagle by Darwin<limi>hannosch: yes, it was even worse earlier, it was called VoyageOfTheBeagleByDarwin [in PloneSoftwareCenter, which made it blow out the nav menu width :)]<limi>;)limitacks on CMF*NG<tvon>haha<hannosch>limi: ok, luckily it's not: CMFPloneMxMVoyageoftheBeaglebyDarwinNG-fork 0.0.1-beta17<limi>it will get there eventually ;)
