
Markdown Here – Write email in Markdown - duck
http://markdown-here.com/index.html
======
madmax108
I absolutely love this extension and it's been a stable part of my workflow
for the last 2 years or so.

For people who are asking what the use case for this is have clearly never
tried sending chunks of code over email (especially a auto-word-wrapping HTML
client like Gmail). Markdown Here allows me to create beautifully formatted
code blocks which are readily shared with the rest of the team and beyond
(Even non-Engg love reading well formatted blocks of markdown).

My workflow for a lot of mails sent out to other teams involves the following
template:

\----

Hey there! I ran into this error while running XYZ service. The error seems to
be with a background sync script that is failing to update data. The call and
params along with the response is shown below:

```

insert block of code here

```

Please let me know how to resolve this. We can get over a quick Hangouts call
if necessary.

\----

Select and "toggle markdown" using the extension. Send!

YMMV, but this extension has been a gamechanger for me! Thanks for an awesome
extension! :)

~~~
adam-p
> Thanks for an awesome extension!

You're welcome! (I won't reply to every positive comment, but...)

The impetus for me to create Markdown Here was mostly a) code blocks, b)
nested bullet lists (which are fiddly and hotkey-heavy in a rich editor).
(Brief origin story, fwiw: [http://markdown-
here.com/about.html](http://markdown-here.com/about.html) )

~~~
sillysaurus3
Any chance of creating a Brave extension?
[https://brave.com/](https://brave.com/)

I know probably not, but it's the only browser I use for gmail. It's so
convenient keeping it open in the background, isolated from my main Chrome
browsing workflow. Whenever I get an email I get a nice OSX popup. I know
Chrome can do this too but I restart Chrome like five times a day.

Brave is pretty good, but doesn't get much love. Hopefully it'll catch on
more.

Thanks for your work!

~~~
baby
Do they have tabs on the side?

~~~
sillysaurus3
Nah. Admittedly the tabbing kind of sucks. You can't even tear off tabs into
windows.

Tabbing is an interesting thing... I've always been jealous of Firefox's tree-
style tabs, which are impossible to implement on Chrome. But never quite
jealous enough to give Firefox another shot. Yet.

~~~
luxpir
Try Quantum, in beta until next week. Just trying it now and very impressed:

[https://www.mozilla.org/en-
US/firefox/channel/desktop/#beta](https://www.mozilla.org/en-
US/firefox/channel/desktop/#beta)

~~~
baby
Beware. Tree style tabs has become quite slow on newer Firefox (nightly)

------
adam-p
I'm the author of Markdown Here. And surprised to open HN and see it on the
first page! I can answer any questions (although it's really a straightforward
tool -- it does what it says on the box).

~~~
hayd
Is there a way to use just the markdown -> html so that it can be used for
automated sending e.g. via mandrill/sparkpost?

It looks pretty!

~~~
masukomi
that... just... that doesn't make sense. why would you use a plugin that
converts markdown to html in browser windows to do automated sending. There
have been command line tools to convert markdown to html since the beginning
(literally, first implementation by gruber). Pandoc is probably the go-to one
these days but yeah, that's just.... not the right tool for the job.

------
Sir_Cmpwn
Maybe the answer is to return to sending plaintext emails? HTML emails are an
abomanation. Rather than extend them, just ditch them.

~~~
js2
We have lost this battle, but keep fighting the good fight. We've also lost to
top-posting and JavaScript.

~~~
Spivak
Top posting only won in places where everyone uses Outlook. Mailing lists
still use quoted style.

~~~
lozf
Gmail also had a big hand in the reduction of top posting, by hiding the
quoted message by default (click the little '...' icon to see it).

This means that replies in-line, or below quoted text are instantly hidden and
then you get complaints from the technically challenged who insist the email
you sent was blank.

I tried to educate and fight back for a long time, but too many important
things were lost to those who insist on writing right where the cursor appears
instead of taking a moment to position it thoughtfully, and alas the rest is
history.

~~~
hota_mazi
The fact that Gmail hides the quoted portion actually encourages people to use
top posting more.

Which is a great thing.

I know, not a popular opinion here, but top posting saves a lot of time in
catching up with long email chains.

If you don't agree, pick an old style mailing-list like a Linux kernel
discussion, choose a discussion with 20+ emails in and read it from top to
bottom. You'll quickly realize how exhausting inline quoting is.

~~~
wahern
Less exhausting than reading each of those 20+ emails separately. For any
conversation of substance, you need the relevant context before you can
understand the reply.

If context isn't required, then don't include it. Inline replies act as a
forcing function, directing people to reply to the substance of what was said.
That necessarily includes eliding irrelevant bits, which is often the most
helpful aspect. Neither top posting nor bottom posting help emphasize
substance.

In high quality forums inline posting is extremely useful for both reader and
author. For the Outlook and Twitter set, it's a pointless debate.

~~~
hota_mazi
Either you're part of an active email chain (e.g. happening over a period of a
few hours), in which case you have the context. You don't need to read it over
and over again, so the best place to put it is below the signature. Top
posting wins here.

Or you're catching up on a discussion that happened in the past, reading each
email one after the other. Again, the context is secondary, so the best place
is to put it below the signature. Again, top posting wins.

For these rare emails where specific answers need to be positioned below some
specific context, the writer of the email needs to have the discipline to put
it there, and this can be achieved with top posting as well.

Inline quoting has really no good reason to exist in most email chains.

~~~
fiddlerwoaroof
There are two relevant senses of context: what has already happened in the
email thread and what a given person thinks he is responding to. Top posting
is better for an outsider who is just reading through the thread while inline
replies help the people in the thread understand where a given author is
coming from.

------
zenojevski
I can't praise MailMate[1] enough here: A lean, no-fuss mac email client with
first-party support for Markdown (with syntax highlighting!), and plenty of
other goodies.

Cherry on top, its developer is very active, and keeps a regularly-updated
blog[2], talking about email server quirks and many other interesting
technical bits.

Note that I'm not in any way affiliated with the software – just a very happy
customer.

[1]: [https://freron.com](https://freron.com)

[2]: [https://blog.freron.com](https://blog.freron.com)

~~~
lyonlim
Thanks for sharing! I wanted to get more information, but couldn't find it on
the website (mobile, without downloading), until I found this series of
screencasts.
[https://m.youtube.com/#/watch?list=PLC4ZkBr87CO0jmrQvGQ77t44...](https://m.youtube.com/#/watch?list=PLC4ZkBr87CO0jmrQvGQ77t44tCT-
xklqU&params=OAFIAVgB&v=xJFt952wQGA)

Looks very interesting for power users. Going to check this out!

------
fsargent
Is it really easier to use markdown than bolding things using a keyboard
shortcut?

And tables are downright awful in markdown (or anything barring a full
spreadsheet editor). When would you want to do this by hand?

~~~
JoshTriplett
> Is it really easier to use markdown than bolding things using a keyboard
> shortcut?

Yes, it absolutely is easier to type a few asterisks in running text rather
than selecting text, hitting a keyboard shortcut or clicking a button, and
then going back to typing more text.

~~~
colanderman
Most rich text editors allow bolding running text. "Ctrl+B" vs. "shift-8" are
equal.

(Most rich text editors are poorly implemented and suffer from hidden state,
but that's a separate problem.)

~~~
jhasse
I use Ctrl+B in my browser to open the bookmarks side-panel though.

------
kibwen
For those wondering which of the thousand bespoke dialects of Markdown this
speaks, this project uses marked.js:
[https://github.com/chjj/marked](https://github.com/chjj/marked)

~~~
laurent123456
marked.js has a GFM option, which is what Markdown Here appears to be using:
[https://github.com/adam-p/markdown-
here/blob/dc1454ecb26a951...](https://github.com/adam-p/markdown-
here/blob/dc1454ecb26a95120a8662461c9629911dbc0638/src/common/markdown-
render.js#L77)

I guess these days most projects use GitHub markdown since it's the most
common and with the best documentation.

~~~
kibwen
It's not quite so simple. Markdown's problem is that it's always been pretty
ill-specified. The original GFM was merely an extension to "Markdown", with
its myriad of implementations all with differing behaviors. Even the marked.js
README says that it merely "more or less passes the official markdown test
suite"; which tests doesn't it pass? And what official Markdown test suite is
this referring to ("official" would imply that it's from John Gruber himself,
but the first Google result for "official markdown test suite" doesn't have
Gruber's name on it)?

Of course nowadays we have CommonMark, but despite ongoing activity CM has yet
to have a 1.0 release, meaning that even if one intended to adhere to CM,
ongoing maintenance would be required to ensure compatibility. Given that it
looks as if marked.js last had a release in mid-2015, that would lead one to
assume that it's not trying to follow CM. Furthermore, it was in March of this
year that GFM was officially redefined to be an extension of CommonMark, not
of Markdown: [https://github.github.com/gfm/](https://github.github.com/gfm/)
, so it's unclear which version of GFM marked.js is emulating.

Lest anyone think I'm taking this too seriously though, the project here in
the OP almost certainly doesn't need to care about compatibility. The markup
produced is completely transient, so the worst that would happen upon hitting
an unintended edge case would just be some temporary cursing on the part of
the user. Where it actually matters is when you're storing the markup long-
term and expect to ever want to upgrade your Markdown parser without breaking
everything; for an example of the difficulty here, see how Rust has been
attempting to gracefully upgrade the parser in rustdoc for almost a year now:
[https://internals.rust-lang.org/t/what-to-do-about-
pulldown-...](https://internals.rust-lang.org/t/what-to-do-about-pulldown-and-
commonmark/5115) , [https://github.com/rust-
lang/rust/issues/44229](https://github.com/rust-lang/rust/issues/44229)

------
daptaq
So markdown was inspired by the was emails were formated in plain texts, which
was easily read by humans, just so that eventually through permutations,
variations and abominations people start converting this (onnce) easily
readable syntax into HTML emails?

great.

~~~
TuringTest
That's because browsers don't support native Markdown formatting.

~~~
daptaq
Markdown is it's own formatting environment! All it needs is a constant-width
font, a concept not particularly new to the world of computers.

If there were no downsides to this, and email was build from the first day on
to work with HTML, then this would all be fine, but sadly (or not so sadly)
this isn't the case.

------
bad_user
I love Markdown Here and if the author is reading this — thanks a lot for your
work. I've had a great time using it for years.

I've did had problems with it when using it with FastMail and I hope it gets
fixed at some point. Naturally it's optimized for Gmail first.

Btw folks, webmail isn't the only option. I've been using MailMate
([https://freron.com/](https://freron.com/)), it has baked-in Markdown
support, keyboard shortcuts, plays well with Gmail too and it's awesome.

For messages it's much better to use a client like MailMate instead of a
browser plugin like Markdown Here, because it will properly format and send
multi-part mime messages — your message will be displayed well in both text
and HTML ;-)

PS: I wish an open-source alternative would be as awesome as MailMate, but
alas. On the other hand MailMate is very standards oriented and I don't mind
supporting its author with money.

~~~
abricot
You forgot the small print: MailMate is Mac only.

~~~
bad_user
Yes, sorry, but it's really good, I wish Thunderbird were like that.

------
isaacaggrey
Worth noting: Requires "Access [to] your data for all websites"

On the add-on site, it fortunately does note why:

> Privacy: Markdown Here accesses and modifies web content when you activate
> it. It can, in theory, access other web content, but does not. It also makes
> no Internet requests whatsoever. Your data is modified when and where you
> choose, and does not leave your browser.

Is this a limitation of WebExtension APIs that necessitate this? Perhaps there
is an opportunity for more granular WebExtension APIs.

~~~
duskwuff
This is essentially a limitation of the browser environment itself, not of
WebExtensions. Allowing an extension to inject code into a web page gives that
extension the ability to do anything that the page could do on its own,
including exfiltrating data. I don't see any easy way to prevent this without
severely limiting what the extension can do.

~~~
jhasse
It could at least be limited to gmail.com or the browser could ask for each
domain.

~~~
abricot
You want a confirmation box for every website you access?

~~~
jhasse
The box should only appear when I try to toggle Markdown for the first time
(which I would only do for web mail).

If I understand it correctly, as it is now the extension has access to
everything on every website I visit.

------
myst
What's the point? My plain-text emails are already awesome.

~~~
alkonaut
Images. Formatted text. Syntax highlights in source code snippets.

Html is overkill for these things, but still better at them than plaintext.
Markdown strikes a good balance.

~~~
myst
Images in emails? Are you serious?

~~~
BrandoElFollito
The more I read this thread, the more I think I live in a different universe.

Yes, images, bold, links, colors and font sizes is what I see in all the
emails I get (and send).

I sometimes get the odd plaintext email and wonder why the sender was
punished.

I started using email in 1991. The mail today (with all the civilized
elements) is infinitely better.

------
dalanmiller
> It can:

> * Read and change all your data on the websites you visit

[https://github.com/adam-p/markdown-
here/blob/master/src/mani...](https://github.com/adam-p/markdown-
here/blob/master/src/manifest.json#L19)

Shouldn't this just be email serving domains? e.g.
`[https://mail.google.com`](https://mail.google.com`) et al? Also it'd be
great if the Chrome webstore could offer some verification, so that as long as
I trust Github and Google, I can confirm that the code I see at Github is the
extension I'm installing.

~~~
arkadiyt
Chrome extensions are stored unpacked on your filesystem, it's easy to read
what code is being used. On OSX they're in:

    
    
        ~/Library/Application Support/Google/Chrome/Default/Extensions

~~~
chittti
Here's a script which makes it easier.

[https://gist.github.com/chittti/6f59b53053c44954414ff15d5826...](https://gist.github.com/chittti/6f59b53053c44954414ff15d58265606)

------
alpb
Very neat idea and execution, but I doubt its usefulness. Let me explain what
my thinking would be if I was the developer:

Whatever email client you're using likely has easier/better support for
bold/italics or other forms of text styling very easily, with shortcut keys.
It probably also supports numbered/bullet lists automatically by converting
lines that start with 1., 2., ... or */\- characters, too.

If you think about it, there's not a lot more features of Markdown remaining.
The email client also likely allows easier ways to insert pictures and create
links, too.

This leaves us with:

\- Tables: I suspect anyone actually writes tables in markdown, also the mail
editors probably support this better.

\- Math equations: I suspect anyone actually uses this except academics.

\- Code blocks with syntax highlighting: this seems to be the only useful
feature of the extension.

I also realized the extension does not work on Google Docs, where I was mainly
hoping to use the code formatting feature.

~~~
fny
> I doubt its usefulness

Tell that to the 70k people who use it in Chrome alone.[0] While for you it's
not that useful, I've used it for years now.

I'd say Adam has built the perfect product for the target market.

[0]: [https://chrome.google.com/webstore/detail/markdown-
here/elif...](https://chrome.google.com/webstore/detail/markdown-
here/elifhakcjgalahccnjkneoccemfahfoa)

------
BerislavLopac
I find this nicely ironic, as Markdown was invented as a way to convert the
de-facto standard for writing textual messages (like email and usenet) with
semantic information.

Personally, I have been writing my emails in Markdown for years, as I still
use a fixed-width font even in Gmail (which doesn't have a text-only option,
at least not that I know of).

EDIT: I just checked, and Gmail _does_ have a plain-text option. However, for
double irony, when you select it the font used for the message is not fixed-
width, which pretty much beats the purpose. :-/

~~~
burntsushi
Yeah I hear ya. I used to have a browser extension that let me have a fixed
width font and use plain text mode in Gmail, but I think that stopped working
a couple years ago. These days, if I am writing a long email, I usually just
type it in vim first.

------
carlmr
Would be great if you had this for Outlook. My work emails are where I would
need this the most.

~~~
adam-p
[https://github.com/adam-p/markdown-
here/issues/67](https://github.com/adam-p/markdown-here/issues/67)

I probably won't do it, though. I'm pretty sure I'd have to reimplement the
entire thing in .NET.

------
dfox
I've found out that even business types can understand text/plain emails with
markdown-style formatting, so what exactly is the usecase for this?

~~~
matthberg
While \ _this\_ is understandable, it is a lot less professional than _italic
text_. It's all about presentation, and this is a shortcut to a better
presentation with the same amount of effort.

~~~
dfox
That probably depends on whether you want to convey meaning by formatting of
free flowing text. Professional way to do that is to highlight (highlight, not
make bold, italics or whatever) the parts of your email that constitute the
tl;dr part, even more professional is to simply write your email such that
it's main point is repeated in first and/or last paragraph.

------
fovc
If anyone has set something like this up with emacs, would love to hear about
it. I'm currently using org-mime, but would prefer to use markdown

Edit: 30 seconds of searching led me to here:
[http://tess.oconnor.cx/2008/01/html-email-composition-in-
ema...](http://tess.oconnor.cx/2008/01/html-email-composition-in-emacs)

~~~
kleiba
Just curious: why do you prefer markdown over org?

~~~
fovc
I'm more familiar with markdown, and I think for non-emacs users the plain
text format is more familiar as well

------
ernestipark
This is pretty cool. If the main interface here is to allow you to right click
and transform the text though, does this require permissions to read and
change all data on all your pages? Can the right click menu not only look at
just the highlighted portion? Permissions feel excessive, but not sure if this
is the only way based on how Chrome enables it.

------
ishi
This is fantastic! I tried it in Thunderbird and it works great. Just keep in
mind that math formulas are sent to be rendered via Google Charts - so don't
use this to generate your super-secret cold fusion equations... (as if sending
them by mail would be a great idea to begin with).

------
fny
Cheers to Adam. I've been using the for years--since time the extension was
called "Markdown Anywhere" and had a purple butterfly as the logo and mascot!

My use cases:

\- Sending code, diffs, and equations in emails

\- Copy/paste from other markdown docs

\- Dodging crappy WYSIWGs on some sites

------
timvdalen
I've been using this extension for a while now and I'm really loving it.

Whenever I need to send an email that includes a code sample, Markdown Here
makes it so much better than just slapping a monospaced font on plaintext
code.

~~~
nsomaru
By indenting for you?

~~~
timvdalen
No, it doesn't format the code, but it does support syntax highlighting.

------
hoechst
Been using Airmail for macOS for a few years now. Pretty happy with it, does
formating with Markdown as well.

------
2T1Qka0rEiPr
This is great. I'm often asked to provide data, and have made some helper
methods to return the data in markdown. I then typically have to find a
converter before pasting the results into the email body, so having an
extension to make this easier is great :D

------
matthberg
This looks like a fun TodoMVC equivalent for testing addons, I think I might
try to roll my own!

------
ductionist
I've been using this for a few years now, mainly with FastMail and Gmail. I
can't live without it, especially for sending emails with documentation,
technical instructions, usernames, etc. to customers.

------
gkya
As if HTML email was not an idiotic thing already, you build a tool to create
HTML emails from a text format that was based on the usual formatting of plain
text emails (and also is less portable than assembly).

------
ryanpcmcquen
Such an amazing extension. It makes writing email fun again.

------
mproud
95% of the email I send is unstyled. Occasionally I’ll throw in bold text.
Does this really solve a problem for the everyday man or woman?

~~~
krick
It only makes sense if an email is "unstyled". Thunderbird manages to fuck up
my email layout all the time if I need to add a few lines of preformated text,
occasional bullet list or some highlighting. If I try to write plaintext-only
emails it fucks up RE: and FWD: emails for most normal people. If I use "rich"
text emails with standard settings email client will do everything to fuck
them up and while it will look ok on my screen it will end up with some smart-
ass who uses plaintext-only client whining about me writing shitty formated
emails.

So, I don't know if using this plugin will feel helpful (I doubt it, since
second most used formatting option for me is text-highlighting with color —
indispensable when marking up some airline fare construction quote or
something else cryptic enough, — which markdown doesn't really support), but
the problem it _tries_ to solve definitely exists.

------
4lch3m1st
Does this support ProtonMail? I'm interested, but I'm also a bit paranoid with
my mail privacy.

~~~
adam-p
At last report it works: [https://github.com/adam-p/markdown-
here/wiki/Compatibility#p...](https://github.com/adam-p/markdown-
here/wiki/Compatibility#protonmail)

------
cheez
Doesn't seem to work with fastmail

~~~
adam-p
I just quickly tested and it still seems to work. Make sure you have rich
editing enabled[1]. If it still doesn't work, create an issue with more info.

[1]: [https://github.com/adam-p/markdown-
here/wiki/Compatibility#f...](https://github.com/adam-p/markdown-
here/wiki/Compatibility#fastmail)

~~~
cheez
It seems I needed to reload the page. Works great now, thanks.

------
erikb
I can do that very simply. Just start writing. But please, don't parse that
and send html emails.

------
cujanovic
This is vulnerable to XSS, payload: [Click
Me](javascript:this;alert(document.domain&#41;)

~~~
stevekemp
Or even the more naive "<script>alert(3)</script>" \- which was the second
thing I tried.

------
aendruk
Are there any mail clients that can send with _Content-Type: text /markdown_?

~~~
tbe
That would be nice if it was standard for clients to display text/markdown
rendered as styled text. This would require an actual standard for the
markdown syntax though. Without the rendering, markdown is just text/plain.

Are there any mail clients that will send both the markdown source and the
rendered HTML as a multi-part message?

~~~
jwilk
You can specify Markdown variant in Content-Type.

Source:

[https://tools.ietf.org/html/rfc7763](https://tools.ietf.org/html/rfc7763)

[https://www.iana.org/assignments/markdown-
variants/markdown-...](https://www.iana.org/assignments/markdown-
variants/markdown-variants.xhtml)

~~~
tbe
Ok, good to know, thanks. The point still stands that the receiver's client
_probably_ doesn't bother styling the message. I mean even if GMail, say, was
persuaded to do it, Outlook for instance wouldn't.

------
alexozer
Doesn't seem to work with Google Inbox. Agh.

~~~
selrond
It does not. Here's an Github issue I've created almost 2 years ago...

[https://github.com/adam-p/markdown-
here/issues/327#issuecomm...](https://github.com/adam-p/markdown-
here/issues/327#issuecomment-342757932)

------
j7ake
Does this work through the Apple mail app ?

