No project description provided
Project description
WEmail
(Or, Wayne's Email)
I really love command line tools. Alpine has been a favorite of mine and Mutt is also a rather useful mail client. But I wanted to do some things differently, so I'm working on this project, WEmail.
It's designed for use with my other project Orouboros, a mailserver that cheerfully violates all kinds of standards for MTAs.
To get started, you'll want to create a ~/.wemailrc file. It's a JSON file,
because aside from the pesky inability to have trailing commas, it's pretty
good otherwise. Here's a sample one to get you started:
{
"ABORT_TIMEOUT": 2,
"MAILDIR": "~/mymail/",
"DEFAULT_FROM": "person@example.com",
"person@example.com": {
"HEADERS": {
"From": "person@example.com",
"To": "",
"X-CommonMark": "True",
"Subject": ""
},
"SMTP_HOST": "example.com",
"SMTP_PORT": 1234,
"SMTP_USE_TLS": true,
"SMTP_USERNAME": "person",
"SMTP_PASSWORD": "this is not a real password",
"":""
}
}
Oh yeah, you can add "":"" at the end of your blocks, because I don't care
about them, and that lets you put commas at the end of everything else.
Anyway, after that you just python3 -m pip install --user wemail and then run
wemail.
Now you can run check to check your email, and proc to process your email.
While not everything has a help, hopefully there should be enough to get you
going. And if you get stuck, feel free to send me an email - you can find my
address in setup.py. Oooh, maybe I should add a command that lets you send me
an email for help!
The changelog format is based on Keep a Changelog.
This project uses [CalVer][calver] - YYYY.0M.0D(.MICRO)
[2020.08.14]
Changed
- Now list, read, raw, reply, save, and attachment will all operate on emails in the current directory.
[2020.03.31]
Added
- Added
--wrapargument for reading emails that are too wide.
[2020.03.30]
Changed
- Failures on filter now prints messages.
[2020.03.27]
Removed
- Removed older interface.
Added
- Added ability to call filters - use
"filters": ["command", "arg", "--option"]in.wemailrc. Filters get passed each folder, and a non-zero exit code will abort further processing. - Can add
"default_part": "1"to.wemailrcto automatically open thetext/plainpart of the message. -p/--partoption added toread, which overrides thedefault_partoption.
Changed
- Changed to [CalVer][calver] versioning.
- Sender address now comes from config.
Fixed
- Sent emails now get a pretty name.
- Space after
Which part? - Date now shows up when reading email.
[0.4.0] - 2010-01-17
Added
rawcommand to view the original message.
Fixed
- reply/reply_all use appropriate recipients
- Content with too-long lines no longer show up with quoted-printable (
=20) formatting
[0.3.0] - 2020-01-03
Changed
- WEmail interface is re-written. Rather than a prompt style program, arguments
are passed via command line. Run
wemail --helpfor more info.
[0.2.0] - 2019-11-14
Added
filtercommand - filters all messages in current folder.extcommand - allows viewing different parts in external viewers/editors.
Changed
- No longer wrap body lines, because it was wrapping the wrong way.
lsdisplay no longer shows filename, but email subject
[0.1.18] - 2019-07-24
Added
linkscommand now parses URLs from the message body.
Changed
bodynow displays the message body interactively if it's too long. It also wraps the message at 120 characters wide, or the width of the terminal - whichever is smaller.- Header wraps message body, so truncating should be a lot nicer. Also wraps.
[0.1.17] - 2019-06-18
Fixed
- Update from the prompt no longer quits if there are no updates.
[0.1.16] - 2019-06-18
Fixed
- Update from the prompt now actually works, instead of throwing an error.
[0.1.15] - 2019-06-18
Changed
- Saving without a folder now saves to
saved-mail
[0.1.14] - 2019-06-18
Fixed
- Forwarding and replying now both allow attachments and CommonMark rendering.
Changed
- Message now prints when you're up to date.
- From address tries to default to ones found in config.
[0.1.13] - 2019-06-18
Added
updatecommand lets you check for updates without exiting the program.
[0.1.12] - 2019-06-18
Added
-
Uses linux escape sequences to (try) and set the terminal title.
-
Can now add attachments! Simply add
Attachment: /path/to/filein the headers and they will be replaced by the appropriate attachments. Images can be inlined to CommonMarked email via something like so:Attachment: /path/to/image.png; inline=true; name="example.png" Hey, here is an inline image: The only important thing is that
cid:<this part>matches whatever is in thename="<this part>".
Fixed
- Resuming draft works properly.
- With only one draft, resuming no longer asks a second time.
- No longer multiply headers.
- Display failed body seek on KeyError, instead of crash.
Changed
- Temp file when composing now has
.emlsuffix, to trigger email-like behaviors in editors that honor that kind of thing. - Save raw message as draft after compose, rather than rendered.
[0.1.11] - 2019-06-06
Added
- compose now has an address book autocomplete function, using
ADDRESS_BOOKin the config file.
Fixed
- For messages without any kind of body, now show a list of message parts, if any.
Changed
- Added spacer line between header and body.
[0.1.10] - 2019-06-05
Added
- Email forwarding.
rshortcut for reply.- Ability to save and resume drafts, queue messages for later sending, and edit files generally.
- README for pypi and GitHub.
Fixed
- On failure to send, display failure message instead of crash.
- Properly display recipient headers when doing
proc.
Changed
- Default to
mistletoefor the CommonMark renderer, because tables are cooler. But fallback to commonmark, if available. - Show message body (up to 20 lines) when doing
proc.
[0.1.9]
Fixed
- Fix
~-prefixed maildir paths.
[0.1.8]
Added
- Ability to do a quick command, e.g.
proc replyto quickly reply to the first message. - Added
On <date> at <time>, <sender> wrote:to reply text.
[0.1.7]
Changed
- Removed testing To: email and CC: field.
[0.1.6]
Added
- Config file! ~/.wemailrc, a JSON file
- Composing emails! works with
cor `compose' - Replying to emails! When processing emails now it's possible to reply
using
reply.
[0.1.5]
Added
- Setting
WEMAIL_CHECK_FOR_UPDATESenv var now allows automagic upgrades. versioncommand now displays WEmail version.
[0.1.4]
Added
bodyshortcut, to print the message body.
[0.1.3]
Added
p1shortcut to view the first part of a message, probablytext/plain.Dshortcut added to delete a message without confirmation.- '-v'/ '--version' command to check version.
[0.1.2]
Added
- Ability to change directories.
headerscommand (aliash) to (re-)dislpay message headers.
[0.1.1] - 2019.05.14
Changed
- Fixed date header fallback.
- Fixed subject encoding fallback.
[0.1.0] - 2019.05.12
Minimally useful product released.
Added
- Ability to process a maildir-style folder.
- Ability to view parts of messages.
- Ability to save messages in new directories.
calver: https://calver.org/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wemail-2020.8.14-py3-none-any.whl.
File metadata
- Download URL: wemail-2020.8.14-py3-none-any.whl
- Upload date:
- Size: 14.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb4bc09700fa24992a0d5ea2be6fdf3c9f1760a7c4289093b68bc262a4e508f4
|
|
| MD5 |
2f40cffdce1d1ce906fbea4f9cec69f2
|
|
| BLAKE2b-256 |
8057868c338baa0e746f0d5fd8e351897622bc4762cd365d893b725d7489a45d
|