[MlMt] MailMate status (All things HTML)
Benny Kjær Nielsen
mailinglist at freron.com
Fri Aug 7 19:20:36 EDT 2015
Hi MailMate users,
before the weekend I wanted to provide you with the current status of
MailMate. It has been a few weeks since the latest beta/test version of
MailMate (r5107/r5108), but it's not because I have been on vacation
that long. The main reason is that I've been working on some of the
oldest short-comings of MailMate related to the handling of HTML and
this has involved quite a lot of changes.
I don't have any major new **complete** features for you to test yet,
but I do have a new update for you. Its primary purpose is to ensure
that I haven't broken a lot of things while working on the HTML issues.
It can be fetched as a direct download
[here](‘http://updates.mailmate-app.com/archives/MailMate_r5109.tbz)
(r5109). It's not available via the Software Update preferences pane,
because currently I don't want anyone to download it if they are not
ready to report any new issues.
I cannot make any promises on when these features are complete. Right
now I have to focus on fixing a bunch of minor issues to make MailMate
ready for a public El Capitan capable release.
The following are the features I've been working on. It's a bit early to
announce all this, but I expect we can keep their existence on the
mailing list for now :-)
### Inlining of HTML
This is the important one. MailMate is going to continue having a plain
text editor, but it'll be possible to inline HTML messages when
forwarding and replying. When MailMate generates an HTML body part then
the original HTML is inlined and that should work at least as well as
any HTML capable email client. The plain text in the composer is going
to show the plain text variant of the inlined HTML, but it'll be
non-editable (for obvious reasons). If the user tries to edit the plain
text then MailMate offers to drop the inlined HTML body part
(essentially providing the current behavior). This can be suppressed
such that it happens automatically.
There is a hidden preference to enable it, but the feature is still
incomplete. The main issue is related to HTML emails containing
so-called related body parts (inlined images). In other words, this is
not quite ready for testing yet. Sorry.
### Styling
Until now MailMate has generated unstyled HTML. This is great because
then the default styling of the email client of the recipient is in
charge — displaying all incoming emails in the same way. Unfortunately
the default styling s\*cks in many email clients resulting in MailMate
messages looking ugly, e.g., without any styling of quoted blocks (Apple
Mail) or an ugly font (Outlook webmail). Ironically, there are no such
issues when sending a plain text message without an HTML alternative.
I've implemented it such that a default theme can be configured, but
I've also added that each signature can be bound to a specific theme.
Some details are still missing and this is also not quite ready for
testing. Sorry.
> The feature is enabled for this email which means that this paragraph
> should have a vertical blue line in most (all?) HTML capable email
> clients — including Apple/iOS Mail.
### Code styling
This is probably the most complete feature. It's mostly missing GUI
settings. It is based on a new bundle named Pygments which currently has
to be fetched manually:
mkdir -p ~/Library/Application\\ Support/MailMate/Bundles
cd ~/Library/Application\\ Support/MailMate/Bundles
git clone https://github.com/mailmate/pygments.mmBundle
It is also necessary to tell MailMate to use a specific command in the
bundle for code styling:
defaults write com.freron.MailMate MmBundleCommandForCodeStyling
-string E4464365-9FE3-487C-8B39-D3B0F632F1D8
Finally, it's possible to configure the style used. This is equivalent
to the default:
defaults write com.freron.MailMate MmDefaultPygmentsStyleName colorful
The possible values are:
manni igor xcode vim autumn vs rrt native perldoc borland
tango emacs friendly monokai paraiso-dark colorful murphy
bw pastie paraiso-light trac default fruity
If I remember correctly those with a dark background do not yet work
well.
Oh, and here is an example of the feature in use:
~~~c++
// This is C++ code
for(int i=0; i < 42; ++i)
printf("Hello world\\\\n");
~~~
And this is what I wrote to get that:
~~~c++
// This is C++ code
for(int i=0; i < 42; ++i)
printf("Hello world\\\\n");
~~~
### Math styling
The last feature is also mostly complete, but unfortunately it probably
has limited use cases, because it's not supported by all receiving email
clients. Then again, if you know who you are writing then it's a pretty
cool feature.
Again, first manually install a bundle:
mkdir -p ~/Library/Application\\ Support/MailMate/Bundles
cd ~/Library/Application\\ Support/MailMate/Bundles
git clone https://github.com/mailmate/asciimath.mmBundle
And enable the feature like this:
defaults write com.freron.MailMate MmBundleCommandForMathStyling
-string A5574670-971A-47B4-86F8-A2901F252613
It's also necessary to manually install \`asciimathml\` (ideally, the
bundle command should do this like it does for the Pygments bundle):
sudo easy\_install asciimathml
The bundle provides you with the ability to have inline math,
$sum\_(i=1)^n i^3$, by writing this: \`$sum\_(i=1)^n i^3$\`. Larger
sections of math can be done like this
$$
sum\_(i=1)^n i^3=((n(n+1))/2)^2
$$
which looks like this
$$
sum\_(i=1)^n i^3=((n(n+1))/2)^2
$$
The ASCIIMath markup language is described [here](http://asciimath.org).
And I repeat, this feature does not work well in many receiving email
clients. Apple/iOS Mail is doing fine since they are also based on
Webview, but other HTML engines do not support MathML (which is what the
bundle command generates). Webmail clients like Gmail and iCloud remove
the MathML markup generated making the math disappear even if using
Safari (which does support MathML).
(It's implicit in the above, but it's possible to create your own bundle
with a different syntax highlighter or a different math generator and
then configure MailMate to use them.)
That's it. Have a nice weekend and remember that all of the above is
work in progress. Right now I'm mostly interested in side-effects of my
changes affecting the regular use of the composer.
--
Benny
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freron.com/pipermail/mailmate/attachments/20150808/bf9cc420/attachment-0001.html>
More information about the mailmate
mailing list