Folio

  http://folio.rubyforge.org

Introduction

Folio is a "better way" to access the filesystem in your Ruby programs. It works by elmulating the behavior of a command shell. So just as you @cd@ up and down the file hierarchy at a shell prompt, you do the same against a Filio Prompt object.

In addition Folio wraps all the common File System objects, providing a more intutive means of handling these in an dobject-oriented manner. For instance, Folio::Link represents a link on the file system, and just as the link references another file, so de the Folio::Link object deletgate to another Folio file object.

Usage

Since this is such an early release the API is still subject to change. But the basic idea remains the same:

  require 'folio'

  # get a folio prompt on the current directory (Dir.pwd).
  cursor = Folio::Prompt.new

  # return a list of directory's entries as strings.
  cursor.ls

  # return a list of directories as Directory objects.
  cursor.directories

  # return a list of regular files as Document objects.
  cursor.documents

  # Change down to the foo directory.
  cursor.cd('foo')

  # return a list of all entries as File objects.
  p cursor.files

Install

You know the Gem drill.

  $ gem install folio

And you may know the Setup drill.*

  $ tar -xvzf folio-0.1.0.tgz
  $ cd folio-0.1.0.tgz
  $ ruby setup.rb

*requires <a href="Ruby">setup.rubyforge.org">Ruby Setup</a>

Resources

<a href="rio.rubyforge.org">Rio<a> is a similar too. It‘s very well documented, but has a different design philiosophy having it‘s own more unique DSL.

Copying

Folio is Copyright (c)2008 Tiger Ops & Thomas Sawyer Folio is distributed under the terms of the GPLv3.