Add vmp(1) man page
Fix typo
Fill repo README with some life
The vomit crate is the shared library at the heart of the Vomit project.
vmp
is the vomit mail picker!
It is a basic CLI tool which embodies the vomit approach to email: quickly and interactively pick mails (and more) from an m2dir to use their filesystem path with other tools.
The central mechanism that vmp
employs is providing an interactive, fuzzy
search mechanism, which lets you pick one or more messages very quickly. It
then produces the full path to those messages. These paths can then be passed
to other tools. Picking mailboxes or even attachments is also possible! Here is
a little demo of it in action, first picking an email, then an attachment:
Based on this demo, here are some examples of what you can do with it:
vmp | xargs git am
interactively pick a message that contains a patch and
apply it (in the current working directory)vmp -A | xargs evince
interactively pick an attachment and open it
(assuming it is a PDF file)vmp -B -m | xargs rg 'search term'
interactively pick multiple mailboxes
and ripgrep through their messagesAttachments are made available in $XDG_RUNTIME_DIR
, where they will persist,
usually until the user's session ends.
vmp
can be used without any configuration, but only if a path to the
email collection is provided. For example, vmp ~/.mail
will work without
configuration. To allow omitting this path, a config file needs to be
set up. It is per default located at $XDG_CONFIG_HOME/vomit/config.toml
,
which usually means ~/.config/vomit/config.toml
. A configuration file at an
arbitrary location can be used by using the global -c <path>
flag.
A simple config example:
[<account>]
local = ~/.mail
Multiple accounts can be specified, by default vmp
will use the first one. To
use a different one, the global flag -a <account>
can be used.
Like all Vomit tools, vmp uses the shared "vomit-config" configuration file.
See its documentation for more details. Note that it supports many
configuration options that vmp
does not currently use.