~bitfehler/vomit

The Very Opinionated Mail Interaction Toolkit

33c6cf3 Update README, provide new examples/demos

~bitfehler pushed to ~bitfehler/vmt git

a month ago

#15 vmp: is skip-empty actually used?

~bitfehler commented on vomit todo

a month ago

#Vomit - the Very Opinionated Mail Interaction Toolkit

The Vomit project strives to provide a suite of tools for efficiently working with email. Currently, this means tools for the command line, but graphical tools are not out of scope. Vomit aims at use cases beyond reading and writing. In fact, Vomit currently doesn't provide anything to read or write mail, though that may change at some point.

#Opinions

  • Email is great, people just need better tools
  • Often, a MUA is not the right tool for working with email
  • There are many good tools - they just don't have access to your email

Based on these opinions, the Vomit project explores the following approach:

#M2dir

Vomit thinks the foundation for working properly with emails is that each email should be a file. Vomit's preferred solution for achieving this is m2dir.

#Composability

Vomit likes composability. It aims to supply various tools (some merged in one executable) to work with your mail. But more importantly, it aims to make your mail accessible to other tools - mostly by providing quick access to the relevant file.

#Interoperability

Vomit intends to supply all the tools you need to get started. But if you prefer to use other tools, that's cool. M2dir is an open standard. It's fairly young, so there aren't that many tools available yet. But this will change over time.

#Tools

NOTE: Vomit is progressing towards a 1.0 release: currently all tools are in the alpha release stage; these alpha releases are the latest ones, but may not be shown by default on the crate pages.

Make sure to always use 1.x.x versions, even if they are -alpha or -beta!

#vmp

The vmp tool is the embodiment of the vomit approach to email - and nothing more! Given a collection of email stored in m2dir format, it provides a very fast, interactive mechanism to pick one or more messages and retrieve their filesystem path. This path can then be used with any existing tools. Picking mailboxes or even attachments is also possible. See its README for details.

#m2sync

A library (vomit-m2sync) and tool for IMAP-to-m2dir synchronization. This stand-alone version is intended to be an m2dir-compatible alternative to isync/mbsync, offline-imap, and friends.

#vmt

A sort of Swiss Army knife for email. It allows for various interactions with your email, some interactive, others suitable for scripting. See its README for lots of details. Includes the functionality of both vmp and vsync as sub-commands.

#Getting started

To start using any vomit tools, your email needs to be stored locally, in m2dir format. Given that there are currently no MUAs that support m2dir, the recommended approach is this:

  • Use the MUA of your choice to manage your email in an IMAP account
  • Use m2sync --pull or vmt sync --pull regularly to pull the remote state to a local m2dir (none of the tools currently modify the local m2dir)

In general, you will probably want to use either m2sync and vmp, or just vmt, as the latter combines all functionality.

#Contribute

Please send patches to the vomit mailing list.

#Feedback

The mailing list is open for all kinds of feedback, questions, and discussions.