meli/meli.conf.5

16 KiB
Raw Permalink Blame History

MELI.CONF(5)                  File Formats Manual                 MELI.CONF(5)

NAME
     meli.conf  configuration file for the Meli Mail User Agent

SYNOPSIS
     $XDG_CONFIG_HOME/meli/config.toml

DESCRIPTION
     Configuration for meli is written in TOML.  Few things to consider before
     writing TOML (quoting the spec):

        TOML is case sensitive.
        A TOML file must be a valid UTF-8 encoded Unicode document.
        Whitespace means tab (0x09) or space (0x20).
        Newline means LF (0x0A) or CRLF (0x0D 0x0A).

     Refer to TOML documentation for valid TOML syntax.

     Though not part of TOML syntax, meli.conf can have nested configuration
     files by using the following m4(1) include macro:
           include("/path/to/file")

SECTIONS
     The top level sections of the config are accounts, shortcuts,
     notifications, pager, listing, composing, pgp, terminal.

EXAMPLES
     example configuration


     # Setting up a Maildir account
     [accounts.account-name]
     root_folder = "/path/to/root/folder"
     format = "Maildir"
     index_style = "Compact"
     identity="email@address.tld"
     subscribed_folders = ["folder", "folder/Sent"] # or [ "*", ] for all folders
     display_name = "Name"

     # Set folder-specific settings
       [accounts.account-name.folders]
       "INBOX" = { alias="Inbox" } #inline table
       "drafts" = { alias="Drafts" } #inline table
       [accounts.account-name.folders."foobar-devel"] # or a regular table
         ignore = true # don't show notifications for this folder

     # Setting up an mbox account
     [accounts.mbox]
     root_folder = "/var/mail/username"
     format = "mbox"
     index_style = "Compact"
     identity="username@hostname.local"

     [pager]
     filter = "/usr/bin/pygmentize"
     html_filter = "w3m -I utf-8 -T text/html"

     [notifications]
     script = "notify-send"

     [composing]
     # required for sending e-mail
     mailer_cmd = 'msmtp --read-recipients --read-envelope-from'
     editor_cmd = 'vim +/^$'

     [shortcuts]
     [shortcuts.composing]
     edit_mail = 'e'

     [shortcuts.listing]
     new_mail = 'm'
     set_seen = 'n'

     [terminal]
     theme = "light"

     available options are listed below.  default values are shown in
     parentheses.

ACCOUNTS
     root_folder String                    the backend-specific path of the
                                           root_folder, usually INBOX.

     format String [maildir mbox imap notmuch jmap]
                                           the format of the mail backend.

     subscribed_folders [String,]          an array of folder paths to display
                                           in the UI.  Paths are relative to
                                           the root folder (eg "INBOX/Sent",
                                           not "Sent").  The glob wildcard *
                                           can be used to match every folder
                                           name and path.

     identity String                       your e-mail address that is
                                           inserted in the From: headers of
                                           outgoing mail

     index_style String                    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 │
     └──────────────┴─────────────────────────────────────────────────┘
     display_name String                   (optional) a name which can be
                                           combined with your address: "Name
                                           <email@address.tld>"

     read_only boolean                     attempt to not make any changes to
                                           this account.  (false)

     manual_refresh boolean                (optional) if true, do not monitor
                                           account for changes (shortcut
                                           listing.refresh) (false)

     refresh_command String                (optional) command to execute when
                                           manually refreshing (shortcut
                                           listing.refresh) (None)

     cache_type String                     (optional) choose which cache
                                           backend to use.  Available options
                                           are 'none' and 'sqlite3' (sqlite3)

     vcard_folder String                   (optional) Folder that contains
                                           .vcf files.  They are parsed and
                                           imported read-only.

     folders folder_config                 (optional) configuration for each
                                           folder.  Its format is described
                                           below in FOLDERS.

notmuch only
     root_folder points to the directory which contains the .notmuch/
     subdirectory.  notmuch folders are virtual, since they are defined by
     user-given notmuch queries.  Thus you have to explicitly state the
     folders you want in the folders field and set the query property to each
     of them.  Example:

     [accounts.notmuch]
     format = "notmuch"
     ...
       [accounts.notmuch.folders]
       "INBOX" = {  query="tag:inbox", subscribe = true }
       "Drafts" = {  query="tag:draft", subscribe = true }
       "Sent" = {  query="from:username@server.tld from:username2@server.tld", subscribe = true }

IMAP only
     IMAP specific options are:

     server_hostname String                example: "mail.example.tld"

     server_username String

     server_password String

     server_port number                    (optional) (143)

     use_starttls boolean                  (optional) if port is 993 and
                                           use_starttls is unspecified, it
                                           becomes false by default.  (true)

     danger_accept_invalid_certs boolean   (optional) do not validate TLS
                                           certificates.  (false)

