aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md34
1 files changed, 25 insertions, 9 deletions
diff --git a/README.md b/README.md
index d571a07..304bfe1 100644
--- a/README.md
+++ b/README.md
@@ -1,9 +1,10 @@
# lazymail
-========
-lazymail is a Haskell written old-school console Mail User Agent, born as a final project for a functional programming course.
+lazymail is a Haskell written old-school console Mail User Agent, born as a
+final project for a functional programming course.
Heavily inspired in [lumail](http://lumail.org/), lazymail is a modal client:
-* Maildir mode: offers a tree-like view of all the maildirs recursively found from an initial path.
+* Maildir mode: offers a tree-like view of all the maildirs recursively
+ found from an initial path.
* Index mode: offers a view of all the emails in a selected maildir.
* Email mode: used to read the selected email in Index mode.
* Compose mode: launch your favorite text editor in order to write your emails.
@@ -15,14 +16,29 @@ lazymail main features are:
* Some user-configurable hooks.
* That's it.
+lazymail was born as a final project for a functional programming
+course. As such, the overall code quality isn't great and the program is
+not even close for production use.
+
## Installation
-A cabal build system will be available in the followings days. For the moment, use the following pseudo-algorithm to compile lazymail:
+A cabal build system is available. Just issue the following commands in the
+root directory of lazymail:
+
+ $ cabal update # Update the indices
+ $ cabal configure # Check the build dependencies
+ $ cabal build # lazymail will be build under dist/
+ $ cabal install # Install lazymail under the default prefix dir
+
+Or if you want to install it in one step, just do:
- cd src/
- missingDeps <- ghc -o Main Main.hs
- mapM (\dep -> cabal install dep) missingDeps
+ $ cabal update && cabal install
## Usage
-The first thing you'll want to do is edit `customConfig` function, in **Config.hs** file. This function has some user configuration in order for the client to work. Edit `initialFile` and point it to the root of your maildirs hierarchy. Re-compile the program.
+The first thing you'll want to do is edit `customConfig` function, in
+**Config.hs** file. This function has some user configuration in order for
+the client to work. Edit `initialFile` and point it to the root of your
+maildirs hierarchy. Re-compile the program.
-Then use your cursor keys to move between the different modes. Read **Keymap.hs** to discover the rest of the key-bindings. You can even add your own key-bindings in **Config.hs**.
+Then use your cursor keys to move between the different modes. Read
+**Keymap.hs** to discover the rest of the key-bindings. You can even add
+your own key-bindings in **Config.hs**.
nihil fit ex nihilo