Mournmail
Mournmail is a message user agent for Textbringer.
Installation
$ gem install mournmail
Configuration
CONFIG[:mournmail_accounts] = {
"example.com" => {
from: "Shugo Maeda <[email protected]>",
delivery_method: :smtp,
delivery_options: {
address: "smtp.example.com",
port: 465,
domain: Socket.gethostname,
user_name: "shugo",
password: File.read("/path/to/smtp_passwd").chomp,
authentication: "login",
tls: true,
ca_file: "/path/to/ca.pem"
},
imap_host: "imap.example.com",
imap_options: {
auth_type: "PLAIN",
user_name: "shugo",
password: File.read("/path/to/imap_passwd").chomp,
ssl: { ca_file: "/path/to/ca.pem" }
},
spam_mailbox: "spam",
outbox_mailbox: "outbox",
archive_mailbox_format: "archive/%Y",
signature: " -- \n Shugo Maeda <[email protected]>\n EOF\n },\n \"gmail.com\" => {\n from: \"Example <[email protected]>\",\n delivery_method: :smtp,\n delivery_options: {\n address: \"smtp.gmail.com\",\n port: 587,\n domain: Socket.gethostname,\n user_name: \"[email protected]\",\n password: File.read(\"/path/to/gmail_passwd\").chomp,\n authentication: \"login\",\n enable_starttls_auto: true\n },\n imap_host: \"imap.gmail.com\",\n imap_options: {\n auth_type: \"PLAIN\",\n user_name: \"[email protected]\",\n password: File.read(File.expand_path(\"~/.textbringer/gmail_passwd\")).chomp,\n ssl: true\n },\n spam_mailbox: \"[Gmail]/\u8FF7\u60D1\u30E1\u30FC\u30EB\",\n archive_mailbox_format: false\n },\n}\n"
Usage
Type M-x mail to send a mail.
Type M-x mournmail to visit INBOX.
Key bindings
Summary
| Key | Command | Description |
|---|---|---|
| s | mournmail_summary_sync | Sync summary. With C-u sync all mails |
| SPC | summary_read_command | Read a mail |
| C-h | summary_scroll_down_command | Scroll down the current message |
| n | summary_next_command | Display the next mail |
| w | summary_write_command | Write a new mail |
| a | summary_reply_command | Reply to the current message |
| A | summary_reply_command | Reply to the current message |
| f | summary_forward_command | Forward the current message |
| u | summary_toggle_seen_command | Toggle Seen |
| $ | summary_toggle_flagged_command | Toggle Flagged |
| d | summary_toggle_deleted_command | Toggle Deleted |
| x | summary_toggle_mark_command | Toggle mark |
| * a | summary_mark_all_command | Mark all mails |
| * n | summary_unmark_all_command | Unmark all mails |
| * r | summary_mark_read_command | Mark read mails |
| * u | summary_mark_unread_command | Mark unread mails |
| * s | summary_mark_flagged_command | Mark flagged mails |
| * t | summary_mark_unflagged_command | Mark unflagged mails |
| y | summary_archive_command | Archive mails. Archived mails will be deleted or refiled from the server, and only shown by summary_search_command |
| o | summary_refile_command | Refile marked mails |
| ! | summary_refile_spam_command | Refile marked mails as spam |
| p | summary_prefetch_command | Prefetch mails |
| X | summary_expunge_command | Expunge deleted mails |
| v | summary_view_source_command | View source of a mail |
| M | summary_merge_partial_command | Merge marked message/partial |
| q | mournmail_quit | Quit Mournmail |
| k | previous_line | Move up |
| j | next_line | Move down |
| m | mournmail_visit_mailbox | Visit mailbox |
| S | mournmail_visit_spam_mailbox | Visit spam mailbox |
| / | summary_search_command | Search mails |
| t | summary_show_thread_command | Show the thread of the current mail |
| @ | summary_change_account_command | Change the current account |
Message
| Key | Command | Description |
|---|---|---|
| RET | message_open_link_or_part_command | Open link or MIME part |
| s | message_save_part_command | Save the MIME part |
| TAB | message_next_link_or_part_command | Go to the next link or MIME part |
Draft
| Key | Command | Description |
|---|---|---|
| C-c C-c | draft_send_command | Send a mail |
| C-c C-k | draft_kill_command | Kill the draft buffer |
| C-c C-x TAB | draft_attach_file_command | Attach a file |
| C-c C-x v | draft_pgp_sign_command | PGP sign |
| C-c C-x e | draft_pgp_encrypt_command | PGP encrypt |
| C-c TAB | insert_signature_command | Insert signature |
| C-c @ | draft_change_account_command | Change account |
| TAB | draft_complete_or_insert_tab_command | Complete a mail address or insert a tab |
Development
After checking out the repo, run bin/setup to install dependencies. You can also run bin/console for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/shugo/mournmail.
License
The gem is available as open source under the terms of the MIT License.