blob: 304bfe10921f9aee59218b4e9eeb1f6b1a15dc63 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
# lazymail
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.
* 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.
lazymail main features are:
* Tons of bugs
* Configurable key-bindings
* Configurable colors.
* 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 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:
$ 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.
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**.
|