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=“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 ©2008 Tiger Ops & Thomas Sawyer Folio is distributed under the terms of the GPLv3.