Personal fork of mailx.
Several features that are important to me:
-
mailx has good header search features that I find easy to use, this fork keeps those and adds some others.
- Message sizes are highlighted in lines and bytes in index summary
and can be searched using the same notation:
f > 500M
find mail over 500 megabytesf = 10c
find mail with 1000 (ten hundreds) of lines (using the same rounding rules the display uses)
- Found a line number with
grep -n
? Usep #8331
to print the message containing line 8331. - Instead of needing to
set searchheaders
, a different search prefix can be used (have searchheaders enabled makes regular searches slower):f '%Header:term of interest
to find a "Header: with "term of interest" in it.
- A history of exactly one search for the use-case of searching with
the
from
command non-destructively and then applying a command, e.g.,delete
to those same matched messages. Use!
as a message list for that history or~
as a message list to invert that prior selection. - A
summary
command that prints only pre-selected headers as a modernization of the oldtop
command. Theinterest
list can customize the header selection.
- Message sizes are highlighted in lines and bytes in index summary
and can be searched using the same notation:
-
Rnmail command, uses a shell script (derived from the one included with
rn
/trn
) to compose repiles to mail- Because the 1980s native mail composer in
mailx
is bad. - Rnmail is a friendly front-end to
sendmail -oi
- Arbitrary headers can be set or edited.
- So the MIME savvy user can compose MIME email.
- Mail "From" any special address is easy to send.
- Example scripts in rnmail.d/
- Because the 1980s native mail composer in
-
Header highlighting, selected by the same interface as header hiding.
- Highlighting pre- and post-fixes an arbitrary string, which can be
ordinary or an escape sequence.
- Backticks now supported in settings for using
tput
to set escape sequences.
- Backticks now supported in settings for using
- Highlighting pre- and post-fixes an arbitrary string, which can be
ordinary or an escape sequence.
-
Variables are used in more places, such as to hold the destination of mailboxes to
Save
files to, or read mail-F
rom. Theecho
command has been made useful to examine variables. -
Help has been rewritten to support multiple help files on different topics. For built-in commands it also explains parameters used based on the flags used internally.
-
The
touch
command fixed to mark messages as read without reading them.- The
unread
command has always existed to mark as unread.
- The
-
The one-line index of messages in a mailbox has been tweaked to my tastes:
- Terse date, for a longer subject line excerpt.
- "Human" readable style (
ls -H
) message size descriptions. - Some terminal width sensitivity, for reading on my narrow phone screen or extra-wide xterms.
-
The mailx I started with still had 1980s ideas of message sizes. No longer does this use 16 bit short for things like number of lines.
Some things to know about my mail set-up:
-
I like the big mbox full of many messages model, not the directory full of single message files model. But I sort and use multiple mboxes.
-
I prefer to deal with MIME mail with
procmail
rules during delivery, so the stuff that makes it to my inbox has path names to extracted files added as a MIME prefix. See procmail.d/ for example recipes. -
My version of
Rnmail
has rules for determining the "From" address I will use and parses out the address from the headers to use as envelope from address when invokingsendmail
. While my exact version is not in this distribution for privacy reasons, an example version is in rnmail.d/- I use separate email addresses for basically all non-personal email.
- This facilitates sorting and makes address shaing obvious.
- My Github address, my Wikipedia address, my Amazon address, etc, are
all different and I want to use them sometimes when sending mail.
- This is particularly important for mailing lists.