Typo 4.0
========

Welcome to Typo 4.0.  Typo is a blogging platform, like Movable Typo or 
Wordpress, written using Ruby on Rails.

This is the first major release since Typo 2.6.  We skipped Typo 3.0 to avoid confusion with the Typo3 project.


Changes since Typo 2.6
----------------------

* A new installer and a Typo .gem file.  Run 'gem install typo' and then
  'typo install /some/path' to install Typo.

* Text filter plugins, including easy inline Flickr image support and syntax
  highlighting for code.

* Enhanced feed support.  Atom 1.0 and RSS 2.0 are both supported.  Atom 0.3
  has been removed.  Both feed types have better UUIDs.  There are also 
  per-tag, -category, and -author feeds.  Most pages have their own 
  content-specific feeds available via feed autodiscovery.

* Tags.  The 'keywords' field in the Typo admin UI (as well as many blog 
  editors) has been commandeered to provide tagging for Typo.  Tags are
  separated by spaces (just like Flickr).  If you want to include a space
  in a tag, then use quotes.

* Improved spam management.  There's a "Feedback" tab in the admin interface
  that lists all comments and trackbacks so they can be bulk-deleted.  In
  addition, Typo can now use Akismet for spam filtering.

* File uploads.  You can now upload images and other content directly from the 
  admin UI.

* Podcast support (experimental).

* Email and/or Jabber notification of new content, including comments and 
  trackbacks.

* Support for posting articles with a future posting date.  Pre-posted 
  articles don't appear on the blog or feeds until their posting date passes.

* A new cache system that automatically times out stale entries.  Several 
  types of content, including the Flickr sidebar, will automatically cause the
  page to be rebuilt every few hours to ensure freshness.

* Better theme support.  Some of this was back-ported to Typo 2.6.0.

* A redirect table to help users migrating to Typo.  You can enter new URLs
  into the Redirect table and Typo will look there whenever it doesn't 
  recognize a URL.  So you can move from Movable Type-style permalinks to
  Typo-style permalinks without losing the perma- in your links.

* Cleaner migrations.

* Rails 1.1 support.  Rails 1.1.4 is strongly recommended.  Rails 1.0 won't 
  work at all.

* Improved sidebar support, with a cleaner API and more built-in sidebars.

* Google sitemap support.

* Gravatars support for comments.

* Comment previews.

* Markup help for comments, articles, and pages.


How to Install Typo
-------------------

There are two ways to install Typo: automatically, using the new Typo installer, or manually, by downloading the source and building a working Rails environment (database, etc) for it.

New users should use the installer wherever possible because it's substantially easier and less trouble-prone.


### Installing Typo via the Typo Installer 

You'll need the following software installed on your system:

  1.  Ruby 1.8.4
  2.  RubyGems (http://www.rubygems.org)
  3.  SWIG (http://www.swig.org)
  4.  SQLite 3

Most Linux distributions should have these easily available.  OS X users can
probably use the 'Locomotive' Rails installer, and there is probably something 
similar available for Windows users.

Once these prerequisites have been installed run these two commands:

    $ gem install typo
    $ typo install /some/path

The first command will download the latest Typo release, along with a bunch of
dependencies.  The second command will create a new Typo install in
`/some/path` (you'll probably want to use a path like `/var/www/typo` instead,
or `/tmp/typo` if you're just testing things out). The Typo installer will
create a SQLite database, create all of the tables needed for Typo, and then
run a battery of tests to make sure that everything works successfully on your
system.  When that's complete, it'll start up the Mongrel webserver on a 
random TCP port.  You can access Typo directly via Mongrel for testing, and
then you can use the installer's directions to set up a more permanent hosting
environment.

The same process can be used to upgrade Typo in the future--just run `gem
install typo` to upgrade the version of the Typo installer on your system,
then run `typo install /some/path` to upgrade your existing Typo install. The
installer will back up your database, apply changes, re-test your environment,
and then restart Mongrel.


### Installing Typo Manually

The manual installation process is only recommended for experienced Rails
users, or people with an existing pre-4.0 Typo install. You'll need to
download the source for Typo, either via the .zip and .tar files on Rubyforge
or via Subversion. Then create a database for Typo by hand and populate it
using the schema files in `db/schema.*.sql`. At this point, run
`./script/server` to verify that Typo works successfully, and then set up
either Mongrel or FastCGI to connect Typo to your existing web server.

The full procedure for doing all of this is outside of the scope of this
document.


Support, or where to turn when things break
-------------------------------------------

Typo development occurs via http://typosphere.org.  If you find a bug, please
file a bug report via http://typosphere.org/trac/newticket

If you have problems, please send mail to typo-list@rubyforge.org.  You can also visit Typo's IRC channel, #typo on irc.freenode.net and ask for help.