JMAP only
     JMAP specific options are:

     server_hostname String                example: "mail.example.tld"

     server_username String

     server_password String

     server_port number                    (optional) (443)

     danger_accept_invalid_certs boolean   (optional) do not validate TLS
                                           certificates.  (false)

FOLDERS
     alias String                          (optional) show a different name
                                           for this folder in the UI

     autoload boolean                      (optional) load this folder on
                                           startup (not functional yet)

     subscribe boolean                     (optional) watch this folder for
                                           updates (true)

     ignore boolean                        (optional) silently insert updates
                                           for this folder, if any (false)

     usage boolean                         (optional) special usage of this
                                           folder.  Valid values are:
                                              Normal
                                              Inbox
                                              Archive
                                              Drafts
                                              Flagged
                                              Junk
                                              Sent
                                              Trash
                                           otherwise usage is inferred from
                                           the folder title.

     conf_override boolean                 (optional) override global settings
                                           for this folder.  Available
                                           sections to override are pager,
                                           notifications, shortcuts, composing
                                           and the account options identity
                                           and index_style.  Example:

                                           [accounts."imap.domain.tld".folders."INBOX"]
                                             index_style = "plain"
                                             [accounts."imap.domain.tld".folders."INBOX".pager]
                                               filter = ""

COMPOSING
     mailer_cmd String                     command to pipe new mail to, exit
                                           code must be 0 for success.

     editor_cmd String                     command to launch editor.  Can have
                                           arguments.  Draft filename is given
                                           as the last argument.  If it's
                                           missing, the environment variable
                                           $EDITOR is looked up.

     embed boolean                         (optional) embed editor within meli
                                           (false)

     format_flowed boolean                 (optional) set format=flowed
                                           [RFC3676] in text/plain
                                           attachments.  (true)

SHORTCUTS
     Shortcuts can take the following values: "Backspace" "Left" "Right" "Up"
     "Down" "Home" "End" "PageUp" "PageDown" "Delete" "Insert" "Enter" "Tab"
     "Esc" "F1..F12" "M-char" "C-char" and "char", where char is a single
     character string.

     The headings before each list indicate the map key of the shortcut list.
     For example for the first list titled general the configuration is typed
     as follows:

     [shortcuts.general]
     next_tab = 'T'

     and for compact-listing:

     [shortcuts.compact-listing]
     open_thread = "Enter"
     exit_thread = 'i'


     general

     next_tab                              Go to next tab.  (T)

     go_to_tab                             Go to the nth tab (cannot be
                                           redefined)

     listing

     prev_page                             Go to previous page.  (PageUp)

     next_page                             Go to next page.  (PageDown)

     prev_folder                           Go to previous folder.  (K)

     next_folder                           Go to next folder.  (J)

     prev_account                          Go to previous account.  (l)

     next_account                          Go to next account.  (h)

     new_mail                              Start new mail draft in new tab (m)

     set_seen                              Set thread as seen.  (n)

     refresh                               Manually request a folder refresh.
                                           (F5)

     search                                Search within list of e-mails.  (/)

     toggle_menu_visibility                Toggle visibility of side menu in
                                           mail list.  (`)

     compact-listing

     exit_thread                           Exit thread view (i)

     open_thread                           Open thread.  (Enter)

     select_entry                          Select thread entry.  (v)

     pager

     scroll_up                             Scroll up pager.  (k)

     scroll_down                           Scroll down pager.  (j)

     page_up                               Go to previous pager page (PageUp)

     page_down                             Go to next pager pag (PageDown)

     contact-list

     create_contact                        Create new contact.  (c)

     edit_contact                          Edit contact under cursor (e)

     mail_contact                          Mail contact under cursor (m)

     toggle_menu_visibility                Toggle visibility of side menu in
                                           mail list.  (`)


     composing

     send_mail                             Deliver draft to mailer (s)

     edit_mail                             Edit mail.  (e)

     envelope-view

     To "select" an attachment, type its index (you will see the typed result
     in the command buffer on your bottom right of the status line) and then
     issue the corresponding command.

     add_addresses_to_contacts             Select addresses from envelope to
                                           add to contacts.  (c)

     view_raw_source                       View raw envelope source in a
                                           pager.  (M-r)

     reply                                 Reply to envelope.  (R)

     edit                                  Open envelope in composer.  (e)

     return_to_normal_view                 Return to envelope if viewing raw
                                           source or attachment.  (r)

     open_attachment                       Opens selected attachment with
                                           xdg-open (a)

     open_mailcap                          Opens selected attachment according
                                           to its mailcap entry.  See
                                           meli.1(FILES) for the mailcap file
                                           locations.  (m)

     go_to_url                             Go to url of given index (g)

     toggle_url_mode                       Toggles url open mode.  When
                                           active, it prepends an index next
                                           to each url that you can select by
                                           typing and open by issuing
                                           go_to_url (u)

     toggle_expand_headers                 Expand extra headers (References
                                           and others) (h)

     thread-view

     reverse_thread_order                  Reverse thread order.  (r)

     toggle_mailview                       Toggle mail view visibility.  (p)

     toggle_threadview                     Toggle thread view visibility.  (t)

     collapse_subtree                      Collapse thread branches.  (h)

     prev_page                             Go to previous page.  (PageUp)

     next_page                             Go to next page.  (PageDown)


