25 KiB
25 KiB
MELI(7) Miscellaneous Information Manual MELI(7)
NAME
meli β Tutorial for the meli terminal e-mail client
SYNOPSIS
meli [...]
DESCRIPTION
meli is a terminal mail client aiming for extensive and user-frendly
configurability.
^^ .-=-=-=-. ^^
^^ (`-=-=-=-=-`) ^^
(`-=-=-=-=-=-=-`) ^^ ^^
^^ (`-=-=-=-=-=-=-=-`) ^^
( `-=-=-=-(@)-=-=-` ) ^^
(`-=-=-=-=-=-=-=-=-`) ^^
(`-=-=-=-=-=-=-=-=-`) ^^
(`-=-=-=-=-=-=-=-=-`)
^^ (`-=-=-=-=-=-=-=-=-`) ^^
^^ (`-=-=-=-=-=-=-=-`) ^^
(`-=-=-=-=-=-=-`) ^^
^^ (`-=-=-=-=-`)
`-=-=-=-=-` ^^
INTRODUCTION
To quit meli press β¨qβ©Β (shortcuts.general.quit) at any time. 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 β¨?β©Β (shortcuts.general.toggle_help) for a
searchable list of all available actions and shortcuts, along with every
possible setting and command that your version supports.
Each time a shortcut is mentioned in this document, you will find a
parenthesis next to it with the name of the shortcut setting along with
its section in the configuration settings so that you can modify it if
you wish.
For example, to set the toggle_help shortcut mentioned in the previous
paragraph, add the following to your configuration:
[shortcuts]
general.toggle_help = 'F1'
Or alternatively:
[shortcuts.general]
toggle_help = 'F1'
To go to the next tab on the right, press β¨Tβ©
(shortcuts.general.next_tab).
INTERACTING WITH meli
You will be interacting with meli in four primary ways:
1. keyboard shortcuts in NORMAL mode.
2. commands with arguments in COMMAND mode.
3. regular text input in text input widgets in INSERT mode.
4. any kind of input that gets passed directly into an embedded terminal
in EMBED mode.
MODES
meli is a modal application, just like vi(1). This means that pressing
the same keys in different modes would yield different results. This
allows you to separate how the input is interpreted without the need to
focus your input with a mouse.
NORMAL This is the default mode of meli. All keyboard shortcuts work
in this mode.
COMMAND Commands are issued in COMMAND mode, by default started with
β¨:β©Β (shortcuts.general.enter_command_mode) and exited with
β¨Escβ© key.
EMBED This is the mode of the embed terminal emulator. To exit an
embedded application, issue β¨Ctrl-Cβ© to kill it or β¨Ctrl-Zβ© to
stop the program and follow the instructions on meli to exit.
INSERT This mode is entered when pressing β¨Enterβ© on a cursor selected
text input field, and it captures all input as text input. It
is exited with the β¨Escβ© key.
ACTIVE SHORTCUTS POPUP
By pressing β¨?β©Β (shortcuts.general.toggle_help) at any time, the
shortcuts popup display status gets toggled. You can find all valid
shortcuts for the current UI state you are in.
ββshortcutsββPress ? to closeβββββββββββββββββββββββββββββββββ
β ββ
β use COMMAND "search" to find shortcuts ββ
β Use Up, Down, Left, Right to scroll. ββ
β ββ
β pager ββ
β ββ
β PageDown page_down ββ
β PageUp page_up β
β j scroll_down β
β k scroll_up β
β β
β view mail β
β β
β c add_addresses_to_contacts β
β e edit β
β u toggle_url_mode β
β a open_attachment β
β m open_mailcap β
β R reply β
β C-r reply_to_author β
β C-g reply_to_all β
β C-f forward β
β M-r view_raw_source β
β h toggle_expand_headers ββ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
ShowsΒ activeΒ shortcutsΒ inΒ orderΒ ofΒ theΒ widgetΒ hierarchy.
MAIN VIEW
βββββββββββββββββββββββββ
ββββββΌβββββββββββββββββββ€
β___ β ___________ β
β _ β _______________ β
β _ β__________________β
β _ β ___________ β
β β _____ β
β β β
ββββββ΄βββββββββββββββββββ
TheΒ mainΒ view'sΒ layout.
This is the view you will spend more time with in meli.
Press β¨`β©Β (shortcuts.listing.toggle_menu_visibility) to toggle the
sidebars visibility.
Press β¨Leftβ©Β (shortcuts.listing.focus_right) to switch focus on the
sidebar menu. Press β¨Rightβ©Β (shortcuts.listing.focus_left) to switch
focus on the e-mail list.
On the e-mail list, press β¨kβ©Β (shortcuts.listing.scroll_up) to scroll up,
and β¨jβ©Β (shortcuts.listing.scroll_down) to scroll down. Press
β¨Enterβ©Β (shortcuts.listing.open_entry) to open an e-mail entry and
β¨iβ©Β (shortcuts.listing.exit_entry) to exit it.
The sidebar.
ββββββββββββββββββββ
β mailβ contact liβ
βpersonal account β
β 0 INBOX β
β 1 β£βSent β
β 2 β£βLists β
β 3 β β£βmeli-dev β
β 4 β ββmeli β
β 5 β£βDrafts β
β 6 β£βTrash β
β 7 ββfoobar β
β 8 Trash β
β β β β β β β β β β
Press β¨kβ©Β (shortcuts.listing.scroll_up) to scroll up, and
β¨jβ©Β (shortcuts.listing.scroll_down) to scroll down.
Press β¨Enterβ©Β (shortcuts.listing.open_mailbox) to open an entry (either a
mailbox or an account name). Entering an account name will show you a
page with details about the account and its network connection, depending
on the backend.
While focused in the sidebar, you can βcollapseβ a mailbox tree, if it
has children, and you can open it with β¨Spaceβ©
(shortcuts.listing.toggle_mailbox_collapse). You can have mailbox trees
collapsed on startup by default by setting a mailbox's collapsed setting
to true. See meli.conf(5) section MAILBOXES for details.
You can increase the sidebar's width with
β¨Ctrl-pβ©Β (shortcuts.listing.increase_sidebar) and decrease with β¨Ctrl-oβ©
(shortcuts.listing.decrease_sidebar).
The status bar.
βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βNORMAL | Mailbox: Inbox, Messages: 25772, New: 3006
βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
The status bar shows which mode you are, and the status message of the
current view. In the pictured example, it shows the status of a mailbox
called βInboxβ with lots of e-mails.
The number modifier buffer.
βββββββββββββββ
12 β
βββββββββββββββ
Some commands may accept a number modifier. For example, scroll down
commands can receive a multiplier n to scroll down n entries. Another
use of the number buffer is opening URLs inside the pager. See PAGER for
an explanation of interacting with URLs in e-mails.
Pressing numbers in NORMAL mode will populate this buffer. To erase it,
press the β¨Escβ© key.
MAIL LIST
There are four different list styles:
- "plain" which shows one line per e-mail.
- "threaded" which shows a threaded view with drawn tree structure.
- "compact" which shows one line per thread which can include multiple
e-mails.
- "conversations" which shows more than one line per thread which can
include multiple e-mails with more details about the thread.
Plain view.
β42 Fri, 02 Sep 2022 19:51 xxxxxxxxxxxxx < [PATCH 3/8] β
β43 Fri, 02 Sep 2022 19:51 xxxxxxxxxxxxx < [PATCH 2/8] β
β44 Fri, 02 Sep 2022 19:51 xxxxxxxxxxxxx < [PATCH 1/8] β
|45 Fri, 02 Sep 2022 19:51 xxxxxxxxxxxxx < [PATCH 0/8] |
β46 Fri, 02 Sep 2022 18:18 xxxxxxxx <xxxxx Re: [PATCH 3β
Threaded view.
β12 9 hours ago xxxxxxxxxxxxxxx [PATCH v3 0β
β13 9 hours ago xxxxxxxxxxxxxxx ββ>[PATCH β
β14 9 hours ago xxxxxxxxxxxxxxx ββ>[PATCH β
|15 9 hours ago xxxxxxxxxxxxxxx ββ>[PATCH |
β16 9 hours ago xxxxxxxxxxxxxxx ββ>[PATCH β
β17 9 hours ago xxxxxxxxxxxxxxx ββ>[PATCH β
β18 2022-08-23 01:23:51 xxxxxxxxxxxxxxx [RFC v4 00/β
β19 2022-08-23 01:23:52 xxxxxxxxxxxxxxx ββ>[RFC v4β
|20 2022-08-30 10:30:16 xxxxxxxxxxxxxxx β ββ> |
β21 6 days ago xxxxxxxxxxxxxxx β ββ> β
β22 2022-08-23 01:23:53 xxxxxxxxxxxxxxx ββ>[RFC v4β
Compact view.
β18 2022-β¦:38 xxxxxxxxxxxxxxx [PATCH v3 3/3] uβ¦_l() (2) β
|19 2022-β¦:49 xxxxxxxxxxxxxxx [PATCH v8 0/7] Aβ¦e (3) |
β20 2022-β¦:10 xxxxxxxxxxxxxxx [PATCH v8 2/7] fβ¦s (2) β
β21 2022-β¦:38 xxxxxxxxxxxxxxx [PATCH v8 3/7] bβ¦s (2) β
β22 2022-β¦:53 xxxxxxxxxxxxxxx [PATCH v6 00/10] pβ¦g (31) β
Conversations view.
β[PATCH v2] xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (5) β
|1 day agoββββxxxxxxxxxxxxx <xxxxxxxxxxxxx@xxxxxxxxxx>, xxxxxβ
β |
β[PATCH v2 0/8] xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxβ
β1 day agoββββxxxxxxxxxxxxxxx <xxxxxxxxxx@xxxxxxxxxxxxxx>, xxβ
| β
β[PATCH 0/2] xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (4) |
β2 days agoββββxxxxxxxxxxxxxxxx <xxxxxxxx@xxxxxxxxxxx>, xxxxxβ
β β
β[PATCH 0/8] xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (12) β
β2 days agoββββxxxxxxxxxxxxx <xxxxxxxx@xxxxxxxxxx>, xxxxxxxxxβ
Performing actions on entries and/or selections.
Press β¨vβ©Β (shortcuts.listing.select_entry) to toggle the selection of a
single entry. "select_entry" can be prefixed by a number modifier and
affixed by a scrolling motion (up or down) to select multiple entries.
Simple set operations can be performed on a selection with these shortcut
modifiers:
- Union modifier: β¨Ctrl-uβ©Β (shortcuts.listing.union_modifier)
- Difference modifier: β¨Ctrl-dβ©Β (shortcuts.listing.diff_modifier)
- Intersection modifier:
β¨Ctrl-iβ©Β (shortcuts.listing.intersection_modifier)
To set an entry as "read" , use the β¨nβ©Β (shortcuts.listing.set_seen)
shortcut. To set an entry as "unread" , use the command
set unseen
which also has its complement
set seen
action.
For e-mail backends that support flags you can use the following commands
on entries and selections to modify them:
flag set FLAG
flag unset FLAG
For e-mail backends that support tags (like "IMAP" or "notmuch") you can
use the following commands on entries and selections to modify them:
tag add TAG
tag remove TAG
(see meli.conf(5) TAGS, settings colors and ignore_tags for how to set
tag colors and tag visibility) You can clear the selection with the β¨Escβ©
key.
PAGER
You can open an e-mail entry by pressing β¨Enterβ©
(shortcuts.listing.open_entry). This brings up the e-mail view with the
e-mail content inside a pager.
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βDate: Sat, 21 May 2022 16:16:11 +0300 ββ
βFrom: Narrator <narrator@example.com> ββ
βTo: Stanley <427@example.com> ββ
βSubject: The e-mail ending ββ
βMessage-ID: <gambheerata@example.com> ββ
β ββ
βThe story, and the choices, or what have you, and thereforeββ
βby becoming it is! So on and so forth, until inevitably, we β
βall until the end of time. At which time, everything all at β
βonce, so now you see? Blah, blah, blah, rah, rah, rah... β
βWe've eaten too much and it can't be just yet. No, no! β
βUntil two-hundred and forty-five! But the logic of β
βelimination, working backwards, the deduction therefore β
βbecomes impossible to manufacture. It went on for nearly β
βten thousand years, until just yesterday. Here and there, β
βforward and back, and never a moment before lunchtime. It β
βcan't be! It's the only thing there is! How many billions β
βleft until so much more than forever ago! Which is why I β
βsay: β
β β
βThe story, and the choices, or what have you, and therefore β
βby becoming it is! So on and so forth, until inevitably, weββ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
TheΒ pagerΒ displayingΒ anΒ e-mail.
The pager is simple to use. Scroll with the following:
Go to next pager page β¨PageDownβ©Β (shortcuts.pager.page_down)
Go to previous pager page β¨PageUpβ©Β (shortcuts.pager.page_up)
Scroll down pager. β¨jβ©Β (shortcuts.pager.scroll_down)
Scroll up pager. β¨kβ©Β (shortcuts.pager.scroll_up)
All scrolling shortcuts can be prefixed with a number modifier which will
act as a multiplier.
The pager can enter a special url mode which will prefix all detected
hyperlinks and e-mail addresses with a number inside square brackets β¨uβ©
(shortcuts.pager.toggle_url_mode). Writing down a chosen number as a
number modifier and pressing β¨gβ©Β (shortcuts.envelope_view.go_to_url) will
attempt to open the link with the system's default open command
(xdg-open(1) in supported OSes, and open(1) on MacOS). To override with
a custom launcher, see "pager" configuration setting "url_launcher" (see
meli.conf(5) PAGER for more details).
MAIL VIEW
Other things you can do when viewing e-mail:
β’ Most importantly, you can exit the mail view with:
β¨iβ©Β (shortcuts.listing.exit_entry)
β’ Add addresses from the e-mail headers to contacts:
β¨cβ©Β (shortcuts.envelope_view.add_addresses_to_contacts)
β’ Open an attachment by entering its index as a number modifier and
pressing: β¨aβ©Β (shortcuts.envelope_view.open_attachment)
β’ Open an attachment by its mailcap(4) entry by entering its index as a
number modifier and pressing:
β¨mβ©Β (shortcuts.envelope_view.open_mailcap)
β’ Reply to envelope: β¨Rβ©Β (shortcuts.envelope_view.reply)
β’ Reply to author: β¨Ctrl-rβ©Β (shortcuts.envelope_view.reply_to_author)
β’ Reply to all/Reply to list/Follow up:
β¨Ctrl-gβ©Β (shortcuts.envelope_view.reply_to_all)
β’ Forward email: β¨Ctrl-fβ©Β (shortcuts.envelope_view.forward)
β’ Expand extra headers: (References and others)
β¨hβ©Β (shortcuts.envelope_view.toggle_expand_headerk)
β’ View envelope source in a pager: (toggles between raw and decoded
source) β¨M-rβ©Β (shortcuts.envelope_view.view_raw_source)
β’ Return to envelope_view if viewing raw source or attachment:
β¨rβ©Β (shortcuts.envelope_view.return_to_normal_view)
COMPOSING
To compose an e-mail, you can either start with an empty draft by
pressing β¨mβ©Β (shortcuts.listing.new_mail) which opens a composer view in
a new tab. To reply to a specific e-mail, when in envelope view you can
select the specific action you want to take:
β’ Reply to envelope. β¨Rβ©Β (shortcuts.envelope_view.reply)
β’ Reply to author. β¨Ctrl-rβ©Β (shortcuts.envelope_view.reply_to_author)
β’ Reply to all. β¨Ctrl-gβ©Β (shortcuts.envelope_view.reply_to_all)
To launch your editor, press β¨eβ© (shortcuts.composing.edit). To send
your draft, press β¨sβ© (shortcuts.composing.send_mail). To save the draft
without submission, enter the command
close
and select "save as draft". You can return to the draft by going to your
"Drafts" mailbox and selecting β¨eβ© (shortcuts.envelope_view.edit).
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β mailβ contact list β composing βββββββββββββββββββββββββ
β COMPOSING MESSAGE β
β Date Mon, 05 Sep 2022 17:49:19 +0300 β
β From myself <myself@example.com>ββββ β
β To friend <myfriend@example.com>ββ β
β Cc βββββββββββββββββββββββββββββββ β
β Bcc βββββββββββββββββββββββββββββββ β
β Subject This is my subject!ββββββββββββ β
β β
β Hello friend!ββββββββββββββββββββββββββββ β
β βββββββββββββββββββββββββββββββββββββββββ β
β βββββββββββββββββββββββββββββββββββββββββ β
β β
β β don't sign β
β β don't encrypt β
β no attachments β
β β
βNORMAL | Mailbox: Inbox, Messages: 25772, New: 3006 β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
TheΒ lightlyΒ highlightedΒ cellsΒ representΒ textΒ inputΒ fields.
If you enable the embed terminal option, you can launch your terminal
editor of choice when you press edit.
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β mailβ contact list β composing βββββββββββββββββββββββββ
β βCOMPOSING MESSAGEββββββββββββββββββββββββββββββββββββ β
β β p/v/f/h/5/T/m/07f56b6e-ec09-49d9-b8d8-f0c5a81e7826 β β
β β 7 Date: Mon, 05 Sep 2022 18:43:10 +0300 β β
β β 6 From: Mister Cardholder <mrholder@example.com> β β
β β 5 To: β β
β β 4 Cc: β β
β β 3 Bcc: β β
β β 2 Subject: β β
β β 1 User-Agent: meli 0.7.2 β β
β β8 β β β
β β~ β β
β β~ β β
β β~ β β
β β~ β β
β β Nβ¦ <6e-ec09-49d9-b8d8-f0c5a81e7826 100% γ:8 β
:1β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β β
β β don't sign β
β β don't encrypt β
β no attachments β
β β
βEMBED | Mailbox: Inbox, Messages: 25772, New: 3006 β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
nvim(1)Β runningΒ insideΒ theΒ composingΒ tab.
TheΒ doubleΒ lineΒ borderΒ annotatesΒ theΒ areaΒ ofΒ theΒ embeddedΒ terminal,
theΒ actualΒ embeddingΒ isΒ seamless.
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
THEMES
See meli-themes(5) for documentation on how to theme meli.
SEE ALSO
meli(1), meli.conf(5), meli-themes(5), xdg-open(1), mailcap(5)
AUTHORS
Copyright 2017-2022 Manos Pitsidianakis β¨manos@pitsidianak.isβ© 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 https://github.com/meli/meli
https://crates.io/crates/meli
Debian November 11, 2022 Debian