Webby is a super fantastic little website management system. It would
be called a content management system if it were a bigger kid. But,
it's just a runt with a special knack for transforming text. And
that's really all it does =96 manages the legwork of turning text into
something else, an ASCII Alchemist if you will.

Webby works by combining the contents of a page with a layout to
produce HTML. The layout contains everything common to all the pages =96
HTML headers, navigation menu, footer, etc. =96 and the page contains
just the information for that page. You can use your favorite markup
language to write your pages; Webby supports quite a few.

Install Webby and try it out!

$ sudo gem install webby

http://webby.rubyforge.org


=3D RELEASE NOTES =3D

New in this version
* tidy support
* graphviz support
* simplified coderay usage when used within a textile page
* streamlined defaults handling


=3D=3D TIDY SUPPORT =3D=3D

You can now format and check your generated content using Tidy. This
is done by specifying Tidy as the final filter in the top-level layout
(or layouts) for you site.  The following example shows how to do this
using the default layout found in the layouts directory.

Example:

---
extension: html
filter:
  - erb
  - tidy
---
<html>
<head>
  ...
</head>

<body>
  <%=3D @content %>
</body>
</html>


Obviously some markup has been left out of that example, but you get
the idea. Options can be passed to Tidy by setting them in the site
Rakefile.

SITE.tidy_options =3D "-indent -wrap 80"

Tidy needs to be installed on your system for this to work.


=3D=3D GRAPHVIZ SUPPORT =3D=3D

You can now embed DOT scripts directly into a page, and Webby will
generate the image file and insert an <img /> tag into the HTML
output. If the DOT script contains URL or href references, a
corresponding image map will be generated such that the image in the
webpage is clickable.

Example:

---
title:  Visual Hello World
filter:
  - graphviz
  - textile
---
h2. Visual Hello World

<graphviz path=3D"images" alt=3D"hello world">
digraph G {
  Hello [URL=3D"http://www.ruby-lang.org"]
  World [URL=3D"http://www.rubyforge.org"]
  Hello -> World
}
</graphviz>

Images can be generated using dot, neato, twopi, circo, fdp.  Just
specify which one you want to use as <graphviz cmd=3D"neato" ...>

Graphviz must be installed on your machine for this to work.


=3D=3D CODERAY =3D=3D

When coderay is used within a textile page, the coderay block needed
to be surrounded by <notextile></notextile> tags. This is no longer
the case, and the coderay block can exist all by itself.

Example:

---
title:  Code Sample
filter:
  - coderay
  - textile
---
h2. Ruby Code Sample

This is the infamous "returning" method.

<coderay lang=3D"ruby" line_numbers=3D"inline">
class Object
  def returning( obj )
    yield obj
    return obj
  end
end
</coderay>


=3D=3D ERRATA =3D=3D

With this update, you need to update the rake tasks and setup code in
any of your webby project folders.  Simply type the following ...

$ webby -u my/webby/project/folder



Blessings,
TwP