Commit Graph

215 Commits (eaecc5ea12f4a5ebe309d5654509c0771bbdc2f1)

Author SHA1 Message Date
Manos Pitsidianakis 7af893597f conf/shortcuts.rs: replace use of Self::DESCRIPTION with Shortcuts struct consts 2 years ago
Manos Pitsidianakis 7d9cabb023 Add mailbox manager tab 2 years ago
Manos Pitsidianakis ee9d458b05 accounts.rs: implement mailbox {un,}sub actions 2 years ago
Manos Pitsidianakis 7935e49a00 conf/accounts.rs: check properly if mailbox request is an error 2 years ago
Manos Pitsidianakis 0ed10711ef notifications: add new_mail_script option
Preferred over `script` option for new email notifications
2 years ago
Manos Pitsidianakis d8d43a16fe HtmlView: add html_open config setting
Add config setting in case xdg query default app for text/html mime type
doesn't yield results.
2 years ago
Manos Pitsidianakis 0df46a63ec Show error if sqlite3 search backend is set but doesn't exist
Closes #114
2 years ago
Manos Pitsidianakis 94bd84b45d Fix clippy lints for `meli` crate 2 years ago
Manos Pitsidianakis 388d4e35d6 listing/offline.rs: add in-progress messages while connecting in IMAP 2 years ago
Manos Pitsidianakis 8c7b001aa5 listing/conversations.rs: add `thread_subject_pack` command to pack different inner thread subjects in entry title 2 years ago
Manos Pitsidianakis 9dc4d4055c listing: add focus_{left,right} shortcuts to switch focus
This allows you to make the mail entry column occupy the whole screen if
you press focus_right (Right key) twice.
2 years ago
Manos Pitsidianakis f76f4ea3f7 docs: add meli.7, a general tutorial document
This commit also changes some shortcut names.
2 years ago
Manos Pitsidianakis cbe593cf31 mail/compose: add configurable header preample suffix and prefix for editing
This commit adds a new configuration value for the composing section of
settings. Quoting the documentation:

 wrap_header_preamble: Option<(String, String)>
 optional

 Wrap header preample when editing a draft in an editor. This allows you
 to write non-plain text email without the preamble creating syntax
 errors. They are stripped when you return from the editor. The values
 should be a two element array of strings, a prefix and suffix. This can
 be useful when for example you're writing Markdown; you can set the
 value to ["<!--",\ "-->"] which wraps the headers in an HTML comment.
2 years ago
Manos Pitsidianakis aa99b0d787 compose: implement configurable subject prefix stripping when replying
Introduce functionality to strip email subject from a set list of
prefixes or from a user set list.

Also, added a setting for the reply prefix (default is "Re:").

Closes #142
2 years ago
Manos Pitsidianakis a73885acb1 Improve embed terminal
- Add character attribute support
- Add cursor key mode support
- Fix buggy set fg / bg sequences

And added a bin under tools to test arbitrary apps using the embedded
terminal:

 cargo run -p tools --bin embed -- "htop" 2> .htop.debug.log
2 years ago
Manos Pitsidianakis 9cb66ef818 Fix all clippy warnings in `meli` crate 2 years ago
Manos Pitsidianakis b716e4383e Add collapse option for mailboxes in sidebar menu
Closes #130

Feature request: collapsible folders with total counter #130 https://git.meli.delivery/meli/meli/issues/130
2 years ago
Manos Pitsidianakis 2c23ca34cd Update most Cargo dependencies 2 years ago
Manos Pitsidianakis 2eb22a290a
Stop hardcoding certain component colors
`Color::Byte` references were before themes were introduced in the code
base. Their presence is a bug and they should all be replaced by theme
values.

Closes #124

Stop hardcoding certain component colors #124
https://git.meli.delivery/meli/meli/issues/124
2 years ago
Manos Pitsidianakis 5823178cc2
themes.rs: add test that looks in source code for invalid theme key references 2 years ago
Manos Pitsidianakis d0de04854e
listing.rs: add {in,de}crease_sidebar shortcuts
`increase_sidebar`: Increase sidebar width.
Default value Ctrl-p

`decrease_sidebar`: Decrease sidebar width.
Default value Ctrl-o
2 years ago
Manos Pitsidianakis 340d6451a3
listing.rs: add config setting for sidebar ratio 2 years ago
Manos Pitsidianakis 36e29cb6fd
Add configurable mailbox sort order
Closes #25

```
     sort_order unsigned integer           (optional) Override sort order on the sidebar for this mailbox.  Example:

                                           [accounts."imap.example.com".mailboxes]
                                             "INBOX" = { index_style = "plain" }
                                             "INBOX/Sent" = { sort_order = 0 }
                                             "INBOX/Drafts" = { sort_order = 1 }
                                             "INBOX/Lists" = { sort_order = 2 }
```
3 years ago
Manos Pitsidianakis 505adca54d
Add forward mail option
Forward email with shortcut 'forward' (default ctrl+f)

This opens a composing tab letting you to select receiver etc.

"composing" config setting "forward_as_attachment" selects the
forwarding behavior:

