I just uploaded a new point release of RubLog, my simple Ruby blogging
package.
RubLog is written in pure Ruby and features a simple installation
procedure (nothing else to download). Blog documents can be in RDoc,
HTML, plain text format. The blog can also display the contents of a
Usemod wiki. Documents can be stored in regular filesystem files, or
can be read from a CVS repository (useful if multiple people add
entries to the blog, or if you add blog entries from multiple
machines). The blog entries are searchable. The RubLog features an
optional sidebar with plug-in modules. It is shipped with plugins for
lists of links, blog contents summary, blogrolls, mini blogs (a sidebar
entry for each entry in a directory), and the search interface. RubLog
runs under Apache, and has experimental support for Webrick. I use
RubLog to drive http://pragprog.com/pragdave.
You can download RubLog from SourceForge: http://sf.net/projects/rublog/
For existing users, the new features since 0.6 include:
* Chad created a new Response handler, which lets us support
webrick.
* Add the MiniBlog sidebar, which adds entries in any RubLog
supported format to the sidebar. Point it to a directory and any
file in a recognized format in that directory will be converted
and displayed. I use MiniBlog to do things like display
blog traffic statistics: a cron job runs the
extras/loganal/loganal.rb
script, depositing the result in a directory of mini blog entries.
I then point the blog at it using
require "sidebar/MiniBlog"
MiniBlogs.create_for("...name of directory...")
* RubLog now supports If-Modified-Since and 304 responses.
* Simplified format of rublog.cgi. Existing users:
1. Move the blog.xxx configuration stuff into a block attached
to the constructor. Add set_ to the start of each method
name. Eg:
blog = RubLog.new("/var/www/html/data", CGIRequest.new) {
set_top_title "Wombat"
set_max_entries_per_page 5
set_rss_description "Dave's Weblog."
set_info_url "RubLog/UsingRubLog.rdoc"
# set_ignore_directory_pattern /Attic/
# set_ignore_filename_pattern /Comp|Xxx/
}
2. Get rid of the call to blog.process_request. Change the last
line to read View.display(blog)
Sorry for the inconvenience, but it means that a bunch of
temporal coupling is now a thing of the past. This enables me
to start performing some cache-based optimizations.
* Add the ability to search the blog using the Searcher
sidebar. Along the way, add a general facility to allow
sidebars to handle CGI requests.
* The contents sidebar no longer shows the full path in each entry.
* Chad Fowler added usemod support
* RDoc markup now supports name[url] style hyperlinks.
* Add /style/xxxx parameter, and reorganize how page templates
work. Existing users:
1. Remove the 'require "rublog_page_template" from rublog.cgi
2. If you have a customized rublog_page_template, it now
lives in styles/standard.rb
3. You can add multiple styles by creating xxx.rb in the
styles/ directory and adding /style/xxx to the URL you
use to invoke rublog.
* Add 'ignore_directory_pattern' and 'ignore_filename_pattern'
parameters to allow particular directories or filenames to be
skipped.
* Added BlogRoll sidebar
* A new Schedule convertor is added, but I dount anyone apart
from Andy and I will ever use it :)
* Sidebars are now instantiated as objects, not classes. This
makes it possible to have multiple of the same type of sidebar
on a single page.
Cheers
Dave