NOTIFICATIONS
     enable boolean                        enable freedesktop-spec
                                           notifications.  this is usually
                                           what you want (true)

     script String                         (optional) script to pass
                                           notifications to, with title as 1st
                                           arg and body as 2nd (none)

     xbiff_file_path String                (optional) file that gets its size
                                           updated when new mail arrives
                                           (none)

     play_sound boolean                    (optional) play theme sound in
                                           notifications if possible (false)

     sound_file String                     (optional) play sound file in
                                           notifications if possible (none)

PAGER
     pager_context num                     (optional) number of context lines
                                           when going to next page.
                                           (Unimplemented) (0)

     headers_sticky boolean                (optional) always show headers when
                                           scrolling.  (true)

     html_filter String                    (optional) pipe html attachments
                                           through this filter before display
                                           (none)

     filter String                         (optional) a command to pipe mail
                                           output through for viewing in
                                           pager.  (none)

     format_flowed bool                    (optional) respect format=flowed
                                           (true)

     split_long_lines bool                 (optional) Split long lines that
                                           would overflow on the x axis.
                                           (true)

     minimum_width num                     (optional) Minimum text width in
                                           columns.  (80)

LISTING
     context_lines num                     (optional) number of context lines
                                           when going to next page.
                                           (Unimplemented) (0)

     datetime_fmt String                   (optional) datetime formatting
                                           passed verbatim to strftime(3).
                                           (%Y-%m-%d %T)

     recent_dates Boolean                  (optional) Show recent dates as `X
                                           {minutes,hours,days} ago`, up to 7
                                           days.  (true)

TAGS
     colours hash table String[Color]      (optional) set UI colors for tags

     ignore_tags Array String              (optional) hide tags (not the
                                           tagged messages themselves)

     example configuration:


     [tags]
     # valid inputs: #HHHHHH, #ABC -> #AABBCC, XTERM_NAME, 0-255 byte
     colors = { signed="#Ff6600", replied="DeepSkyBlue4", draft="#f00", replied="8" }
     [accounts.dummy]
     ...
       [accounts.dummy.folders]
       # per folder override:
       "INBOX" = {  tags.ignore_tags=["inbox", ] }

PGP
     auto_verify_signatures boolean        auto verify signed e-mail according
                                           to RFC3156 (true)

     auto_sign boolean                     (optional) always sign sent
                                           messages (false)

     key String                            (optional) key to be used when
                                           signing/encrypting (not functional
                                           yet) (none)

     gpg_binary String                     (optional) gpg binary name or file
                                           location to use (gpg2)

TERMINAL
     theme String                          (optional) select between these
                                           themes: light / dark (dark)

     ascii_drawing boolean                 (optional) if true, box drawing
                                           will be done with ascii characters.
                                           (false)

     use_color boolean                     (optional) if false, no ANSI colors
                                           are used (true)

     window_title String                   (optional) set window title in
                                           xterm compatible terminals (empty
                                           string means no window title is
                                           set) (meli)

     themes hash table String[String[Attribute]]
                                           define UI themes.  See
                                           meli-themes(5) for details.

                                           [terminal]
                                           theme = "themeB"

                                           [terminal.themes.themeA]
                                           "mail.view.body" = {fg = "HotPink3", bg = "LightSalmon1"}
                                           ...
                                           [terminal.themes.themeB]
                                           "mail.view.body" = {fg = "CadetBlue", bg = "White"}
                                           ...
                                           [terminal.themes.themeC]
                                           ...

SEE ALSO
     meli(1), meli-themes(5)

CONFORMING TO
     TOML Standard v.0.5.0 https://github.com/toml-
     lang/toml/blob/master/versions/en/toml-v0.5.0.md

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                        September 16, 2019                        Debian