- "ask" asks you ever time
- true always forwards by attaching the entire email as a single
attachment
- false always forwards by inlining the email, like most email clients
do.

Closes #120
3 years ago
Manos Pitsidianakis f975e1004c
Add url_launcher config setting 3 years ago
Manos Pitsidianakis 32901f57d2
Add show_date_in_my_timezone pager config flag
Closes #28
3 years ago
Manos Pitsidianakis 13c5798c7b
conf/shortcuts.rs: add info_message_{next,previous} 3 years ago
Manos Pitsidianakis 07e166e1fb
melib/error: Add kinds: NotImplemented, NotSupported, OSError 3 years ago
Manos Pitsidianakis 72a2ba20dc
conf/accounts.rs: print info when displaying watch error 3 years ago
Manos Pitsidianakis f40ae9e11b
Change all Down/Up shortcuts to j/k 3 years ago
Manos Pitsidianakis b49d965695
Fix unused var etc warnings 3 years ago
Manos Pitsidianakis 521f634e7b
melib/nntp: implement NNTP posting 3 years ago
Manos Pitsidianakis 64b62352d0
listing: add {unseen,selected,attachment,thread_snoozed} flag config values 3 years ago
Manos Pitsidianakis b411daddaa
listing/conversations: remove entry padding box character
Remove padding each entry with '░' box character.
3 years ago
Manos Pitsidianakis 48d4343082
utilities/ProgressSpinner: add interval field and new spinners 3 years ago
Manos Pitsidianakis 22a64e2d76
melib: Remove unnecessary "pub use" std exports 3 years ago
Manos Pitsidianakis 781a1d0e1b
melib/backends: add collection() method to MailBackend
Keep track of the Collection state in the backend side
3 years ago
Manos Pitsidianakis 622ded8021
compose: add attribution line for replies 3 years ago
Manos Pitsidianakis eca10a5660
melib/backends: add mailbox management events to RefreshEventKind
Add mailbox management events from RFC 5423 Internet Message Store
Events

https://tools.ietf.org/html/rfc5423#page-8
3 years ago
Manos Pitsidianakis 9124ad0ae7
conf/accounts: remove some unnecessary unwraps 4 years ago
Manos Pitsidianakis ed826357a3
Don't unwrap try_recv() on async jobs channels
Job might have been canceled.
4 years ago
Manos Pitsidianakis 7e1e57a2df
conf/themes: add mail.view.headers_names and mail.view.headers_area
Allow separate customization of header names and the rest of the header
area.
4 years ago
Manos Pitsidianakis 4914f29e20
themes: make conversations defaults grey 4 years ago
Manos Pitsidianakis de018294e4
conf/themes: make notifications bg default color instead of red 4 years ago
Manos Pitsidianakis 8d9247e9a3
listing: show auto-hide scrollbar in sidebar menu
Setting to turn it off is listing.show_menu_scrollbar.

Concerns #85 Accounts sidebar doesn't scroll
4 years ago
Andrew Jeffery daee4e46de
Allow configuration of the sidebar divider
This adds the config option listing.sidebar_divider to set the character
used to show the divider (defaults to ' ') along with the corresponding
theme in mail.sidebar_divider which defaults to the default theme.
4 years ago
Manos Pitsidianakis 76f8bdc558
Add configurable shortcut for 'quit'
Quit ('q' button) was hardcoded, switch to configurable shortcut setting
instead.
4 years ago
Manos Pitsidianakis aa73bd71c3
listing: fix mailbox tree rendering
Indentation value was being interpreted mirrored (raw binary value in
parenthesis):

   0  testing_account (0)
   1   ┣━Archives     (0)
   2   ┃ ┣━2014       (1)
   3   ┃ ┃ ┗━10       (11)
   4   ┃ ┗━2015       (1)
   5     ┃ ┗━05       (10) <- invalid/mirrored
   6   ┣━Drafts       (0)

Should be:

   0  testing_account (0)
   1   ┣━Archives     (0)
   2   ┃ ┣━2014       (1)
   3   ┃ ┃ ┗━10       (11)
   4   ┃ ┗━2015       (1)
   5   ┃   ┗━05       (10)
   6   ┣━Drafts       (0)
4 years ago
Manos Pitsidianakis 72084da185
Add store_sent_mail option for gmail
- store_sent_mail boolean

Store sent mail after successful submission.
This setting is meant to be disabled for non-standard behaviour in
gmail, which auto-saves sent mail on its own.
4 years ago
Manos Pitsidianakis a34f0aac5b
melib: fix bincode serialization
Previous commit changed bincode deserializes in maildir and sqlite3.rs
from bincode::deserialize_from to using bincode::config::DefaultOptions
and bincode::Options trait's method deserialize_from.

However, these two different deserializes use a different default
settings: https://github.com/servo/bincode/issues/348

Specifically, varint encoding for integers is the default for
DefaultOptions but not when using bincode::{de,}serialize_* functions.
That means that serialized structs were not able to be deserialized.
This commit makes all {de,}serializations use the DefaultOptions
interface rather than the top level functions.
4 years ago