You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
15 KiB
15 KiB
MELI(1) General Commands Manual MELI(1)
NAME
meli β Meli Mail User Agent. meli is the Greek word for honey
SYNOPSIS
meli [--help | -h] [--version | -v] [--config path]
--help | -h
Show help message and exit.
--version | -v
Show version and exit.
--config path
Start meli with given configuration file.
create-config [path]
Create configuration file in path if given, or at
$XDG_CONFIG_HOME/meli/config.toml
test-config [path]
Test a configuration file for syntax issues or missing
options.
man [page]
Print documentation page and exit (Piping to a pager is
recommended.)
print-default-theme
Print default theme keys and values in TOML syntax, to
be used as a blueprint.
print-loaded-themes
Print all loaded themes in TOML syntax.
compiled-with
Print compile time feature flags of this binary.
view View mail from input file.
DESCRIPTION
meli is a terminal mail client aiming for extensive and user-frendly
configurability.
^^ .-=-=-=-. ^^
^^ (`-=-=-=-=-`) ^^
(`-=-=-=-=-=-=-`) ^^ ^^
^^ (`-=-=-=-=-=-=-=-`) ^^
( `-=-=-=-(@)-=-=-` ) ^^
(`-=-=-=-=-=-=-=-=-`) ^^
(`-=-=-=-=-=-=-=-=-`) ^^
(`-=-=-=-=-=-=-=-=-`)
^^ (`-=-=-=-=-=-=-=-=-`) ^^
^^ (`-=-=-=-=-=-=-=-`) ^^
(`-=-=-=-=-=-=-`) ^^
^^ (`-=-=-=-=-`)
`-=-=-=-=-` ^^
STARTING WITH meli
When launched for the first time, meli will search for its configuration
directory, $XDG_CONFIG_HOME/meli/. If it doesn't exist, you will be
asked if you want to create one and presented with a sample configuration
file ($XDG_CONFIG_HOME/meli/config.toml) that includes the basic settings
required for setting up accounts allowing you to copy and edit right
away. See meli.conf(5) for the available configuration options.
At any time, you may press ? for a searchable list of all available
actions and shortcuts, along with every possible setting and command that
your version supports.
The main visual navigation tool, the left-side sidebar may be toggled
with ` (shortcuts.listing: toggle_menu_visibility).
Each mailbox may be viewed in 4 modes: Plain views each mail
individually, Threaded shows their thread relationship visually,
Conversations collapses each thread of emails into a single entry,
Compact shows one row per thread.
If you're using a light color palette in your terminal, you should set
theme = light in the terminal section of your configuration. See
meli-themes(5) for complete documentation on user themes.
VIEWING MAIL
Open attachments by typing their index in the attachments list and then a
(shortcut open_attachment). meli will attempt to open text inside its
pager, and other content via xdg-open. Press m (shortcut open_mailcap)
instead to use the mailcap entry for the MIME type of the attachment, if
any. See FILES for the location of the mailcap files and mailcap(5) for
their syntax. You can save individual attachments with the COMMAND
save-attachment INDEX path-to-file where INDEX is the attachment's index
in the listing. If the zeroth index is provided, the entire message is
saved. If the path provided is a directory, the message is saved as an
eml file with its filename set to the messages message-id.
SEARCH
Each e-mail storage backend has a default search method assigned. IMAP
uses the SEARCH command, notmuch uses libnotmuch and Maildir/mbox
performs a slow linear search. It is advised to use a search backend on
Maildir/mbox accounts. meli, if built with sqlite3, includes the ability
to perform full text search on the following fields: From, To, Cc, Bcc,
In-Reply-To, References, Subject and Date. The message body (in plain
text human readable form) and the flags can also be queried. To enable
sqlite3 indexing for an account set search_backend to sqlite3 in the
configuration file and to create the sqlite3 index issue command index
ACCOUNT_NAME.
To search in the message body type your keywords without any special
formatting. To search in specific fields, prepend your search keyword
with "field:" like so:
subject:helloooo or subject:"call for help" or "You remind me today
of a small, Mexican chihuahua."
not ((from:unrealistic and (to:complex or not query )) or
flags:seen,draft)
alladdresses:mailing@example.com and cc:me@example.com
Boolean operators are or, and and not (alias: !) String keywords with
spaces must be quoted. Quotes should always be escaped.
Important Notice about IMAP/JMAP
To prevent downloading all your messages from your IMAP/JMAP server,
don't set search_backend to sqlite3. meli will relay your queries to the
IMAP server. Expect a delay between query and response. Sqlite3 on the
contrary at reasonable mailbox sizes should have a non noticable delay.
QUERY ABNF SYNTAX
β’ query = "(" query ")" | from | to | cc | bcc | alladdresses | subject
| flags | has_attachments | query "or" query | query "and" query |
not query
β’ not = "not" | "!"
β’ quoted = ALPHA / SP *(ALPHA / DIGIT / SP)
β’ term = ALPHA *(ALPHA / DIGIT) | DQUOTE quoted DQUOTE
β’ tagname = term
β’ flagval = "passed" | "replied" | "seen" | "read" | "junk" | "trash" |
"trashed" | "draft" | "flagged" | tagname
β’ flagterm = flagval | flagval "," flagterm
β’ from = "from:" term
β’ to = "to:" term
β’ cc = "cc:" term
β’ bcc = "bcc:" term
β’ alladdresses = "alladdresses:" term
β’ subject = "subject:" term
β’ flags = "flags:" flag | "tags:" flag | "is:" flag
TAGS
meli supports tagging in notmuch and IMAP/JMAP backends. Tags can be
searched with the `tags:` or `flags:` prefix in a search query, and can
be modified by tag add TAG and tag remove TAG (see meli.conf(5) TAGS,
settings colors and ignore_tags for how to set tag colors and tag
visiblity)
COMPOSING
Opening the message Composer tab
To create a new mail message, press m (shortcut new_mail) while viewing a
mailbox. To reply to a mail, press R (shortcut reply). Both these
actions open the mail composer view in a new tab.
Editing text
β’ Edit the header fields by selecting with the arrow keys and pressing
enter to enter INSERT mode and Esc key to exit.
β’ At any time you may press e (shortcut edit_mail) to launch your
editor (see meli.conf(5) COMPOSING, setting editor_command for how to
select which editor to launch).
β’ Your editor can be used in meli's embed terminal emulator by setting
embed to true in your composing settings.
β’ When launched, your editor captures all input until it exits or
stops.
β’ To stop your editor and return to meli press Ctrl-z and to resume
editing press the edit_mail command again (default e).
Attachments
Attachments may be handled with the add-attachment, remove-attachment
commands (see below).
Sending
Finally, pressing s (shortcut send_mail) will send your message according
to your settings (see meli.conf(5) COMPOSING, setting send_mail). With
no Draft or Sent mailbox, meli tries first saving mail in your INBOX and
then at any other mailbox. On complete failure to save your draft or
sent message it will be saved in your tmp directory instead and you will
be notified of its location.
Drafts
To save your draft without sending it, issue COMMAND close and select
'save as draft'.
To open a draft for further editing, select your draft in the mail
listing and press edit_mail.
CONTACTS
meli supports two kinds of contact backends:
1. an internal format that gets saved under
$XDG_DATA_HOME/meli/account_name/addressbook.
2. vCard files (v3, v4) through the vcard_folder option in the
account section. The path defined as vcard_folder can hold
multiple vCards per file. They are loaded read only.
See meli.conf(5) ACCOUNTS for the complete account configuration values.
MODES
NORMAL is the default mode
COMMAND commands are issued in COMMAND mode, by default started with :
and exited with Esc key.
EMBED is the mode of the embed terminal emulator
INSERT captures all input as text input, and is exited with Esc key.
COMMAND Mode
Mail listing commands
set plain | threaded | compact | conversations
set the way mailboxes are displayed
ββββββββββββββββ¬ββββββββββββββββββββββββββββββββββββββββββββββββββ
βconversations β shows one entry per thread β
ββββββββββββββββΌββββββββββββββββββββββββββββββββββββββββββββββββββ€
βcompact β shows one row per thread β
ββββββββββββββββΌββββββββββββββββββββββββββββββββββββββββββββββββββ€
βthreaded β shows threads as a tree structure β
ββββββββββββββββΌββββββββββββββββββββββββββββββββββββββββββββββββββ€
βplain β shows one row per mail, regardless of threading β
ββββββββββββββββ΄ββββββββββββββββββββββββββββββββββββββββββββββββββ
sort subject | date Β asc | desc sort mail listing
subsort subject | date Β asc | desc sorts only the first level of
replies.
go n where n is a mailbox prefixed with
the n number in the side menu for
the current account
toggle thread_snooze don't issue notifications for
thread under cursor in thread
listing
search STRING search mailbox with STRING query.
Escape exits search results.
select STRING select threads matching STRING
query.
set seen, set unseen Set seen status of message.
import FILEPATH MAILBOX_PATH Import mail from file into given
mailbox.
copyto, moveto MAILBOX_PATH Copy or move to other mailbox.
copyto, moveto ACCOUNT MAILBOX_PATH Copy or move to another account's
mailbox.
delete Delete selected threads.
export-mbox FILEPATH Export selected threads to mboxcl2
file.
create-mailbox ACCOUNT MAILBOX_PATH create mailbox with given path. Be
careful with backends and separator
sensitivity (eg IMAP)
subscribe-mailbox ACCOUNT MAILBOX_PATH
subscribe to mailbox with given
path
unsubscribe-mailbox ACCOUNT MAILBOX_PATH
unsubscribe to mailbox with given
path
rename-mailbox ACCOUNT MAILBOX_PATH_SRC MAILBOX_PATH_DEST
rename mailbox
delete-mailbox ACCOUNT MAILBOX_PATH deletes mailbox in the mail
backend. This action is
unreversible.
Mail view commands
pipe EXECUTABLE ARGS pipe pager contents to binary
filter EXECUTABLE ARGS filter and display pager contents
through command
list-post post in list of viewed envelope
list-unsubscribe unsubscribe automatically from list
of viewed envelope
list-archive open list archive with xdg-open
composing mail commands
add-attachment PATH in composer, add PATH as an
attachment
add-attachment < CMD ARGS in composer, pipe CMD ARGS output
into an attachment
add-attachment-file-picker Launch command defined in the
configuration value
file_picker_command in meli.conf(5)
TERMINAL
add-attachment-file-picker < CMD ARGS
Launch command CMD ARGS. The
command should print file paths in
stderr, separated by NULL bytes.
remove-attachment INDEX remove attachment with given index
toggle sign toggle between signing and not
signing this message. If the gpg
invocation fails then the mail
won't be sent. See meli.conf(5)
PGP for PGP configuration.
save-draft saves a copy of the draft in the
Draft folder
generic commands
open-in-tab opens envelope view in new tab
close closes closeable tabs
setenv KEY=VALUE set environment variable KEY to
VALUE
printenv KEY print environment variable KEY
quit Quits meli.
reload-config Reloads configuration but only if
account configuration is unchanged.
Useful if you want to reload some
settings without restarting meli.
SHORTCUTS
See meli.conf(5) SHORTCUTS for shortcuts and their default values.
EXIT STATUS
meli exits with 0 on a successful run. Other exit statuses are:
1 catchall for general errors
101 process panic
ENVIRONMENT
EDITOR Specifies the editor to use
MELI_CONFIG Override the configuration file
NO_COLOR When present (regardless of its
value), prevents the addition of
ANSI color. The configuration
value use_color overrides this.
FILES
meli uses the following parts of the XDG standard:
XDG_CONFIG_HOME defaults to ~/.config/
XDG_CACHE_HOME defaults to ~/.cache/
and appropriates the following locations:
$XDG_CONFIG_HOME/meli/ User configuration directory
$XDG_CONFIG_HOME/meli/config.toml
User configuration file, see
meli.conf(5) for its syntax and
values.
$XDG_CONFIG_HOME/meli/hooks/* Reserved for event hooks.
$XDG_CONFIG_HOME/meli/plugins/* Reserved for plugin files.
$XDG_CACHE_HOME/meli/* Internal cached data used by meli.
$XDG_DATA_HOME/meli/* Internal data used by meli.
$XDG_DATA_HOME/meli/meli.log Operation log.
/tmp/meli/* Temporary files generated by meli.
Mailcap entries are searched for in the following files, in this order:
1. $XDG_CONFIG_HOME/meli/mailcap
2. $XDG_CONFIG_HOME/.mailcap
3. $HOME/.mailcap
4. /etc/mailcap
5. /usr/etc/mailcap
6. /usr/local/etc/mailcap
SEE ALSO
meli.conf(5), meli-themes(5), xdg-open(1), mailcap(5)
CONFORMING TO
XDG Standard
β¨https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.htmlβ©,
maildir β¨https://cr.yp.to/proto/maildir.htmlβ©, IMAPv4rev1 RFC3501, The
JSON Meta Application Protocol (JMAP) RFC8620, The JSON Meta Application
Protocol (JMAP) for Mail RFC8621.
AUTHORS
Copyright 2017-2019 Manos Pitsidianakis β¨epilys@nessuent.xyzβ© Released
under the GPL, version 3 or greater. This software carries no warranty
of any kind. (See COPYING for full copyright and warranty notices.)
β¨https://meli.deliveryβ©
Debian July 29, 2019 Debian