1 | .\" meli - meli.conf.5 |
2 | .\" |
3 | .\" Copyright 2017-2019 Manos Pitsidianakis |
4 | .\" |
5 | .\" This file is part of meli. |
6 | .\" |
7 | .\" meli is free software: you can redistribute it and/or modify |
8 | .\" it under the terms of the GNU General Public License as published by |
9 | .\" the Free Software Foundation, either version 3 of the License, or |
10 | .\" (at your option) any later version. |
11 | .\" |
12 | .\" meli is distributed in the hope that it will be useful, |
13 | .\" but WITHOUT ANY WARRANTY; without even the implied warranty of |
14 | .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
15 | .\" GNU General Public License for more details. |
16 | .\" |
17 | .\" You should have received a copy of the GNU General Public License |
18 | .\" along with meli. If not, see <http://www.gnu.org/licenses/>. |
19 | .\" |
20 | .de HorizontalRule |
21 | .\"\l'\n(.l\(ru1.25' |
22 | .sp |
23 | .. |
24 | .de LiteralStringValue |
25 | .Sm |
26 | .Po Qo |
27 | .Em Li \\$1 |
28 | .Qc Pc |
29 | .Sm |
30 | .. |
31 | .de LiteralStringValueRenders |
32 | .LiteralStringValue \\$1 |
33 | .shift 1 |
34 | .Bo |
35 | .Sm |
36 | Rendered as: |
37 | .Li r## |
38 | .Qo |
39 | \\$1 |
40 | .Qc |
41 | .Li ## |
42 | .Bc |
43 | .Sm |
44 | .. |
45 | .\".Dd November 11, 2022 |
46 | .Dd May 20, 2024 |
47 | .Dt MELI.CONF 5 |
48 | .Os |
49 | .Sh NAME |
50 | .Nm meli.conf |
51 | .Nd configuration file for the |
52 | .Xr meli 1 |
53 | terminal e-mail client |
54 | .\" |
55 | .\" |
56 | .\" |
57 | .\" |
58 | .\" |
59 | .Sh SYNOPSIS |
60 | .Pa $XDG_CONFIG_HOME/meli/config.toml |
61 | .\" |
62 | .\" |
63 | .\" |
64 | .\" |
65 | .\" |
66 | .Sh DESCRIPTION |
67 | Configuration for |
68 | .Sy meli |
69 | is written in |
70 | .Em TOML |
71 | which has a few things to consider (quoting the specification): |
72 | .sp |
73 | .Bl -dash -compact |
74 | .It |
75 | .Em TOML |
76 | is case sensitive. |
77 | .It |
78 | A |
79 | .Em TOML |
80 | file must be a valid |
81 | .Em UTF-8 |
82 | encoded Unicode document. |
83 | .It |
84 | White-space means |
85 | .Sy tab |
86 | .Pq Li 0x09 |
87 | or |
88 | .Sy space |
89 | .Pq Li 0x20 Ns |
90 | \&. |
91 | .It |
92 | Newline means |
93 | .Sy LF |
94 | .Pq Li 0x0A |
95 | or |
96 | .Sy CRLF |
97 | .Pq Li 0x0D 0x0A Ns |
98 | \&. |
99 | .El |
100 | .sp |
101 | Refer to |
102 | .Em TOML |
103 | documentation for valid |
104 | .Em TOML |
105 | syntax. |
106 | .sp |
107 | Though not part of |
108 | .Em TOML |
109 | syntax, |
110 | .Nm |
111 | can have nested configuration files by using the following |
112 | .Xr m4 1 |
113 | include macro: |
114 | .sp |
115 | .Dl include(\&"/path/to/file\&") |
116 | .\" |
117 | .\" |
118 | .\" |
119 | .\" |
120 | .\" |
121 | .Sh SECTIONS |
122 | The top level sections of the configuration are: |
123 | .Bl -dash -compact |
124 | .It |
125 | accounts |
126 | .It |
127 | shortcuts |
128 | .It |
129 | notifications |
130 | .It |
131 | pager |
132 | .It |
133 | listing |
134 | .It |
135 | composing |
136 | .It |
137 | pgp |
138 | .It |
139 | terminal |
140 | .It |
141 | log |
142 | .El |
143 | .\" |
144 | .\" |
145 | .\" |
146 | .\" |
147 | .\" |
148 | .Sh EXAMPLES |
149 | An example configuration: |
150 | .\" |
151 | .\" |
152 | .\" |
153 | .Bd -literal |
154 | # Setting up a Maildir account |
155 | [accounts.account-name] |
156 | root_mailbox = "/path/to/root/folder" |
157 | format = "Maildir" |
158 | listing.index_style = "Compact" |
159 | identity="email@example.com" |
160 | subscribed_mailboxes = ["folder", "folder/Sent"] # or [ "*", ] for all mailboxes |
161 | display_name = "Name" |
162 | |
163 | # Set mailbox-specific settings |
164 | [accounts.account-name.mailboxes] |
165 | "INBOX" = { alias="Inbox" } #inline table |
166 | "drafts" = { alias="Drafts" } #inline table |
167 | [accounts.account-name.mailboxes."foobar-devel"] # or a regular table |
168 | ignore = true # don't show notifications for this mailbox |
169 | |
170 | # Setting up an mbox account |
171 | [accounts.mbox] |
172 | root_mailbox = "/var/mail/username" |
173 | format = "mbox" |
174 | listing.index_style = "Compact" |
175 | identity="username@hostname.local" |
176 | composing.send_mail = { hostname = "localhost", port = 25, auth = { type = "none" }, security = { type = "none" } } |
177 | |
178 | [pager] |
179 | filter = "COLUMNS=72 /usr/local/bin/pygmentize -l email" |
180 | html_filter = "w3m -I utf-8 -T text/html" |
181 | |
182 | [notifications] |
183 | script = "notify-send" |
184 | |
185 | [composing] |
186 | # required for sending e-mail |
187 | send_mail = 'msmtp --read-recipients --read-envelope-from' |
188 | #send_mail = { hostname = "smtp.example.com", port = 587, auth = { type = "auto", username = "user", password = { type = "command_eval", value = "gpg2 --no-tty -q -d ~/.passwords/user.gpg" } }, security = { type = "STARTTLS" } } |
189 | editor_command = 'vim +/^$' |
190 | |
191 | [shortcuts] |
192 | [shortcuts.composing] |
193 | edit = 'e' |
194 | |
195 | [shortcuts.listing] |
196 | new_mail = 'm' |
197 | set_seen = 'n' |
198 | |
199 | [terminal] |
200 | theme = "light" |
201 | .Ed |
202 | .\" |
203 | .\" |
204 | .\" |
205 | .sp |
206 | Available options are listed below. |
207 | .\" |
208 | .\" |
209 | .\" |
210 | .\" |
211 | .\" |
212 | .Sh ACCOUNTS |
213 | .Ss Account configuration settings |
214 | Default values are shown in parentheses. |
215 | .Bl -tag -width 36n |
216 | .It Ic root_mailbox Ar String |
217 | The backend-specific path of the root_mailbox, usually |
218 | .Sy INBOX Ns |
219 | \&. |
220 | .It Ic default_mailbox Ar String |
221 | .Pq Em optional |
222 | The mailbox that is the default to open or view for this account. |
223 | Must be a valid mailbox path. |
224 | If not specified, the default will be the root mailbox. |
225 | .It Ic format Ar String Op maildir mbox imap notmuch jmap |
226 | The format of the mail backend. |
227 | .It Ic subscribed_mailboxes Ar [String,] |
228 | An array of mailbox paths to display in the UI. |
229 | Paths are relative to the root mailbox (e.g. |
230 | .Sy INBOX/Sent Ns |
231 | , not |
232 | .Sy Sent Ns |
233 | ). |
234 | The glob wildcard |
235 | .Em \&* |
236 | can be used to match every mailbox name and path. |
237 | .It Ic identity Ar String |
238 | Your e-mail address that is inserted in the |
239 | .Li From Ns |
240 | : |
241 | headers of outgoing mail. |
242 | .It Ic extra_identities Ar [String,] |
243 | Extra e-mail address identities. |
244 | When replying to an e-mail addressed to one of these identities, the |
245 | .Li From Ns |
246 | : |
247 | header will be adjusted to its value instead of the default identity. |
248 | .El |
249 | .Bl -tag -width 36n |
250 | .It Ic display_name Ar String |
251 | .Pq Em optional |
252 | A name which can be combined with your address: |
253 | .Qq Li Name <email@example.com> Ns |
254 | \&. |
255 | .It Ic read_only Ar boolean |
256 | Attempt to not make any changes to this account. |
257 | .Pq Em false |
258 | .It Ic manual_refresh Ar boolean |
259 | .Pq Em optional |
260 | If true, do not monitor account for changes |
261 | .Po |
262 | you can use shortcut |
263 | .Li listing.refresh |
264 | .Pc Ns |
265 | \&. |
266 | .Pq Em false |
267 | .It Ic refresh_command Ar String |
268 | .Pq Em optional |
269 | command to execute when manually refreshing |
270 | .Po |
271 | shortcut |
272 | .Li listing.refresh |
273 | .Pc |
274 | .Pq Em None |
275 | .It Ic search_backend Ar String |
276 | .Pq Em optional |
277 | Choose which search backend to use. |
278 | Available options are |
279 | .Qq Li none |
280 | and |
281 | .Qq Li sqlite3 Ns |
282 | \&. |
283 | .Pq Qq sqlite3 |
284 | .It Ic vcard_folder Ar String |
285 | .Pq Em optional |
286 | Folder that contains |
287 | .Sy .vcf |
288 | files. |
289 | They are parsed and imported read-only. |
290 | .It Ic mutt_alias_file Ar String |
291 | .Pq Em optional |
292 | Path of |
293 | .Xr mutt 1 |
294 | compatible alias file in the option |
295 | They are parsed and imported read-only. |
296 | .It Ic mailboxes Ar mailbox |
297 | .Pq Em optional |
298 | Configuration for each mailbox. |
299 | Its format is described below in |
300 | .Sx mailboxes Ns |
301 | \&. |
302 | .El |
303 | .Ss notmuch only |
304 | .HorizontalRule |
305 | notmuch is supported by loading the dynamic library |
306 | .Sy libnotmuch Ns |
307 | \&. |
308 | If its location is missing from your library paths, you must add it yourself. |
309 | Alternatively, you can specify its path by using a setting. |
310 | .sp |
311 | notmuch mailboxes are virtual, since they are defined by user-given notmuch |
312 | queries. |
313 | You must explicitly state the mailboxes you want in the |
314 | .Ic mailboxes |
315 | field and set the |
316 | .Ar query |
317 | property to each of them. |
318 | To create a tree hierarchy with virtual mailboxes, define the |
319 | .Ar parent |
320 | property to a mailbox as the name of the parent mailbox you have used in your |
321 | configuration. |
322 | .sp |
323 | Account properties: |
324 | .Bl -tag -width 36n |
325 | .It Ic root_mailbox |
326 | points to the directory which contains the |
327 | .Pa .notmuch/ |
328 | subdirectory. |
329 | .It Ic library_file_path Ar Path |
330 | Use an arbitrary location of |
331 | .Sy libnotmuch |
332 | by specifying its full filesystem path. |
333 | .Pq Em optional |
334 | .El |
335 | Mailbox properties: |
336 | .Bl -tag -width 36n |
337 | .It Ic query Ar String |
338 | The |
339 | .Sy notmuch |
340 | query that defines what content this virtual mailbox has. |
341 | Refer to |
342 | .Xr notmuch-search-terms 7 |
343 | for |
344 | .Sy notmuch Ns |
345 | \&'s search syntax. |
346 | .It Ic parent Ar String |
347 | If you wish to build a mailbox hierarchy, define the name of a parent mailbox |
348 | you have used in your configuration. |
349 | .Pq Em optional |
350 | .El |
351 | .sp |
352 | Example: |
353 | .sp |
354 | .\" |
355 | .\" |
356 | .\" |
357 | .Bd -literal |
358 | [accounts.notmuch] |
359 | format = "notmuch" |
360 | #library_file_path = "/opt/homebrew/lib/libnotmuch.5.dylib" |
361 | \&... |
362 | [accounts.notmuch.mailboxes] |
363 | "INBOX" = { query="tag:inbox", subscribe = true } |
364 | "Drafts" = { query="tag:draft", subscribe = true } |
365 | "Sent" = { query="from:username@example.com from:username2@example.com", subscribe = true } |
366 | "Archives" = { query="tag:archived", subscribe = true } |
367 | "Archives/2019" = { query="tag:archived date:01-2019..12-2019", parent="Archives", subscribe = true } |
368 | .Ed |
369 | .\" |
370 | .\" |
371 | .\" |
372 | .Ss IMAP only |
373 | .HorizontalRule |
374 | .Em IMAP |
375 | specific options are: |
376 | .Bl -tag -width 36n |
377 | .It Ic server_hostname Ar String |
378 | example: |
379 | .Qq mail.example.com |
380 | .It Ic server_username Ar String |
381 | Server username |
382 | .It Ic server_password Ar String |
383 | Server password |
384 | .It Ic server_password_command Ar String |
385 | .Pq Em optional |
386 | Use instead of |
387 | .Ic server_password |
388 | .It Ic server_port Ar number |
389 | .Pq Em optional |
390 | The port to connect to |
391 | .Pq Em 143 \" default value |
392 | .It Ic use_starttls Ar boolean |
393 | .Pq Em optional |
394 | If port is |
395 | .Li 993 |
396 | and |
397 | .Qq Li use_starttls |
398 | is unspecified, it becomes false by default. |
399 | .Pq Em true \" default value |
400 | .It Ic use_tls Ar boolean |
401 | .Pq Em optional |
402 | Connect with |
403 | .Em TLS |
404 | .Po |
405 | or upgrade from plain connection to |
406 | .Em TLS |
407 | if |
408 | .Em STARTTLS |
409 | is set. |
410 | .Pc |
411 | .Pq Em true \" default value |
412 | .It Ic danger_accept_invalid_certs Ar boolean |
413 | .Pq Em optional |
414 | Do not validate |
415 | .Em TLS |
416 | certificates. |
417 | .Pq Em false \" default value |
418 | .It Ic offline_cache Ar boolean |
419 | .Pq Em optional |
420 | Keep mail headers in an |
421 | .Sy sqlite3 |
422 | database. |
423 | .Pq Em true \" default value |
424 | .It Ic use_idle Ar boolean |
425 | .Pq Em optional |
426 | Use |
427 | .Em IDLE |
428 | extension. |
429 | .Pq Em true \" default value |
430 | .It Ic use_condstore Ar boolean |
431 | .Pq Em optional |
432 | Use |
433 | .Em CONDSTORE |
434 | extension. |
435 | .Pq Em true \" default value |
436 | .It Ic use_deflate Ar boolean |
437 | .Pq Em optional |
438 | Use |
439 | .Em COMPRESS=DEFLATE |
440 | extension |
441 | .Po if built with |
442 | .Em DEFLATE |
443 | support |
444 | .Pc |
445 | .Pq Em true \" default value |
446 | .It Ic use_oauth2 Ar boolean |
447 | .Pq Em optional |
448 | Use |
449 | .Em OAUTH2 |
450 | authentication. |
451 | Can only be used with |
452 | .Ic server_password_command |
453 | which should return a base64-encoded |
454 | .Em OAUTH2 |
455 | token ready to be passed to |
456 | .Em IMAP Ns |
457 | \&. |
458 | For help on setup with |
459 | .Em Gmail Ns |
460 | , see |
461 | .Em Gmail |
462 | section below. |
463 | .Pq Em false \" default value |
464 | .It Ic use_auth_anonymous Ar boolean |
465 | .Pq Em optional |
466 | Use |
467 | .Em AUTH=ANONYMOUS |
468 | extension for authentication. |
469 | .Pq Em false \" default value |
470 | .It Ic use_id Ar boolean |
471 | .Pq Em optional |
472 | Use |
473 | .Em ID |
474 | extension to retrieve server metadata, viewable at the account status page. |
475 | Enabling this does not send any information to the server. |
476 | .Pq Em false \" default value |
477 | .It Ic timeout Ar integer |
478 | .Pq Em optional |
479 | Timeout to use for server connections in seconds. |
480 | A timeout of |
481 | .Li 0 |
482 | seconds means there is no timeout. |
483 | .Pq Em 16 \" default value |
484 | .El |
485 | .Ss Gmail |
486 | .HorizontalRule |
487 | .Em Gmail |
488 | has non-standard |
489 | .Em IMAP |
490 | behaviors that need to be worked around. |
491 | .Ss Gmail - sending mail |
492 | .HorizontalRule |
493 | Option |
494 | .Ic store_sent_mail |
495 | should be disabled since |
496 | .Em Gmail |
497 | auto-saves sent mail by its own. |
498 | .Ss Gmail OAUTH2 |
499 | .HorizontalRule |
500 | To use |
501 | .Em OAUTH2 Ns |
502 | , you must go through a process to register your own private |
503 | .Qq application |
504 | with |
505 | .Em Google |
506 | that can use |
507 | .Em OAUTH2 |
508 | tokens, |
509 | and set the option |
510 | .Ic use_oauth2 |
511 | as |
512 | .Ql true |
513 | in the account configuration section. |
514 | For convenience in the |
515 | .Sy meli |
516 | repository under the |
517 | .Pa contrib/ |
518 | directory you can find a |
519 | .Sy python3 |
520 | file named |
521 | .Li oauth2.py |
522 | to generate and request the appropriate data to perform |
523 | .Em OAUTH2 |
524 | authentication. |
525 | .sp |
526 | Steps: |
527 | .Bl -dash -compact |
528 | .It |
529 | In |
530 | .Em Google API Ns |
531 | s, create a custom OAuth client ID and note down the Client ID and Client |
532 | Secret. |
533 | You may need to create a consent screen; follow the steps described in the |
534 | website. |
535 | .It |
536 | Run the |
537 | .Li oauth2.py |
538 | script as follows |
539 | .Pq after adjusting binary paths and credentials Ns |
540 | : |
541 | .sp |
542 | .Cm python3 oauth2.py --user=xxx@gmail.com --client_id=1038[...].apps.googleusercontent.com --client_secret=VWFn8LIKAMC-MsjBMhJeOplZ --generate_oauth2_token |
543 | and follow the instructions. |
544 | Note down the refresh token. |
545 | .It |
546 | In |
547 | .Ic server_password_command |
548 | enter a command like this |
549 | .Pq after adjusting binary paths and credentials Ns |
550 | : |
551 | .sp |
552 | .Cm TOKEN=$(python3 oauth2.py --user=xxx@gmail.com --quiet --client_id=1038[...].apps.googleusercontent.com --client_secret=VWFn8LIKAMC-MsjBMhJeOplZ --refresh_token=1/Yzm6MRy4q1xi7Dx2DuWXNgT6s37OrP_DW_IoyTum4YA) && python3 oauth2.py --user=xxx@gmail.com --generate_oauth2_string --quiet --access_token=$TOKEN |
553 | .It |
554 | On startup, |
555 | .Sy meli |
556 | should evaluate this command which if successful must only return a |
557 | .Em base64 Ns |
558 | -encoded token ready to be passed to |
559 | .Em IMAP. |
560 | .Pp |
561 | Your account section should look like this: |
562 | .Bd -literal |
563 | [accounts."gmail"] |
564 | root_mailbox = '[Gmail]' |
565 | format = "imap" |
566 | server_hostname='imap.gmail.com' |
567 | server_username="username@gmail.com" |
568 | use_oauth2 = true |
569 | server_password_command = "TOKEN=$(py...th2_string --quiet --access_token=$TOKEN" |
570 | server_port="993" |
571 | listing.index_style = "Conversations" |
572 | identity = "username@gmail.com" |
573 | display_name = "Name Name" |
574 | subscribed_mailboxes = ["*" ] |
575 | composing.store_sent_mail = false |
576 | composing.send_mail = { hostname = "smtp.gmail.com", port = 587, auth = { type = "xoauth2", token_command = "...", require_auth = true }, security = { type = "STARTTLS" } } |
577 | .Ed |
578 | .El |
579 | .Ss JMAP only |
580 | .HorizontalRule |
581 | .Em JMAP |
582 | specific options |
583 | .Bl -tag -width 36n |
584 | .It Ic server_url Ar String |
585 | example: |
586 | .Qq http://mail.example.com |
587 | .Qq http://mail.example.com:8080 |
588 | .Qq https://mail.example.com |
589 | .It Ic server_username Ar String |
590 | Server username |
591 | .It Ic server_password Ar String |
592 | Server password |
593 | .It Ic server_password_command Ar String |
594 | .Pq Em optional |
595 | Use instead of |
596 | .Ic server_password |
597 | .It Ic use_token Ar boolean |
598 | Authenticate using the API Bearer token method. |
599 | If enabled, the token value must be provided as the configured password. |
600 | .Pq Em false \" default value |
601 | .It Ic danger_accept_invalid_certs Ar boolean |
602 | .Pq Em optional |
603 | Do not validate |
604 | .Em TLS |
605 | certificates. |
606 | .Pq Em false \" default value |
607 | .It Ic timeout Ar integer |
608 | .Pq Em optional |
609 | Timeout to use for server connections in seconds. |
610 | A timeout of |
611 | .Li 0 |
612 | seconds means there is no timeout. |
613 | .Pq Em 16 \" default value |
614 | .El |
615 | .Ss mbox only |
616 | .HorizontalRule |
617 | .Em mbox |
618 | specific options: |
619 | .Bl -tag -width 36n |
620 | .It Ic prefer_mbox_type Ar String |
621 | .Pq Em optional |
622 | Prefer specific |
623 | .Em mbox |
624 | format reader for each message. |
625 | Default is |
626 | .Qq Li mboxcl2 |
627 | format. |
628 | If the preferred format fails, the message is retried with mboxrd and then if |
629 | it fails again there is a recover attempt, which discards the invalid message. |
630 | .sp |
631 | Valid values |
632 | .Bl -dash -compact |
633 | .It |
634 | .Ar auto |
635 | .It |
636 | .Ar mboxo |
637 | .It |
638 | .Ar mboxrd |
639 | .It |
640 | .Ar mboxcl |
641 | .It |
642 | .Ar mboxcl2 |
643 | .El |
644 | .Pq Em auto \" default value |
645 | .El |
646 | To set multiple mailboxes, you have to explicitly state the mailboxes you want |
647 | in the |
648 | .Ic mailboxes |
649 | field and set the |
650 | .Ar path |
651 | property to each of them. |
652 | Example: |
653 | .\" |
654 | .\" |
655 | .\" |
656 | .Bd -literal |
657 | [accounts.mbox] |
658 | format = "mbox" |
659 | mailboxes."Python mailing list" = { path = "~/.mail/python.mbox", subscribe = true, autoload = true } |
660 | .Ed |
661 | .\" |
662 | .\" |
663 | .\" |
664 | .Ss NNTP |
665 | .HorizontalRule |
666 | .Em NNTP |
667 | specific options |
668 | .Bl -tag -width 36n |
669 | .It Ic server_hostname Ar String |
670 | example: |
671 | .Qq nntp.example.com |
672 | .It Ic server_username Ar String |
673 | Server username |
674 | .It Ic server_password Ar String |
675 | Server password |
676 | .It Ic require_auth Ar boolean |
677 | .Pq Em optional |
678 | require authentication in every case |
679 | .Pq Em true \" default value |
680 | .It Ic use_tls Ar boolean |
681 | .Pq Em optional |
682 | Connect with |
683 | .Em TLS Ns |
684 | \&. |
685 | .Pq Em false \" default value |
686 | .It Ic server_port Ar number |
687 | .Pq Em optional |
688 | The port to connect to |
689 | .Pq Em 119 \" default value |
690 | .It Ic danger_accept_invalid_certs Ar boolean |
691 | .Pq Em optional |
692 | Do not validate |
693 | .Em TLS |
694 | certificates. |
695 | .Pq Em false \" default value |
696 | .It Ic store_flags_locally Ar boolean |
697 | .Pq Em optional |
698 | Store seen status locally in an |
699 | .Sy sqlite3 |
700 | database. |
701 | .Pq Em true \" default value |
702 | .El |
703 | .Pp |
704 | You have to explicitly state the groups you want to see in the |
705 | .Ic mailboxes |
706 | field. |
707 | Example: |
708 | .\" |
709 | .\" |
710 | .\" |
711 | .Bd -literal |
712 | [accounts.sicpm.mailboxes] |
713 | "sic.all" = {} |
714 | .Ed |
715 | .\" |
716 | .\" |
717 | .\" |
718 | .Pp |
719 | To submit articles directly to the |
720 | .Em NNTP |
721 | server, you must set the special value |
722 | .Em server_submission |
723 | in the |
724 | .Ic send_mail |
725 | field. |
726 | Example: |
727 | .\" |
728 | .\" |
729 | .\" |
730 | .Bd -literal |
731 | composing.send_mail = "server_submission" |
732 | .Ed |
733 | .\" |
734 | .\" |
735 | .\" |
736 | .Ss MAILBOXES |
737 | .HorizontalRule |
738 | .Bl -tag -width 36n |
739 | .It Ic alias Ar String |
740 | .Pq Em optional |
741 | Show a different name for this mailbox in the |
742 | .Em UI Ns |
743 | \&. |
744 | .It Ic autoload Ar boolean |
745 | .Pq Em optional |
746 | Load this mailbox on startup |
747 | .Pq Em true \" default value |
748 | .It Ic collapsed Ar boolean |
749 | .Pq Em optional |
750 | Collapse this mailbox subtree in menu. |
751 | .Pq Em false \" default value |
752 | .It Ic subscribe Ar boolean |
753 | .Pq Em optional |
754 | Watch this mailbox for updates. |
755 | .Pq Em true \" default value |
756 | .It Ic ignore Ar boolean |
757 | .Pq Em optional |
758 | Silently insert updates for this mailbox, if any. |
759 | .Pq Em false \" default value |
760 | .It Ic usage Ar boolean |
761 | .Pq Em optional |
762 | special usage of this mailbox. |
763 | Valid values are: |
764 | .Bl -dash -compact |
765 | .It |
766 | .Ar Normal |
767 | .Pq Em default |
768 | .It |
769 | .Ar Inbox |
770 | .It |
771 | .Ar Archive |
772 | .It |
773 | .Ar Drafts |
774 | .It |
775 | .Ar Flagged |
776 | .It |
777 | .Ar Junk |
778 | .It |
779 | .Ar Sent |
780 | .It |
781 | .Ar Trash |
782 | .El |
783 | otherwise usage is inferred from the mailbox title. |
784 | If for example your Sent folder is not named |
785 | .Qq Li Sent Ns |
786 | , you must explicitly set it. |
787 | .It Ic conf_override Ar boolean |
788 | .Pq Em optional |
789 | Override global settings for this mailbox. |
790 | Available sections to override are |
791 | .Em pager, notifications, shortcuts, composing |
792 | and the account options |
793 | .Em identity Ns |
794 | \&. |
795 | Example: |
796 | .\" |
797 | .\" |
798 | .\" |
799 | .Bd -literal |
800 | [accounts."imap.example.com".mailboxes] |
801 | "INBOX" = { index_style = "plain" } |
802 | "INBOX/Lists/devlist" = { autoload = false, pager = { filter = "pygmentize -l diff -f 256"} } |
803 | .Ed |
804 | .\" |
805 | .\" |
806 | .\" |
807 | .It Ic sort_order Ar unsigned integer |
808 | .Pq Em optional |
809 | Override sort order on the sidebar for this mailbox. |
810 | Example: |
811 | .\" |
812 | .\" |
813 | .\" |
814 | .Bd -literal |
815 | [accounts."imap.example.com".mailboxes] |
816 | "INBOX" = { index_style = "plain" } |
817 | "INBOX/Sent" = { sort_order = 0 } |
818 | "INBOX/Drafts" = { sort_order = 1 } |
819 | "INBOX/Lists" = { sort_order = 2 } |
820 | .Ed |
821 | .\" |
822 | .\" |
823 | .\" |
824 | .It Ic encoding Ar String |
825 | .Pq Em optional |
826 | Override the default |
827 | .Em UTF-8 |
828 | charset for the mailbox name. |
829 | Useful only for |
830 | .Em UTF-7 |
831 | mailboxes. |
832 | .Pq Em "utf7", "utf-7", "utf8", "utf-8" \" default value |
833 | .El |
834 | .\" |
835 | .\" |
836 | .\" |
837 | .\" |
838 | .\" |
839 | .Sh COMPOSING |
840 | .Ss Composing specific configuration settings |
841 | Default values are shown in parentheses. |
842 | .Bl -tag -width 36n |
843 | .It Ic send_mail Ar String|SmtpServerConf |
844 | Command to pipe new mail to |
845 | .Po |
846 | exit code must be |
847 | .Li 0 |
848 | for success |
849 | .Pc |
850 | or settings for an |
851 | .Em SMTP |
852 | server connection. |
853 | See section |
854 | .Sx SMTP Connections |
855 | for its fields. |
856 | .It Ic editor_command Ar String |
857 | Command to launch editor. |
858 | Can have arguments. |
859 | Draft filename is given as the last argument. |
860 | If it's missing, the environment variable |
861 | .Ev EDITOR |
862 | is looked up. |
863 | .It Ic embedded_pty Ar boolean |
864 | .Pq Em optional |
865 | Embedded editor within |
866 | .Sy meli Ns |
867 | \&. |
868 | Editor must be |
869 | .Sy xterm |
870 | compliant. |
871 | .Pq Em false \" default value |
872 | .It Ic format_flowed Ar boolean |
873 | .Pq Em optional |
874 | Set |
875 | .Li format=flowed |
876 | .Bq RFC3676 |
877 | in |
878 | .Li text/plain |
879 | attachments. |
880 | .Pq Em true \" default value |
881 | .It Ic insert_user_agent Ar boolean |
882 | .Pq Em optional |
883 | Add |
884 | .Sy meli |
885 | .Li User-Agent |
886 | header in new drafts. |
887 | .Pq Em true \" default value |
888 | .It Ic default_header_values Ar hash table String[String] |
889 | .Pq Em optional |
890 | Default header values used when creating a new draft. |
891 | .Pq Em {} \" default value |
892 | .It Ic wrap_header_preamble Ar Option<(String, String)> |
893 | .Pq Em optional |
894 | Wrap header pre-ample when editing a draft in an editor. |
895 | This allows you to write non-plain text email without the preamble creating |
896 | syntax errors. |
897 | They are stripped when you return from the editor. |
898 | The values should be a two element array of strings, a prefix and suffix. |
899 | This can be useful when for example you're writing Markdown; you can set the |
900 | value to |
901 | .Em ["<!--",\ "-->"] |
902 | which wraps the headers in an |
903 | .Em HTML |
904 | comment. |
905 | .Pq Em None \" default value |
906 | .It Ic store_sent_mail Ar boolean |
907 | .Pq Em optional |
908 | Store sent mail after successful submission. |
909 | This setting is meant to be disabled for non-standard behaviour in |
910 | .Em Gmail Ns |
911 | , which auto-saves sent mail on its own. |
912 | .Pq Em true \" default value |
913 | .It Ic attribution_format_string Ar String |
914 | .Pq Em optional |
915 | The attribution line appears above the quoted reply text. |
916 | The format specifiers for the replied address are: |
917 | .Bl -dash -compact |
918 | .It |
919 | .Li %+f |
920 | โ the sender's name and email address. |
921 | .It |
922 | .Li %+n |
923 | โ the sender's name (or email address, if no name is included). |
924 | .It |
925 | .Li %+a |
926 | โ the sender's email address. |
927 | .El |
928 | The format string is passed to |
929 | .Xr strftime 3 |
930 | with the replied envelope's date. |
931 | .Pq Em "On %a, %0e %b %Y %H:%M, %+f wrote:%n" \" default value |
932 | .It Ic attribution_use_posix_locale Ar boolean |
933 | .Pq Em optional |
934 | Whether the |
935 | .Xr strftime 3 |
936 | call for the attribution string uses the |
937 | .Em POSIX |
938 | locale instead of the user's active locale. |
939 | .Pq Em true \" default value |
940 | .It Ic forward_as_attachment Ar boolean or "ask" |
941 | .Pq Em optional |
942 | Forward emails as attachment? (Alternative is inline). |
943 | .Pq Em ask \" default value |
944 | .It Ic reply_prefix_list_to_strip Ar [String] |
945 | .Pq Em optional |
946 | Alternative lists of reply prefixes (etc. ["Re:", "RE:", ...]) to strip. |
947 | .Dl Em [Re:, RE:, Fwd:, Fw:, ๅๅค:, ๅ่ฆ:, SV:, Sv:, VS:, Antw:, Doorst:, VS:, VL:, REF:, TR:, TR:, AW:, WG:, ฮฮ :, ฮฯ:, ฮฑฯ:, ฮ ฮกฮ:, ฮ ฯฮธ:, ฯฯฮธ:, ฮฃฮงฮฮค:, ฮฃฯฮตฯ:, ฯฯฮตฯ:, ฮ ฮกฮ:, ฮ ฯฮธ:, ฯฯฮธ:, Vรก:, Tovรกbbรญtรกs:, R:, I:, RIF:, FS:, BLS:, TRS:, VS:, VB:, RV:, RES:, Res, ENC:, Odp:, PD:, YNT:, ฤฐLT:, ATB:, YML:] \" default value |
948 | .It Ic reply_prefix Ar String |
949 | .Pq Em optional |
950 | The prefix to use in reply subjects. |
951 | The default prefix is |
952 | .Ns Ql Re: Ns |
953 | \&. |
954 | .Pq Ql Re: \" default value |
955 | .Pp |
956 | RFC 2822, "Internet Message Format" has this to say on the matter: |
957 | .\" |
958 | .\" |
959 | .\" |
960 | .Bd -literal -offset indent -compact |
961 | When used in a reply, the field body MAY start with the string "Re: " (from |
962 | the Latin "res", in the matter of) followed by the contents of the "Subject:" |
963 | field body of the original message. |
964 | .Ed |
965 | .\" |
966 | .\" |
967 | .\" |
968 | .It Ic custom_compose_hooks Ar [{ name = String, command = String }] |
969 | .Pq Em optional |
970 | Custom compose-hooks that run shell scripts. |
971 | compose-hooks run before submitting an e-mail. |
972 | They perform draft validation and/or transformations. |
973 | If a custom hook exits with an error status or prints output to stdout and |
974 | stderr, it will show up in the UI as a notification. |
975 | .sp |
976 | Example: |
977 | .\" |
978 | .\" |
979 | .\" |
980 | .Bd -literal |
981 | [composing] |
982 | editor_cmd = '~/.local/bin/vim +/^$' |
983 | embed = true |
984 | custom_compose_hooks = [ { name ="spellcheck", command="aspell --mode email --dont-suggest --ignore-case list" }] |
985 | .Ed |
986 | .\" |
987 | .\" |
988 | .\" |
989 | .It Ic disabled_compose_hooks Ar [String] |
990 | .Pq Em optional |
991 | Disabled compose-hooks. |
992 | compose-hooks run before submitting an e-mail. |
993 | They perform draft validation and/or transformations. |
994 | If a hook encounters an error or warning, it will show up as a notification. |
995 | The currently available hooks are: |
996 | .Bl -dash -compact |
997 | .It |
998 | .Ic past-date-warn |
999 | โ Warn if |
1000 | .Li Date |
1001 | header value is far in the past or future. |
1002 | .It |
1003 | .Ic important-header-warn |
1004 | โ Warn if important headers |
1005 | .Po |
1006 | .Li From Ns |
1007 | , |
1008 | .Li Date Ns |
1009 | , |
1010 | .Li To Ns |
1011 | , |
1012 | .Li Cc Ns |
1013 | , |
1014 | .Li Bcc |
1015 | .Pc |
1016 | are missing or invalid. |
1017 | .It |
1018 | .Ic missing-attachment-warn |
1019 | โ Warn if |
1020 | .Li Subject Ns |
1021 | or draft body mention attachments but they are missing. |
1022 | .It |
1023 | .Ic empty-draft-warn |
1024 | โ Warn if draft has no subject and no body. |
1025 | .El |
1026 | .El |
1027 | .\" |
1028 | .\" |
1029 | .\" |
1030 | .\" |
1031 | .\" |
1032 | .Sh SHORTCUTS |
1033 | .Ss Values corresponding to keyboard keys, keycodes |
1034 | Shortcuts can take the following values: |
1035 | .sp |
1036 | .Bl -dash -compact |
1037 | .It |
1038 | .Em Backspace |
1039 | .It |
1040 | .Em Left |
1041 | .It |
1042 | .Em Right |
1043 | .It |
1044 | .Em Up |
1045 | .It |
1046 | .Em Down |
1047 | .It |
1048 | .Em Home |
1049 | .It |
1050 | .Em End |
1051 | .It |
1052 | .Em PageUp |
1053 | .It |
1054 | .Em PageDown |
1055 | .It |
1056 | .Em Delete |
1057 | .It |
1058 | .Em Insert |
1059 | .It |
1060 | .Em Enter |
1061 | .It |
1062 | .Em Tab |
1063 | .It |
1064 | .Em Esc |
1065 | .It |
1066 | .Em F1..F12 |
1067 | .It |
1068 | .Em M-char |
1069 | .It |
1070 | .Em C-char |
1071 | .It |
1072 | .Em char |
1073 | .El |
1074 | .sp |
1075 | Where |
1076 | .Em char |
1077 | is a single character string, maximum 4 bytes long, like the corresponding type |
1078 | in Rust. |
1079 | .Pp |
1080 | In the next subsection, you will find lists for each shortcut category. |
1081 | The headings before each list indicate the map key of the shortcut list. |
1082 | For example for the first list titled |
1083 | .Em general |
1084 | the configuration is typed as follows: |
1085 | .\" |
1086 | .\" |
1087 | .\" |
1088 | .Bd -literal |
1089 | [shortcuts.general] |
1090 | next_tab = 'T' |
1091 | .Ed |
1092 | .\" |
1093 | .\" |
1094 | .\" |
1095 | .sp |
1096 | and for |
1097 | .Em listing Ns |
1098 | : |
1099 | .\" |
1100 | .\" |
1101 | .\" |
1102 | .Bd -literal |
1103 | [shortcuts.listing] |
1104 | open_entry = "Enter" |
1105 | exit_entry = 'i' |
1106 | .Ed |
1107 | .\" |
1108 | .\" |
1109 | .\" |
1110 | .sp |
1111 | .Pp |
1112 | .Em commands |
1113 | .sp |
1114 | In addition, each shortcuts section supports a TOML array of commands to |
1115 | associate a key to an array of |
1116 | .Em COMMAND |
1117 | mode commands. |
1118 | .sp |
1119 | .\" |
1120 | .\" |
1121 | .\" |
1122 | .Bd -literal |
1123 | [shortcuts.listing] |
1124 | commands = [ { command = [ "tag remove trash", "flag unset trash" ], shortcut = "D" }, |
1125 | { command = [ "tag add trash", "flag set trash" ], shortcut = "d" } ] |
1126 | .Ed |
1127 | .\" |
1128 | .\" |
1129 | .\" |
1130 | .Ss Shortcut configuration settings |
1131 | .HorizontalRule |
1132 | Default values are shown in parentheses. |
1133 | .sp |
1134 | .Em general |
1135 | .Bl -tag -width 36n |
1136 | .It Ic toggle_help |
1137 | Toggle help and shortcuts view. |
1138 | .Pq Em \&? \" default value |
1139 | .It Ic enter_command_mode |
1140 | Enter |
1141 | .Em COMMAND |
1142 | mode. |
1143 | .Pq Em \&: \" default value |
1144 | .It Ic quit |
1145 | Quit meli. |
1146 | .Pq Em q \" default value |
1147 | .It Ic go_to_tab |
1148 | Go to the |
1149 | .Em n Ns |
1150 | th tab |
1151 | .Pq Em M-n |
1152 | .It Ic next_tab |
1153 | Go to the next tab. |
1154 | .Pq Em T \" default value |
1155 | .It Ic scroll_right |
1156 | Generic scroll right (catch-all setting) |
1157 | .Pq Em l \" default value |
1158 | .It Ic scroll_left |
1159 | Generic scroll left (catch-all setting) |
1160 | .Pq Em h \" default value |
1161 | .It Ic scroll_up |
1162 | Generic scroll up (catch-all setting) |
1163 | .Pq Em k \" default value |
1164 | .It Ic scroll_down |
1165 | Generic scroll down (catch-all setting) |
1166 | .Pq Em j \" default value |
1167 | .It Ic next_page |
1168 | Go to next page. |
1169 | (catch-all setting) |
1170 | .Pq Em PageDown \" default value |
1171 | .It Ic prev_page |
1172 | Go to previous page. |
1173 | (catch-all setting) |
1174 | .Pq Em PageUp \" default value |
1175 | .It Ic home_page |
1176 | Go to first page. |
1177 | (catch-all setting) |
1178 | .Pq Em Home \" default value |
1179 | .It Ic end_page |
1180 | Go to last page. (catch-all setting) |
1181 | .Pq Em End \" default value |
1182 | .It Ic open_entry |
1183 | Open list entry. (catch-all setting) |
1184 | .Pq Em Enter \" default value |
1185 | .It Ic info_message_next |
1186 | Show next info message, if any. |
1187 | .Pq Em > \" default value |
1188 | .It Ic info_message_previous |
1189 | Show previous info message, if any. |
1190 | .Pq Em < \" default value |
1191 | .It Ic focus_in_text_field |
1192 | Focus on a text field. |
1193 | .Pq Em Enter \" default value |
1194 | .It Ic next_search_result |
1195 | Scroll to next search result. |
1196 | .Pq Em n \" default value |
1197 | .It Ic previous_search_result |
1198 | Scroll to previous search result. |
1199 | .Pq Em N |
1200 | .El |
1201 | .sp |
1202 | .Em listing |
1203 | .Bl -tag -width 36n |
1204 | .It Ic scroll_up |
1205 | Scroll up list. |
1206 | .Pq Em k \" default value |
1207 | .It Ic scroll_down |
1208 | Scroll down list. |
1209 | .Pq Em j \" default value |
1210 | .It Ic next_page |
1211 | Go to next page. |
1212 | .Pq Em PageDown \" default value |
1213 | .It Ic prev_page |
1214 | Go to previous page. |
1215 | .Pq Em PageUp \" default value |
1216 | .It Ic new_mail |
1217 | Start new mail draft in new tab. |
1218 | .Pq Em m \" default value |
1219 | .It Ic next_account |
1220 | Go to next account. |
1221 | .Pq Em H \" default value |
1222 | .It Ic prev_account |
1223 | Go to previous account. |
1224 | .Pq Em L \" default value |
1225 | .It Ic next_mailbox |
1226 | Go to next mailbox. |
1227 | .Pq Em J \" default value |
1228 | .It Ic prev_mailbox |
1229 | Go to previous mailbox. |
1230 | .Pq Em K \" default value |
1231 | .It Ic open_mailbox |
1232 | Open selected mailbox |
1233 | .Pq Em Enter \" default value |
1234 | .It Ic toggle_mailbox_collapse |
1235 | Toggle mailbox visibility in menu. |
1236 | .Pq Em Space \" default value |
1237 | .It Ic search |
1238 | Search within list of e-mails. |
1239 | .Pq Em / \" default value |
1240 | .It Ic refresh |
1241 | Manually request a mailbox refresh. |
1242 | .Pq Em F5 \" default value |
1243 | .It Ic set_seen |
1244 | Set thread as seen. |
1245 | .Pq Em n \" default value |
1246 | .It Ic send_to_trash |
1247 | Send entry to trash folder. |
1248 | .Pq Em D \" default value |
1249 | .It Ic union_modifier |
1250 | Union modifier. |
1251 | .Pq Em C-u \" default value |
1252 | .It Ic diff_modifier |
1253 | Difference modifier. |
1254 | .Pq Em C-d \" default value |
1255 | .It Ic intersection_modifier |
1256 | Intersection modifier. |
1257 | .Pq Em i \" default value |
1258 | .It Ic select_entry |
1259 | Select thread entry. |
1260 | .Pq Em v \" default value |
1261 | .It Ic increase_sidebar |
1262 | Increase sidebar width. |
1263 | .Pq Em C-f \" default value |
1264 | .It Ic decrease_sidebar |
1265 | Decrease sidebar width. |
1266 | .Pq Em C-d \" default value |
1267 | .It Ic next_entry |
1268 | When reading a mail item, change focus on next entry according to the current |
1269 | sorting. |
1270 | .Pq Em C-n \" default value |
1271 | .It Ic previous_entry |
1272 | When reading a mail item, change focus on previous entry according to the |
1273 | current sorting. |
1274 | .Pq Em C-p \" default value |
1275 | .It Ic toggle_menu_visibility |
1276 | Toggle visibility of side menu in mail list. |
1277 | .Pq Em \(ga \" default value |
1278 | .It Ic focus_left |
1279 | Switch focus on the left. |
1280 | .Pq Em Left \" default value |
1281 | .It Ic focus_right |
1282 | Switch focus on the right. |
1283 | .Pq Em Right \" default value |
1284 | .It Ic exit_entry |
1285 | Exit e-mail entry. |
1286 | .Pq Em i \" default value |
1287 | .It Ic open_entry |
1288 | Open e-mail entry. |
1289 | .Pq Em Enter \" default value |
1290 | .El |
1291 | .sp |
1292 | .Em pager |
1293 | .Bl -tag -width 36n |
1294 | .It Ic page_down |
1295 | Go to next page. |
1296 | .Pq Em PageDown \" default value |
1297 | .It Ic page_up |
1298 | Go to previous page. |
1299 | .Pq Em PageUp \" default value |
1300 | .It Ic scroll_down |
1301 | Scroll down pager. |
1302 | .Pq Em j \" default value |
1303 | .It Ic scroll_up |
1304 | Scroll up pager. |
1305 | .Pq Em k \" default value |
1306 | .It Ic select_filter |
1307 | Select content filter. |
1308 | .Pq Em f \" default value |
1309 | .Pp |
1310 | See also |
1311 | .Ic named_filters |
1312 | setting. |
1313 | .El |
1314 | .sp |
1315 | .Em contact-list |
1316 | .Bl -tag -width 36n |
1317 | .It Ic scroll_up |
1318 | Scroll up list. |
1319 | .Pq Em k \" default value |
1320 | .It Ic scroll_down |
1321 | Scroll down list. |
1322 | .Pq Em j \" default value |
1323 | .It Ic create_contact |
1324 | Create new contact. |
1325 | .Pq Em c \" default value |
1326 | .It Ic edit_contact |
1327 | Edit contact under cursor. |
1328 | .Pq Em e \" default value |
1329 | .It Ic export_contact |
1330 | Export contact under cursor to .vcf. |
1331 | .Pq Em E \" default value |
1332 | .It Ic delete_contact |
1333 | Delete contact under cursor. |
1334 | .Pq Em d \" default value |
1335 | .It Ic mail_contact |
1336 | Mail contact under cursor. |
1337 | .Pq Em m \" default value |
1338 | .It Ic next_account |
1339 | Go to next account. |
1340 | .Pq Em H \" default value |
1341 | .It Ic prev_account |
1342 | Go to previous account. |
1343 | .Pq Em L \" default value |
1344 | .It Ic toggle_menu_visibility |
1345 | Toggle visibility of side menu in mail list. |
1346 | .Pq Em \(ga \" default value |
1347 | .El |
1348 | .sp |
1349 | .sp |
1350 | .Em composing |
1351 | .Bl -tag -width 36n |
1352 | .It Ic edit |
1353 | Edit mail. |
1354 | .Pq Em e \" default value |
1355 | .It Ic send_mail |
1356 | Deliver draft to mailer |
1357 | .Pq Em s \" default value |
1358 | .It Ic scroll_up |
1359 | Change field focus. |
1360 | .Pq Em k \" default value |
1361 | .It Ic scroll_down |
1362 | Change field focus. |
1363 | .Pq Em j \" default value |
1364 | .El |
1365 | .sp |
1366 | .Em envelope-view |
1367 | .Pp |
1368 | To select an attachment, type its index (you will see the typed result in the |
1369 | command buffer on the bottom right of the status line), then issue the |
1370 | corresponding command. |
1371 | .Bl -tag -width 36n |
1372 | .It Ic add_addresses_to_contacts Ns |
1373 | Select addresses from envelope to add to contacts. |
1374 | .Pq Em c \" default value |
1375 | .It Ic edit |
1376 | Open envelope in composer. |
1377 | .Pq Em e \" default value |
1378 | .It Ic go_to_url |
1379 | Go to url of given index (with the command |
1380 | .Ic url_launcher |
1381 | setting in |
1382 | .Sx PAGER |
1383 | section) |
1384 | .Pq Em g \" default value |
1385 | .It Ic open_attachment |
1386 | Opens selected attachment with |
1387 | .Cm xdg-open |
1388 | .Pq Em a \" default value |
1389 | .It Ic open_mailcap |
1390 | Opens selected attachment according to its mailcap entry. |
1391 | See |
1392 | .Xr meli 1 FILES |
1393 | for the mailcap file locations. |
1394 | .Pq Em m \" default value |
1395 | .It Ic open_html |
1396 | Opens html attachment in the default browser. |
1397 | .Pq Em v \" default value |
1398 | .It Ic reply |
1399 | Reply to envelope. |
1400 | .Pq Em R \" default value |
1401 | .It Ic reply_to_author |
1402 | Reply to author. |
1403 | .Pq Em C-r \" default value |
1404 | .It Ic reply_to_all |
1405 | Reply to all/Reply to list/Follow up. |
1406 | .Pq Em C-g \" default value |
1407 | .It Ic forward |
1408 | Forward email. |
1409 | .Pq Em C-f \" default value |
1410 | .It Ic return_to_normal_view |
1411 | Return to envelope if viewing raw source or attachment. |
1412 | .Pq Em r \" default value |
1413 | .It Ic toggle_expand_headers |
1414 | Expand extra headers (References and others) |
1415 | .Pq Em h \" default value |
1416 | .It Ic toggle_url_mode |
1417 | Toggles url open mode. |
1418 | When active, it prepends an index next to each url that you can select by |
1419 | typing the index and open by issuing |
1420 | .Ic go_to_url |
1421 | .Pq Em u \" default value |
1422 | .It Ic view_raw_source |
1423 | View raw envelope source in a pager. |
1424 | .Pq Em M-r \" default value |
1425 | .It Ic change_charset |
1426 | Force attachment charset for decoding. |
1427 | .Pq Em d \" default value |
1428 | .El |
1429 | .sp |
1430 | .Em thread-view |
1431 | .Bl -tag -width 36n |
1432 | .It Ic scroll_up |
1433 | Scroll up list. |
1434 | .Pq Em k \" default value |
1435 | .It Ic scroll_down |
1436 | Scroll down list. |
1437 | .Pq Em j \" default value |
1438 | .It Ic collapse_subtree |
1439 | collapse thread branches. |
1440 | .Pq Em h \" default value |
1441 | .It Ic next_page |
1442 | Go to next page. |
1443 | .Pq Em PageDown \" default value |
1444 | .It Ic prev_page |
1445 | Go to previous page. |
1446 | .Pq Em PageUp \" default value |
1447 | .It Ic reverse_thread_order |
1448 | reverse thread order. |
1449 | .Pq Em C-r \" default value |
1450 | .It Ic toggle_mailview |
1451 | toggle mail view visibility. |
1452 | .Pq Em p \" default value |
1453 | .It Ic toggle_threadview |
1454 | toggle thread view visibility. |
1455 | .Pq Em t \" default value |
1456 | .It Ic toggle_layout |
1457 | Toggle between horizontal and vertical layout. |
1458 | .Pq Em Space \" default value |
1459 | .El |
1460 | .sp |
1461 | .\" |
1462 | .\" |
1463 | .\" |
1464 | .\" |
1465 | .\" |
1466 | .Sh NOTIFICATIONS |
1467 | .Ss Notification configuration settings |
1468 | Default values are shown in parentheses. |
1469 | .Bl -tag -width 36n |
1470 | .It Ic enable Ar boolean |
1471 | Enable notifications. |
1472 | .Pq Em true \" default value |
1473 | .It Ic script Ar String |
1474 | .Pq Em optional |
1475 | Script to pass notifications to, with title as 1st arg and body as 2nd |
1476 | .Pq Em none \" default value |
1477 | .It Ic new_mail_script Ar String |
1478 | .Pq Em optional |
1479 | A command to pipe new mail notifications through (preferred over |
1480 | .Ic script Ns |
1481 | ), with title as 1st arg and body as 2nd. |
1482 | .Pq Em none \" default value |
1483 | .It Ic xbiff_file_path Ar String |
1484 | .Pq Em optional |
1485 | File that gets its size updated when new mail arrives. |
1486 | .Pq Em none |
1487 | .It Ic play_sound Ar boolean \" default value |
1488 | .Pq Em optional |
1489 | Play theme sound in notifications if possible. |
1490 | .Pq Em false |
1491 | .It Ic sound_file Ar String \" default value |
1492 | .Pq Em optional |
1493 | Play sound file in notifications if possible. |
1494 | .Pq Em none \" default value |
1495 | .El |
1496 | .\" |
1497 | .\" |
1498 | .\" |
1499 | .\" |
1500 | .\" |
1501 | .Sh PAGER |
1502 | .Ss Pager (viewing text) configuration settings |
1503 | Default values are shown in parentheses. |
1504 | .Bl -tag -width 36n |
1505 | .It Ic sticky_headers Ar boolean |
1506 | .Pq Em optional |
1507 | Always show headers when scrolling. |
1508 | .Pq Em false \" default value |
1509 | .It Ic html_filter Ar String |
1510 | .Pq Em optional |
1511 | Pipe html attachments through this filter before display |
1512 | .Pq Em none \" default value |
1513 | .It Ic html_open Ar String |
1514 | .Pq Em optional |
1515 | A command to open html files. |
1516 | .Pq Em none \" default value |
1517 | .It Ic filter Ar String |
1518 | .Pq Em optional |
1519 | A command to pipe mail output through for viewing in pager. |
1520 | .It Ic named_filters Ar String[String] |
1521 | .Pq Em optional |
1522 | Named filter commands to use at will. |
1523 | .Pq Em empty \" default value |
1524 | .Pp |
1525 | Show menu with an empty |
1526 | .Cm filter |
1527 | command. |
1528 | Example: |
1529 | .Bd -literal |
1530 | [pager] |
1531 | named_filters = { diff = "pygmentize -l diff -f 256", par = "par 72" } |
1532 | .Ed |
1533 | .It Ic format_flowed Ar boolean |
1534 | .Pq Em optional |
1535 | Respect format=flowed |
1536 | .Pq Em true \" default value |
1537 | .It Ic split_long_lines Ar boolean |
1538 | .Pq Em optional |
1539 | Split long lines that would overflow on the x axis. |
1540 | .Pq Em true \" default value |
1541 | .It Ic minimum_width Ar num |
1542 | .Pq Em optional |
1543 | Minimum text width in columns. |
1544 | .Pq Em 80 \" default value |
1545 | .It Ic auto_choose_multipart_alternative Ar boolean |
1546 | .Pq Em optional |
1547 | Choose |
1548 | .Li text/html |
1549 | alternative if |
1550 | .Li text/plain |
1551 | is empty in |
1552 | .Li multipart/alternative |
1553 | attachments. |
1554 | .Pq Em true \" default value |
1555 | .It Ic show_date_in_my_timezone Ar boolean |
1556 | .Pq Em optional |
1557 | Show |
1558 | .Li Date Ns |
1559 | : in local timezone |
1560 | .Pq Em true \" default value |
1561 | .It Ic url_launcher Ar String |
1562 | .Pq Em optional |
1563 | A command to launch URLs with. |
1564 | The URL will be given as the first argument of the command. |
1565 | .Pq Em xdg-open \" default value |
1566 | .It Ic show_extra_headers Ar [String] |
1567 | .Pq Em optional |
1568 | Extra headers to display, if present, in the default header preamble of the |
1569 | pager. |
1570 | .Pq Em empty \" default value |
1571 | .Pp |
1572 | This setting is useful especially when used per-folder or per-account. |
1573 | For example, if you use |
1574 | .Sy rss2email |
1575 | .Pq See Xr r2e 1 |
1576 | the e-mail you will receive will have the |
1577 | .Sy X-RSS-Feed |
1578 | header by default. |
1579 | You can show them only in the folder where you keep your feed items: |
1580 | .Pp |
1581 | .\" |
1582 | .\" |
1583 | .\" |
1584 | .Bd -literal -compact |
1585 | [accounts."personal".mailboxes] |
1586 | INBOX = {} |
1587 | "INBOX/Sent" = { sort_order=0 } |
1588 | "INBOX/Feeds" = { pager.show_extra_headers = ["X-RSS-Feed"] } |
1589 | .Ed |
1590 | .\" |
1591 | .\" |
1592 | .\" |
1593 | .El |
1594 | .\" |
1595 | .\" |
1596 | .\" |
1597 | .\" |
1598 | .\" |
1599 | .Sh LISTING |
1600 | .Ss Listing (lists of e-mail entries in a mailbox) configuration settings |
1601 | Default values are shown in parentheses. |
1602 | .Bl -tag -width 36n |
1603 | .It Ic show_menu_scrollbar Ar boolean |
1604 | .Pq Em optional |
1605 | Show auto-hiding scrollbar in accounts sidebar menu. |
1606 | .Pq Em true \" default value |
1607 | .It Ic datetime_fmt Ar String |
1608 | .Pq Em optional |
1609 | Datetime formatting passed verbatim to |
1610 | .Xr strftime 3 Ns |
1611 | \&. |
1612 | .Pq Em \&%Y-\&%m-\&%d \&%T \" default value |
1613 | .It Ic recent_dates Ar Boolean |
1614 | .Pq Em optional |
1615 | Show recent dates as |
1616 | .Ns Ql X {minutes,hours,days} ago |
1617 | .Ns , up to 7 days. |
1618 | .Pq Em true \" default value |
1619 | .It Ic filter Ar Query |
1620 | .Pq Em optional |
1621 | Show only envelopes matching this query. |
1622 | .Po |
1623 | For query syntax see |
1624 | .Xr meli 1 QUERY ABNF SYNTAX |
1625 | .Pc |
1626 | .Pq Em None \" default value |
1627 | .Pp |
1628 | Example: |
1629 | .\" |
1630 | .\" |
1631 | .\" |
1632 | .Bd -literal |
1633 | filter = "not flags:seen" # show only unseen messages |
1634 | .Ed |
1635 | .\" |
1636 | .\" |
1637 | .\" |
1638 | .It Ic index_style Ar String |
1639 | Sets the way mailboxes are displayed. |
1640 | .TS |
1641 | allbox tab(:); |
1642 | lb l. |
1643 | conversations:shows one entry per thread |
1644 | compact:shows one row per thread |
1645 | threaded:shows threads as a tree structure |
1646 | plain:shows one row per mail, regardless of threading |
1647 | .TE |
1648 | .It Ic sidebar_mailbox_tree_has_sibling Ar String |
1649 | .Pq Em optional |
1650 | Sets the string to print in the mailbox tree for a level where its root has a |
1651 | sibling. |
1652 | See example below for a clear explanation and examples. |
1653 | .It Ic sidebar_mailbox_tree_no_sibling Ar String |
1654 | .Pq Em optional |
1655 | Sets the string to print in the mailbox tree for a level where its root has no |
1656 | sibling. |
1657 | .It Ic sidebar_mailbox_tree_has_sibling_leaf Ar String |
1658 | .Pq Em optional |
1659 | Sets the string to print in the mailbox tree for a leaf level where its root |
1660 | has a sibling. |
1661 | .It Ic sidebar_mailbox_tree_no_sibling_leaf Ar String |
1662 | .Pq Em optional |
1663 | Sets the string to print in the mailbox tree for a leaf level where its root |
1664 | has no sibling. |
1665 | .It Ic sidebar_divider Ar char |
1666 | .Pq Em optional |
1667 | Sets the character to print as the divider between the accounts list and the |
1668 | message list. |
1669 | .It Ic sidebar_ratio Ar Integer |
1670 | .Pq Em optional |
1671 | This is the width of the right container to the entire screen width. |
1672 | .Pq Em 90 \" default value |
1673 | .It Ic unseen_flag Ar Option<String> |
1674 | Flag to show if thread entry contains unseen mail. |
1675 | .Pq Em "โ" \" default value |
1676 | .It Ic thread_snoozed_flag Ar Option<String> |
1677 | Flag to show if thread has been snoozed. |
1678 | .LiteralStringValueRenders ๐ค\e\uu{FE0E} ๐ค๏ธ \" default value |
1679 | .It Ic selected_flag Ar Option<String> |
1680 | Flag to show if thread entry has been selected. |
1681 | .LiteralStringValueRenders โ๏ธโ\e\uu{2007} โ๏ธโ |
1682 | .It Ic attachment_flag Ar Option<String> |
1683 | Flag to show if thread entry contains attachments. |
1684 | .LiteralStringValueRenders ๐\e\uu{FE0E} ๐๏ธ \" default value |
1685 | .It Ic highlight_self_flag Ar Option<String> |
1686 | Flag to show if any thread entry contains your address as a receiver. |
1687 | Useful to make mailing list threads that CC you stand out. |
1688 | .Pq Em "โธ" \" default value |
1689 | .It Ic highlight_self Ar boolean |
1690 | Show |
1691 | .Ic highlight_self_flag |
1692 | or not. |
1693 | .Pq Em false \" default value |
1694 | .It Ic thread_subject_pack Ar boolean |
1695 | Should threads with differentiating Subjects show a list of those subjects on |
1696 | the entry title? |
1697 | .Pq Em true \" default value |
1698 | .It Ic threaded_repeat_identical_from_values Ar boolean |
1699 | In threaded listing style, repeat identical From column values within a thread. |
1700 | Not repeating adds empty space in the From column which might result in less |
1701 | visual clutter. |
1702 | .Pq Em false \" default value |
1703 | .It Ic relative_menu_indices Ar boolean |
1704 | Show relative indices in menu mailboxes to quickly help with jumping to them. |
1705 | .Pq Em true \" default value |
1706 | .It Ic relative_list_indices Ar boolean |
1707 | Show relative indices in listings to quickly help with jumping to them. |
1708 | .Pq Em true \" default value |
1709 | .It Ic hide_sidebar_on_launch Ar boolean |
1710 | Start app with sidebar hidden. |
1711 | .Pq Em false \" default value |
1712 | .It Ic mail_view_divider Ar char |
1713 | Character to show in the divider space between mail view and listing. |
1714 | .Pq Em ' ' \" default value |
1715 | .It Ic thread_layout Ar "auto" | "vertical" | "horizontal" |
1716 | Force specific layout in thread view. |
1717 | The layout can also be toggled at runtime with the |
1718 | .Li listing.toggle_layout |
1719 | shortcut. |
1720 | .Pq Em "auto" |
1721 | .El |
1722 | .Ss Examples of sidebar mailbox tree customization |
1723 | .HorizontalRule |
1724 | The default values |
1725 | .sp |
1726 | .\" |
1727 | .\" |
1728 | .\" |
1729 | .Bd -literal |
1730 | has_sibling = " " |
1731 | no_sibling = " "; |
1732 | has_sibling_leaf = " " |
1733 | no_sibling_leaf = " " |
1734 | .Ed |
1735 | .\" |
1736 | .\" |
1737 | .\" |
1738 | .sp |
1739 | render a mailbox tree like the following: |
1740 | .sp |
1741 | .\" |
1742 | .\" |
1743 | .\" |
1744 | .Bd -literal |
1745 | 0 Inbox 3 |
1746 | 1 Archive |
1747 | 2 Drafts |
1748 | 3 Lists |
1749 | 4 example-list-a |
1750 | 5 example-list-b |
1751 | 6 Sent |
1752 | 7 Spam |
1753 | 8 Trash |
1754 | .Ed |
1755 | .\" |
1756 | .\" |
1757 | .\" |
1758 | .sp |
1759 | Other possible trees: |
1760 | .sp |
1761 | .\" |
1762 | .\" |
1763 | .\" |
1764 | .Bd -literal |
1765 | has_sibling = " โ" |
1766 | no_sibling = " " |
1767 | has_sibling_leaf = " โฃโ" |
1768 | no_sibling_leaf = " โโ" |
1769 | .Ed |
1770 | .\" |
1771 | .\" |
1772 | .\" |
1773 | .sp |
1774 | .\" |
1775 | .\" |
1776 | .\" |
1777 | .Bd -literal |
1778 | 0 Inbox 3 |
1779 | 1 โฃโArchive |
1780 | 2 โฃโDrafts |
1781 | 3 โฃโLists |
1782 | 4 โ โฃโexample-list-a |
1783 | 5 โ โโexample-list-b |
1784 | 6 โฃโSent |
1785 | 7 โฃโSpam |
1786 | 8 โโTrash |
1787 | .Ed |
1788 | .\" |
1789 | .\" |
1790 | .\" |
1791 | .sp |
1792 | A completely ASCII one: |
1793 | .sp |
1794 | .\" |
1795 | .\" |
1796 | .\" |
1797 | .Bd -literal |
1798 | has_sibling = " |" |
1799 | no_sibling = " " |
1800 | has_sibling_leaf = " |\\_" |
1801 | no_sibling_leaf = " \\_" |
1802 | .Ed |
1803 | .\" |
1804 | .\" |
1805 | .\" |
1806 | .sp |
1807 | .\" |
1808 | .\" |
1809 | .\" |
1810 | .Bd -literal |
1811 | 0 Inbox 3 |
1812 | 1 |\\_Archive |
1813 | 2 |\\_Drafts |
1814 | 3 |\\_Lists |
1815 | 4 | |\\_example-list-a |
1816 | 5 | \\_example-list-b |
1817 | 6 |\\_Sent |
1818 | 7 |\\_Spam |
1819 | 8 \\_Trash |
1820 | .Ed |
1821 | .\" |
1822 | .\" |
1823 | .\" |
1824 | .sp |
1825 | .\" |
1826 | .\" |
1827 | .\" |
1828 | .\" |
1829 | .\" |
1830 | .Sh TAGS |
1831 | .Ss Tags (e-mail metadata in backends that support them) configuration settings |
1832 | Default values are shown in parentheses. |
1833 | .Bl -tag -width 36n |
1834 | .It Ic colours Ar hash table String[Color] |
1835 | .Pq Em optional |
1836 | Set UI colors for tags |
1837 | .It Ic ignore_tags Ar Array String |
1838 | .Pq Em optional |
1839 | Hide tags (not the tagged messages themselves) |
1840 | .El |
1841 | .sp |
1842 | Example: |
1843 | .sp |
1844 | .\" |
1845 | .\" |
1846 | .\" |
1847 | .Bd -literal |
1848 | [tags] |
1849 | # valid inputs: #HHHHHH, #ABC -> #AABBCC, XTERM_NAME, 0-255 byte |
1850 | colors = { signed="#Ff6600", replied="DeepSkyBlue4", draft="#f00", replied="8" } |
1851 | [accounts.dummy] |
1852 | \&... |
1853 | [accounts.dummy.mailboxes] |
1854 | # per mailbox override: |
1855 | "INBOX" = { tags.ignore_tags=["inbox", ] } |
1856 | .Ed |
1857 | .\" |
1858 | .\" |
1859 | .\" |
1860 | .\" |
1861 | .\" |
1862 | .Sh PGP |
1863 | Default values are shown in parentheses. |
1864 | .Bl -tag -width 36n |
1865 | .\" #[serde(default = "true_val", alias = "auto-verify-signatures")] |
1866 | .\" pub auto_verify_signatures: bool, |
1867 | .It Ic auto_verify_signatures Ar boolean |
1868 | Auto verify signed e-mail according to RFC3156 |
1869 | .Pq Em true \" default value |
1870 | .\" #[serde(default = "true_val", alias = "auto-decrypt")] |
1871 | .\" pub auto_decrypt: bool, |
1872 | .It Ic auto_decrypt Ar boolean |
1873 | .Pq Em optional |
1874 | Always decrypt encrypted e-mail |
1875 | .Pq Em true \" default value |
1876 | .\" #[serde(default = "false_val", alias = "auto-sign")] |
1877 | .\" pub auto_sign: bool, |
1878 | .It Ic auto_sign Ar boolean |
1879 | .Pq Em optional |
1880 | Always sign sent messages |
1881 | .Pq Em false \" default value |
1882 | .\" #[serde(default = "false_val", alias = "auto-encrypt")] |
1883 | .\" pub auto_encrypt: bool, |
1884 | .It Ic auto_encrypt Ar boolean |
1885 | .Pq Em optional |
1886 | Always encrypt sent messages |
1887 | .Pq Em false \" default value |
1888 | .\" #[serde(default = "none", alias = "sign-key")] |
1889 | .\" pub sign_key: Option<String>, |
1890 | .It Ic sign_key Ar String |
1891 | .Pq Em optional |
1892 | ID of key to be used for signatures |
1893 | .Pq Em none \" default value |
1894 | .\" #[serde(default = "none", alias = "decrypt-key")] |
1895 | .\" pub decrypt_key: Option<String>, |
1896 | .It Ic decrypt_key Ar String |
1897 | .Pq Em optional |
1898 | ID of key to be used for decryption |
1899 | .Pq Em none \" default value |
1900 | .\" #[serde(default = "none", alias = "encrypt-key")] |
1901 | .\" pub encrypt_key: Option<String>, |
1902 | .It Ic encrypt_key Ar String |
1903 | .Pq Em optional |
1904 | ID of key to be used for encryption |
1905 | .Pq Em none \" default value |
1906 | .\" #[serde(default = "internal_value_false", alias = "allow-remote-lookups")] |
1907 | .\" pub allow_remote_lookup: ToggleFlag, |
1908 | .It Ic auto_remote_lookup Ar boolean |
1909 | .Pq Em optional |
1910 | Allow remote lookups |
1911 | .Pq Em false \" default value |
1912 | .\" pub remote_lookup_mechanisms: melib::gpgme::LocateKey, |
1913 | .It Ic remote_lookup_mechanisms Ar LocateKey |
1914 | .Pq Em optional |
1915 | Remote lookup mechanisms. |
1916 | Use comma to separate values. |
1917 | .Pq Em Local,WKD \" default value |
1918 | .Pp |
1919 | Possible mechanisms: |
1920 | .Bl -dash -compact |
1921 | .It |
1922 | .Em cert |
1923 | .It |
1924 | .Em pka |
1925 | .It |
1926 | .Em dane |
1927 | .It |
1928 | .Em wkd |
1929 | .It |
1930 | .Em ldap |
1931 | .It |
1932 | .Em keyserver |
1933 | .It |
1934 | .Em keyserver-url |
1935 | .It |
1936 | .Em local |
1937 | .El |
1938 | .El |
1939 | .\" |
1940 | .\" |
1941 | .\" |
1942 | .\" |
1943 | .\" |
1944 | .Sh TERMINAL |
1945 | .Ss Note about emojis and other multi-width characters in string values |
1946 | Some useful unicode combining marks |
1947 | .Po |
1948 | invisible characters that modify the presentation of visible characters before |
1949 | them |
1950 | .Pc |
1951 | are: |
1952 | .sp |
1953 | .Bl -tag -width 15n |
1954 | .It Ns |
1955 | .Li \e\uu{FE0E} |
1956 | Emoji variation sequence select 15: renders an emoji as text style (monochrome) |
1957 | .It Ns |
1958 | .Li \e\uu{FE0F} |
1959 | Emoji variation sequence select 16: renders an emoji in color |
1960 | .It Ns |
1961 | .Li \e\uu{2007} |
1962 | Figure space, a space character with the width of a digit in a monospace |
1963 | typeface |
1964 | .El |
1965 | .sp |
1966 | .Ss Terminal configuration settings |
1967 | .HorizontalRule |
1968 | Default values are shown in parentheses. |
1969 | .Bl -tag -width 36n |
1970 | .It Ic theme Ar String |
1971 | .Pq Em optional |
1972 | Theme name to use. |
1973 | .Pq Em dark \" default value |
1974 | .It Ic ascii_drawing Ar boolean |
1975 | .Pq Em optional |
1976 | If true, box drawing will be done with ASCII characters. |
1977 | .Pq Em false \" default value |
1978 | .It Ic use_color Ar boolean |
1979 | .Pq Em optional |
1980 | If false, no |
1981 | .Em ANSI |
1982 | colors are used. |
1983 | .Pq Em true \" default value |
1984 | .It Ic force_text_presentation Ar boolean |
1985 | .Pq Em optional |
1986 | If true, text presentations of color symbols and emoji will be enforced as much as possible. |
1987 | Might not work on all non-text symbols and is experimental. |
1988 | .Pq Em false \" default value |
1989 | .It Ic window_title Ar String |
1990 | .Pq Em optional |
1991 | Set window title in xterm compatible terminals An empty string means no window |
1992 | title is set. |
1993 | .Pq Em "meli" \" default value |
1994 | .It Ic file_picker_command Ar String |
1995 | .Pq Em optional |
1996 | Set command that prints file paths in stderr, separated by NULL bytes. |
1997 | Used with |
1998 | .Ic add-attachment-file-picker |
1999 | when composing new mail. |
2000 | .Pq Em None \" default value |
2001 | .It Ic themes Ar hash table String[String[Attribute]] |
2002 | Define |
2003 | .Em UI |
2004 | themes. |
2005 | See |
2006 | .Xr meli-themes 5 |
2007 | for details. |
2008 | .\" |
2009 | .\" |
2010 | .\" |
2011 | .Bd -literal |
2012 | [terminal] |
2013 | theme = "themeB" |
2014 | |
2015 | [terminal.themes.themeA] |
2016 | "mail.view.body" = {fg = "HotPink3", bg = "LightSalmon1"} |
2017 | \&... |
2018 | [terminal.themes.themeB] |
2019 | "mail.view.body" = {fg = "CadetBlue", bg = "White"} |
2020 | \&... |
2021 | [terminal.themes.themeC] |
2022 | \&... |
2023 | .Ed |
2024 | .\" |
2025 | .\" |
2026 | .\" |
2027 | .It Ic use_mouse Ar boolean |
2028 | Use mouse events. |
2029 | This will disable text selection, but you will be able to resize some widgets. |
2030 | This setting can be toggled with |
2031 | .Cm toggle mouse Ns |
2032 | \&. |
2033 | .Pq Em false \" default value |
2034 | .It Ic mouse_flag Ar String |
2035 | String to show in status bar if mouse is active. |
2036 | .Pq Em ๐ฑ๏ธ \" default value |
2037 | .It Ic progress_spinner_sequence Ar Either \&< Integer, ProgressSpinner \&> |
2038 | Choose between 37 built in sequences (integers between 0-36) or define your own |
2039 | list of strings for the progress spinner animation. |
2040 | Set to an empty array to disable the progress spinner. |
2041 | .Pq Em 20 \" default value |
2042 | .sp |
2043 | Built-in sequences are: |
2044 | .sp |
2045 | .\" |
2046 | .\" |
2047 | .\" |
2048 | .Bd -literal |
2049 | 0 ["-", "\\", "|", "/"] |
2050 | 1 ["โ", "โ", "โ", "โ", "โ
", "โ", "โ", "โ"] |
2051 | 2 ["โฃ", "โฃ", "โฃค", "โฃฆ", "โฃถ", "โฃท", "โฃฟ"] |
2052 | 3 ["โฃ", "โฃ", "โฃ", "โฃ", "โฃง", "โฃท", "โฃฟ"] |
2053 | 4 ["โ", "โ", "โ", "โ", "โฌค"] |
2054 | 5 ["โก", "โฑ", "โง", "โฃ", "โ "] |
2055 | 6 ["โก", "โฑ", "โจ", "โฉ", "โ "] |
2056 | 7 ["โก", "โฑ", "โฅ", "โฆ", "โ "] |
2057 | 8 ["โ", "โ", "โ", "โ"] |
2058 | 9 ["โ", "โ"] |
2059 | 10 ["โฌ", "โฌ"] |
2060 | 11 ["โฑ", "โฐ"] |
2061 | 12 ["โญ", "โผ"] |
2062 | 13 ["โฏ", "โฎ"] |
2063 | 14 ["โฏ", "โฌค"] |
2064 | 15 ["โช", "โซ"] |
2065 | 16 ["โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ"] |
2066 | 17 ["|", "/", "-", "\\"] |
2067 | 18 [".", "o", "O", "@", "*"] |
2068 | 19 ["โกโก", "โโ", "โ โ ", "โโ"] |
2069 | 20 ["โ ", " โ", " โ", "โ "] |
2070 | 21 ["โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ"] |
2071 | 22 ["โ", "โ", "โ", "โ
", "โ", "โ", "โ", "โ", "โ", "โ
", "โ", "โ"] |
2072 | 23 [ "โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ", "โ" ] |
2073 | 24 ["โ", "โ", "โ", "โ"] |
2074 | 25 ["โ", "โ", "โ", "โ"] |
2075 | 26 ["โค", "โ", "โด", "โ", "โ", "โ", "โฌ", "โ"] |
2076 | 27 ["โข", "โฃ", "โค", "โฅ"] |
2077 | 28 ["โ ", "โ ", "โ ", "โก", "โข", "โ ", "โ ", "โ "] |
2078 | 29 ["โขโกฐ", "โขโกก", "โขโก", "โขโ ฑ", "โ โกฑ", "โขโกฑ", "โขโกฑ", "โขโกฑ"] |
2079 | 30 [".", "o", "O", "ยฐ", "O", "o", "."] |
2080 | 31 ["ใ", "ใ", "ใ"] |
2081 | 32 ["๐ ", "๐ ", "๐ ", "๐ ", "โค๏ธ "] |
2082 | 33 [ "๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ " ] |
2083 | 34 ["๐ ", "๐ ", "๐ "] |
2084 | 35 [ "[ ]", "[= ]", "[== ]", "[=== ]", "[ ===]", "[ ==]", "[ =]", "[ ]", "[ =]", "[ ==]", "[ ===]", "[====]", "[=== ]", "[== ]", "[= ]" ] |
2085 | 36 ["๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ ", "๐ "] |
2086 | .Ed |
2087 | .\" |
2088 | .\" |
2089 | .\" |
2090 | .sp |
2091 | Or, define an array of strings each consisting of a frame in the progress |
2092 | sequence indicator for a custom spinner: |
2093 | .Bl -tag -width 36n |
2094 | .It Ic interval_ms Ar u64 |
2095 | .Pq Em optional |
2096 | Frame interval. |
2097 | .Pq 50 \" default value |
2098 | .It Ic frames Ar [String] |
2099 | The animation frames. |
2100 | .El |
2101 | .Pp |
2102 | Example: |
2103 | .\" |
2104 | .\" |
2105 | .\" |
2106 | .Bd -literal |
2107 | progress_spinner_sequence = { interval_ms = 150, frames = [ "-", "=", "โก" ] } |
2108 | .Ed |
2109 | .\" |
2110 | .\" |
2111 | .\" |
2112 | .El |
2113 | .\" |
2114 | .\" |
2115 | .\" |
2116 | .\" |
2117 | .\" |
2118 | .Sh LOG |
2119 | .Ss Logging configuration settings |
2120 | Default values are shown in parentheses. |
2121 | .Bl -tag -width 36n |
2122 | .It Ic log_file Ar String |
2123 | .Pq Em optional |
2124 | path of the log file |
2125 | .Pq Pa $XDG_DATA_HOME/meli/meli.log \" default value |
2126 | .It Ic maximum_level Ar String |
2127 | .Pq Em optional |
2128 | maximum level of messages to log. |
2129 | All levels less or equal to the |
2130 | .Ic maximum_level |
2131 | will be appended to the log file. |
2132 | Available levels are, in partial order: |
2133 | .Bl -dash -compact |
2134 | .It |
2135 | .Em OFF |
2136 | .It |
2137 | .Em ERROR |
2138 | .It |
2139 | .Em WARN |
2140 | .It |
2141 | .Em INFO |
2142 | .It |
2143 | .Em DEBUG |
2144 | .It |
2145 | .Em TRACE |
2146 | .El |
2147 | This means that to turn logging off, set |
2148 | .Ic maximum_level |
2149 | to |
2150 | .Em OFF Ns |
2151 | \&. |
2152 | .Pq Em INFO \" default value |
2153 | .El |
2154 | .\" |
2155 | .\" |
2156 | .\" |
2157 | .\" |
2158 | .\" |
2159 | .Sh SMTP Connections |
2160 | .Ss SMTP configuration settings |
2161 | Default values are shown in parentheses. |
2162 | .Bl -tag -width 36n |
2163 | .It Ic hostname Ar String |
2164 | server hostname |
2165 | .It Ic port Ar Integer |
2166 | server port |
2167 | .It Ic envelope_from Ar String |
2168 | .Pq Em optional |
2169 | address to set as sender in SMTP transactions |
2170 | .Pq Em none \" default value |
2171 | .It Ic auth Ar SmtpAuth |
2172 | .Em SMTP |
2173 | server authentication. |
2174 | See |
2175 | .Sx SmtpAuth |
2176 | subsection. |
2177 | .It Ic security Ar SmtpSecurity |
2178 | .Pq Em optional |
2179 | .Sy gpg |
2180 | binary name or file location to use. |
2181 | .Po see \" default value |
2182 | .Sx SmtpSecurity |
2183 | subsection |
2184 | .Pc |
2185 | .It Ic extensions Ar SmtpExtensions |
2186 | .Pq Em optional |
2187 | set support for |
2188 | .Em SMTP |
2189 | extensions if they are advertised by the server. |
2190 | .Po see \" default value |
2191 | .Sx SmtpExtensions |
2192 | subsection |
2193 | .Pc |
2194 | .El |
2195 | .Ss SmtpAuth |
2196 | .Bl -tag -width 36n |
2197 | .It Ic type Ar "none" | "auto" | "xoauth2" |
2198 | .El |
2199 | .Pp |
2200 | For type |
2201 | .Qq auto Ns |
2202 | : |
2203 | .Bl -tag -width 36n |
2204 | .It Ic username Ar String |
2205 | .It Ic password Ar SmtpPassword |
2206 | .It Ic require_auth Ar boolean |
2207 | .Pq Em optional |
2208 | require authentication in every case. |
2209 | .Pq Em true \" default value |
2210 | .El |
2211 | .sp |
2212 | For type |
2213 | .Qq xoauth2 Ns |
2214 | : |
2215 | .Bl -tag -width 36n |
2216 | .It Ic token_command Ar String |
2217 | Command to evaluate that returns an |
2218 | .Em XOAUTH2 |
2219 | token. |
2220 | .It Ic require_auth Ar boolean |
2221 | .Pq Em optional |
2222 | require authentication in every case. |
2223 | .Pq Em true \" default value |
2224 | .El |
2225 | .sp |
2226 | Examples: |
2227 | .\" |
2228 | .\" |
2229 | .\" |
2230 | .Bd -literal |
2231 | auth = { type = "auto", username = "user", password = { type = "raw", value = "hunter2" } } |
2232 | .Ed |
2233 | .\" |
2234 | .\" |
2235 | .\" |
2236 | .Bd -literal |
2237 | auth = { type = "auto", username = "user", password = "hunter2" } |
2238 | .Ed |
2239 | .\" |
2240 | .\" |
2241 | .\" |
2242 | .Bd -literal |
2243 | auth = { type = "none" } |
2244 | .Ed |
2245 | .sp |
2246 | For |
2247 | .Em Gmail |
2248 | (see |
2249 | .Sx Gmail OAUTH2 |
2250 | for details on the authentication token command): |
2251 | .\" |
2252 | .\" |
2253 | .\" |
2254 | .Bd -literal |
2255 | auth = { type = "xoauth2", token_command = "TOKEN=$(python3 oauth2.py --user=xxx@gmail.com --quiet --client_id=1038[...].apps.googleusercontent.com --client_secret=[..] --refresh_token=[..] && python3 oauth2.py --user=xxx@gmail.com --generate_oauth2_string --quiet --access_token=$TOKEN" } |
2256 | .Ed |
2257 | .\" |
2258 | .\" |
2259 | .\" |
2260 | .Ss SmtpPassword |
2261 | .Bl -tag -width 36n |
2262 | .It Ic type Ar "raw" | "command_evaluation" |
2263 | .It Ic value Ar String |
2264 | Either a raw password string, or command to execute. |
2265 | .El |
2266 | .sp |
2267 | Examples: |
2268 | .\" |
2269 | .\" |
2270 | .\" |
2271 | .Bd -literal |
2272 | password = { type = "raw", value = "hunter2" } |
2273 | .Ed |
2274 | .\" |
2275 | .\" |
2276 | .\" |
2277 | .Bd -literal |
2278 | password = { type = "command_eval", value = "gpg2 --no-tty -q -d ~/.passwords/user.gpg" } |
2279 | .Ed |
2280 | .\" |
2281 | .\" |
2282 | .\" |
2283 | .Ss SmtpSecurity |
2284 | Default security type is |
2285 | .Em auto Ns |
2286 | \&. |
2287 | .Bl -tag -width 36n |
2288 | .It Ic type Ar "none" | "auto" | "starttls" | "tls" |
2289 | .It Ic danger_accept_invalid_certs Ar boolean |
2290 | Accept invalid |
2291 | .Em SSL |
2292 | / |
2293 | .Em TLS |
2294 | certificates |
2295 | .Pq Em false \" default value |
2296 | .El |
2297 | .Ss SmtpExtensions |
2298 | .Bl -tag -width 36n |
2299 | .It Ic pipelining Ar boolean |
2300 | RFC2920 |
2301 | .Pq Em true \" default value |
2302 | .It Ic chunking Ar boolean |
2303 | RFC3030 |
2304 | .Pq Em true \" default value |
2305 | .It Ic prdr Ar boolean |
2306 | draft-hall-prdr-00 |
2307 | .Pq Em true \" default value |
2308 | .It Ic dsn_notify Ar String |
2309 | RFC3461 |
2310 | .Pq Em FAILURE \" default value |
2311 | .El |
2312 | .\" |
2313 | .\" |
2314 | .\" |
2315 | .\" |
2316 | .\" |
2317 | .Sh SEE ALSO |
2318 | .Xr meli 1 , |
2319 | .Xr meli-themes 5 |
2320 | .Sh STANDARDS |
2321 | .Bl -item -compact |
2322 | .It |
2323 | .Em TOML |
2324 | Standard |
2325 | .Li v.0.5.0 |
2326 | .Lk https://toml.io/en/v0.5.0 |
2327 | .El |
2328 | .Sh AUTHORS |
2329 | Copyright 2017\(en2024 |
2330 | .An Manos Pitsidianakis Aq Mt manos@pitsidianak.is |
2331 | .Pp |
2332 | Released under the GPL, version 3 or greater. |
2333 | This software carries no warranty of any kind. |
2334 | .Po |
2335 | See |
2336 | .Pa COPYING |
2337 | for full copyright and warranty notices. |
2338 | .Pc |
2339 | .Ss Links |
2340 | .Bl -item -compact |
2341 | .It |
2342 | .Lk https://meli\-email.org "Website" |
2343 | .It |
2344 | .Lk https://git.meli\-email.org/meli/meli "Main\ git\ repository\ and\ issue\ tracker" |
2345 | .It |
2346 | .Lk https://codeberg.org/meli/meli "Official\ read-only\ git\ mirror\ on\ codeberg.org" |
2347 | .It |
2348 | .Lk https://github.com/meli/meli "Official\ read-only\ git\ mirror\ on\ github.com" |
2349 | .It |
2350 | .Lk https://crates.io/crates/meli "meli\ crate\ on\ crates.io" |
2351 | .El |