src/common/CHANGES.md
Reduced permissions! Previously, when installing you would get a scary warning saying that MDH can "Read and change your data on all websites". It didn't do that, of course, but it was true that it could. Now there's no warning at all, and it only gets permission to act on a page when you click the button (or use the context menu, or the hotkey). This is an important change, but it has resulted in some minor loss of functionality:
Previously, the MDH toolbar button would only enable when focus was in a edit element that could theoretically be rendered (contenteditable). Now that we're not injecting into every page, we can't do that -- the toolbar button is always enabled and must be clicked before MDH is allowed to run anything in the page that can check if the focused element is renderable.
The hotkey/shortcut key is now managed by the browser instead of the extension (necessitated because we now can't pre-inject into pages). But hotkeys that use Ctrl and Alt aren't allowed, so... we have a new default hotkey: Shift+Alt+M. (If you had a custom hotkey, it's been reset to that. Sorry!) You can change the hotkey by going to chrome://extensions/shortcuts
You'll need to re-enable the "forgot-to-render" check option, if you had enabled it. You'll get a prompt allow access to mail.google.com. This will allow MDH to pre-inject code that watches for an attempt to send email that you forgot to render.
Thanks to everyone who has ever donated! Over the last 12 years there have been about 75 donations. I appreciate the support and encouragement.
Updated highlight.js to v11.11.1. This brings support for a lot more languages and themes.
Made LaTeX support disabled by default. Because there are privacy implications to using the feature, it should be opt-in.
Replaced links to our Google Group with links to our GitHub Discussions.
Removed support for Postbox, which stopped allowing third-party extensions a while ago. Also removed support for "Inbox by Google", which stopped existing, like, a long time ago.
Fixed bug #495: Markdown Here stopped working in Thunderbird version 60 (due to changes in Thunderbird).
Fixed bug #435: On some pages, Markdown Here would spew cross-origin exceptions to the console. This was due to MDH trying to determine if a focused iframe-within-an-iframe was renderable.
Fixed bug #427: In Chrome and Firefox (at least for some pages), after rendering the resulting text was selected.
Converted the Firefox version of Markdown Here to use the WebExtensions API. This makes MDH compatible with Firefox's new multiprocess architecture (aka Electrolysis). If you have an older version of MDH installed in Firefox, there will soon be a new release of that version which prompts you to install the new WebExtensions version.
Fixed bug# 369: Clicking Markdown Here's "Options" button in Firefox and Thunderbird (version 48+) causes the client application to hang. (Note that this only applies to the XUL version of the extension.)
Updated jQuery to 3.2.1. This was required to pass Mozilla review.
Wondering why there hasn't been a release in a while? My son was born a month after the last release. This is not a coincidence. You guys, having a kid is a lot of work.
New logo! Created by Austin Anderson and chosen by the Markdown Here users, our great new logo is finally ready for action.
Fixed bug #297: Unrendering an email that is a reply to an email that was itself rendered with MDH would fail (if the original email were visible, like with Thunderbird or when it's expanded in Gmail).
Fixed bug #289: With forgot-to-render detection enabled, sending a large email could result in MDH causing the mail client to hang.
Fixed bug #283: Forgot-to-render detection was broken for Google Inbox. Thanks to Marvin R..
Fixed bug #288: Some character combinations involving a dollar sign in inline code would render incorrectly.
Updated and new translations:
setTimeout workaround to fix slow Chrome Beta caused Firefox to stop working. For some people. Sometimes. (But not in the unit tests. Ha.)
Fixed bug #251: Improved HTML-to-plaintext processing, in order to make newline handling better. Fixes some cases where tables get messed up. Thanks to hchaase.
Fixed bug #241: Rendering was very slow on Chrome Beta and Canary. Thanks to Alex Vaystikh.
Fixed Pale Moon compatibility. Thanks to Ismani Nieuweboer.
Partially fixed bug #104: Pre-rendered links (especially auto-links) in code were getting converted to Markdown when rendering (so you end up with raw Markdown in your code). This is now fixed for backtick-style code (inline and block), but not for indented code blocks.
Updated translations:
Fixed bug #243: Due to the way paragraphs were styled, there appeared to be a "blank line" inserted at the top when your Markdown-Here-rendered your content. The styling was changed to correct this.
Changed styling of sub-ordered-lists to match Github's: Top level is still numbers, first sub level is Roman letters, second sub level is Roman numerals. Will make your email lists look totally pro.
Fixed bug #237: Made Mozilla preferences handling more robust. Helps to deal with non-ANSI characters, synchronization, and corruption.
Added and updated translations:
And thanks to Erin for looking after Wulfie long enough for me to put this release together.
Fixed bug #233: Reference links were broken if the URL part was pre-formatted.
Added forgot-to-render check support for "Inbox by Google".
Updated translations:
Improved compatibilty with screen readers. Much thanks to Sofian Babai for reporting the problem and helping to solve it. The primary fix target was Windows+Thunderbird+NVDA, but if anyone finds any cases where the fix is incomplete, please describe the scenario in the Github issue for it.
Fixed bug #223: Keyboard shortcut was not working in Gmail on Firefox.
Added and updated translations:
TeX math support is now enabled by default (for new users). (Issue #213.)
Fixed bug #141: Markdown Here in Firefox would mysteriously stop working after a while (aka the "ReferenceError: document is not defined" problem). It turns out that opening and closing a new browser window would trigger the bug.
Added support for "retina" (high PPI) displays. The Markdown Here icons should now be nice and crisp. Closes issue #205.
Fixed bug #202: In Options page, Markdown preview wasn't initially rendering.
Updated translations.
Fixed annoying bug #188: Keyboard shortcut was not working in Chrome+Gmail.
With the help of our hard-working translators, six new translations were added. They are: Chinese, French, German, Russian, Spanish, and Turkish.
Updated Highglight.js, which is the syntax highlighting library used by Markdown Here.
js is an alias for javascript, html is an alias for xml, and coffee, cson, and iced are aliases for coffeescript. You can see the complete list here.Added ability to de-render after saving. After you render and save an email draft or an Evernote Note or a Google Group post or a Blogger post (or etc.), you can go back, edit it, and de-render it back to Markdown.
div, there is now a div with its title attribute set to the original MD (base64), containing a zero-width space, and styled to be zero-height. This delightful hack was the best combination of factors that ensured the raw MD would survive.Added a partial Korean translation, thanks to dotvezz.
Added ability to disable GFM line breaks.
Fixed bug #51: Links with URL text (like [http://example.com](http://example.com) weren't rendering properly.
Altered default H1 and H2 header styles to match new GitHub styling. You'll have to click "Reset to Default" to get these styles.
Fixed bug #173: Markdown Here was generating lots of errors in the console on sites with an iframe that use tight security (like jsbin.com). Thanks to Devin Weaver.
Markdown Here has been translated into Japanese! It's also ready to be translated into your language, so please take a look at CONTRIBUTING.md and our Crowdin project. Getting involved is super easy.
The automatic addition of anchors to headings is now an option and disabled by default. Guido Hoermann quite rightly pointed out that it creates annoying visual noise in Thunderbird. It's probably not used enough to justify being enabled by default, and it's very easy to re-enable it (bottom of the options page).
The "forgot-to-render" check that was added in version 2.9.2 is now enabled by default. As always, please file a bug or otherwise report if you have any problems or suggestions for improvement.
Markdown Here now works with older versions of Chrome and Chromium. (Tested on version 24 and 25, which didn't work before but do now.)
Fixed bug: In Chrome, options page link in upgrade notification was no longer working.
Updated Highglight.js, which is the syntax highlighting library used by Markdown Here.
Added some debug logging to help diagnose issue #141. (And maybe fixed that issue, but probably not.)
New feature: Added support for smart arrows. Here's how to use them:
<-- ←--> →<--> ↔<== ⇐==> ⇒<==> ⇔Fixed bug: Options were broken in Safari 7 (the Mavericks version).
Fixed bug: In Thunderbird (mostly), raw HTML was not rendering properly. This is caused another bug: using angular brackets makes contents invisible.
Feature/fix: You may have found out the hard way that if you render, then make changes, and then unrender, you lose the changes. Now Markdown Here will warn you when unrendering will cause you to lose changes, and give you the choice of proceeding or not.
Fixed bug, for real this time: In Chrome, for some users, the Markdown Here upgrade notification would show up every time they opened Chrome.
Fixed bug: Raw Markdown in rendered code blocks is detected by forgot-to-render check.
Fixed bug: In Thunderbird, the new forgot-to-render check was incorrecting triggering on rendered links and headers.
Fixed bug: If a bad language name was used for a code block (where "bad" might even just be "SQL" vs. "sql"), rendering would break. Language name case is now ignored.
Fixed bug: Markdown Here wasn't working on Postbox. Thanks to Branden C. for letting me know.
Fixed bug: In Chrome, for some users, the Markdown Here upgrade notification would show up every time they opened Chrome. (I couldn't reproduce it myself, but the notification display is less aggressive now.)
Fixed bug: In Chrome, memory was leaking. The size of the leak was proportional to the number of tabs and how long they were left open.
New feature: Forgot-to-render detection. Have you ever forgotten to make your Markdown pretty before sending your email? Me too. Now Markdown Here will detect when your email contains raw Markdown and will give you second chance to go back and render it before sending.
Compatibility improvements!
New feature: Automatic anchors for headers. This makes it much easier to put a table of contents (or other intra-page links) inside your email or blog post. Just use the text of your header as the anchor link text. For example:
[See below](#Deep-Dive Details Section) for details.
...
Deep-Dive Details Section
=========================
...
Chrome and Firefox: Options page no longer opens when Markdown Here updates. Now there's a little notification in the corner of the window that can be clicked to show the MDH Options page (and the changes in the release), or dismissed.
Added the ability to set site-specific styles. To see an example of how to do this, either reset your Primary Styling CSS or take a look at the source for it.
Fixed bug: Math: single-character formula won't render.
Fixed bug: [a](b) links shouldn't expand inside of a code block.
Fixed bug: "Smart" quotations and apostrophes would sometimes get confused and curl the wrong way.
Fixed bug: Shouldn't require blank line before list.
Added support for Opera! Get it here.
PLEASE NOTE: If you've never customized your CSS, you should click the "Reset to Default" button for the "Primary Styling CSS". This will fix a bug (see below) and maybe give you better styling (if you installed MDH before version 2.7.0, Feb. 2013). If you have customized your CSS, you can take a look at the changes to the default CSS and decide what to take. A more elegant way of handling this is being planned.
The designer/artist of the Markdown Here logo has her own website up. You should check it out! http://tatianafryntoff.com/
Fixed bug: Pre-formatted links break Markdown links.
Fixed bug: MD links should automatically add schema.
Fixed bug: Firefox/Thunderbird: Code blocks with horizontal scroll would have bad background colour.
Fixed bug: Inline code line breaks are lost.
Fixed bug: Sometimes options page MD preview doesn't initially render.
Markdown Here now supports Safari! Get it here.
Fixed bug in Firefox v23 (current Aurora): Options page wasn't working. (See details.)
Pre-formatted links will now be retained. If you use your email editor's formatting controls to create a link, it will be retained when you toggle the Markdown Here rendering state.
Firefox/Thunderbird: Fixed bug; Resetting the primary stying CSS wasn't working.
Markdown Here has a new logo! A big thank you to the talented Tatiana A. Fryntoff for creating our shiny new logo.
Support for new Markdown features. All credit goes to chjj, the maintainer of the Marked library.
~~strike it out~~).Added a Markdown Toggle button to complement the context menu item and hotkey.
Default styling changes. Note that you'll have to reset your styles to get the new defaults (click "Reset to Default" on the options page). The changes include:
Added a "Basic Usage" section to the options page. This is in response to a tweet from user KSuzukii.
Yahoo and Hotmail/Outlook.com now work a bit better.
Firefox/Thunderbird: Fixed bug: Tabbing into the email body and then Markdown-Toggling via keyboard (i.e., never clicking the mouse in the message body) would result in the email body being lost when sent.
Discovered Wordpress post compatibility, thanks to user Sina Iravanian. (See details.)
Added hot-key (keyboard shortcut) support. The default key combination is <kbd>ctrl</kbd>+<kbd>alt</kbd>+<kbd>m</kbd>, but it is configurable from the Markdown Here options. Using the hot-key is identical to using the "Markdown Toggle" context menu item.
Added basic support for the Postbox desktop email client, at the request of a user. There are some significant caveats, like the lack of an options page.
Fixed bug: Gmail and Thunderbird reply exclusion wasn't working well, resulting in quoted replies getting messed up when doing a full (non-selection) rendering.
Fixed: In Chrome on OS X, right-clicking on a word causes it to be selected. If "Markdown Toggle" were then clicked, it would render just that one word, which is lame. This behaviour is now avoided by not rendering single word selections -- if a single word is selected, the entire content will be rendered instead.
Discovered Evernote web-interface compatibility, thanks to user markgoodson. (See details.)
Added support for TeX math formulae. For info check out the Options page.
Firefox/Thunderbird: Added Options page. (Chrome already had it.) Take a look around and play with the styles.
Added a few new syntax highlighting themes. (Thanks to Highlight.js.)
chrome.storage, previous settings will not be migrated.Changed default styles (e.g., font sizes) to be more relative. This results, for example, in ordinary Markdown-Here-rendered text looking more like ordinary Gmail text instead of the previous somewhat jarring size change.
Chrome: Options page with changelist at top will be opened when Markdown Here updates.
Significant changes under the hood to (hopefully!) allow Markdown Here to properly pass a full Mozilla review. For details, see issue #21.
Fixed bug: Empty line would appear at the top of rendered fenced code blocks that had been pasted.
Removed feature/fixed bug: Pre-formatted links are no longer left intact. It conflicted with Marked.js's GFM behaviour of turning text that looks like a URL into a link. So if a pre-formatted link was created that used the URL as the text (e.g. <a href="http://github.com">http://github.com</a>), the resulting rendering would get messed up (<a ...><a ...>...</a></a>).
Chrome: Added styling options. You can now edit the CSS used to style the rendered Markdown and choose between various syntax highlighting themes. These options are synchronized between your different installations of Chrome (if you have it enabled in Chrome).
Removed feature: Pre-formatted text (colours, italics, bold, etc.) and lists (made using the email client rich edit controls, for example) are no longer left intact. It just caused too many problems and special cases (and would have required more special cases to get working again in Yahoo). Links are left intact.
There are still two ways to still get additional formatting:
In your Markdown, you can use <span> or <b>, etc., to explicitly style your text. For example:
Here is some <span style="background-color:red; font-size:2em;">*big red*</span> highlighting.
If you find you use inline tags with complex styles a lot, edit the CSS in the options to add a class that you can reuse for your inline tags. For example, in the CSS add:
.bigred {
background-color: red;
font-size: 2em;
}
And then in your Markdown:
Here is some <span class="red">*big red*</span> highlighting.
It saddens me to remove out this feature, but I think it's essentially creeping featurism that has a higher bug-danger-cost than it has an actually-useful-benefit. If this feature is/was important to you, please create an issue to let me know.
Works with Google Groups posts! You can use it either in the GG rich compose box, or when sending posts via email.
Added support for inline, pre-rendered images. Some email editors allow the user to drag-and-drop an image into an email body, and some allow users to select one from their computer or the web (or an emoticon in the email compose controls!). Previously, the image would be lost when a "Markdown Toggle" was done. Now the image will be retained.
Pre-formatted text (colours, italics, bold, etc.), links, and lists (made using the email client rich edit controls, for example) are now left intact when rendering the Markdown.
Added ability to convert a reply email in its entirety, rather than using the select-and-convert piecemeal approach.
Some styling changes.
Bug fixes.
Created a Markdown cheatsheet: https://github.com/adam-p/markdown-here/wiki/Markdown-Here-Cheatsheet
Syntax highlighting! Coloured monospace text is super sexy.
Email signatures are now excluded from conversion. Signatures must be preceded by "-- " (note the space at the end).
Fixed block quotes.
Much improved table and definition list styling.
Better styling and consistency across browsers and mail clients.
Firefox/Thunderbird: "Markdown Toggle" menu item will show up for non-rich-edit elements, but an error message will be given if the item is clicked. Hopefully this will help people notice that they're not using a rich editor, instead of wondering where the menu item is.
Chrome: If the "Markdown Toggle" menu item is clicked for a non-rich-edit element, a helpful error message will be shown.
Fixed bug: Significant trailing spaces were being stripped. This was breaking the Markdown syntax feature of two spaces at the end of the line indicating a hard line break.
Changed context menu access key to 'k'. Previously, Chrome had no access key and Firefox/Thunderbird had the more-common letter 'm'.
Other minor bugfixes.
Chrome: Fixed manifest. Using manifest version 2 worked in debug, but not when published to the Store. Had to delete original Store extension in the process. :(
Chrome: Updated manifest home page link to new Store address.
Added Thunderbird support to Firefox extension.
Tightened security restrictions in Chrome extension.
Added Firefox extension.
Chrome version: Moved most rendering code out of content scripts and into background scripts. This means less code needs to be loaded with each page. (The Firefox version also more or less behaves like this.)
<style> block, so styles are now also set explicitly on each element. Gmail works great now.