MacDown 0.2.3: PDF and Printing


MacDown 0.2.3 is the third bug-fixing release for 0.2, plus a few extra goodies. The main “thing” in this release are fixes and improvements for printing PDF generation and support.

PDF Export

From pretty much the beginning of the first MacDown release, there have been suggestions for adding a “Export to PDF” menu item to go along with the existing “Export to HTML” one. Those were rejected, mainly because macOS has PDF generation built-in. If you navigate to File → Print…, you will find a “PDF” button at the bottom left corner, and clicking it reveals a few options…

PDF options in macOS Print dialog.

…including Save as PDF. This can be used to export PDF, so there really is no need for individual macOS applications (as long as they use the system printing dialog) to implement a seperate export option, unless they provide additional export options, such as those provided by Pages, Keynote, etc..

But I was a little surprised when I get asked again. And again. And there’s a pull request about it. And then there is a review with this line:

Mou can export as PDF and HTML but Macdown can export in HTML format only.

(Side note: Please spell the application name as MacDown, with a capital D, not Macdown.)

Aside from the “one click is better than three” argument (which makes much sense), the most surprising part of people requesting this feature is that most people don’t seem to know that such feature exists in macOS. Which is the main reason that MacDown will from now on include the new Export menu:

New Export menu in MacDown 0.2.3.

The PDF export works similarly as its HTML counterpart, but will always match styles in the preview, without the CSS and syntax highlighting options. Speaking of which…

Other Improvements

The HTML export options now have more sensible defaults, based on current application preferences. This should make exporting routines easier.

And if you’re more into copying content directly from preview, instead of exporting the whole file, copy-pasting to web browsers (other than Safari, which already works) should now preserve styles in the preview.

The bundled Prism is also upgraded, meaning that you’ll get more language definitions for syntax highlighting, including Haskell, LaTeX, and Twig. I’ll update the full language list on the site later; you can also check out Prism’s documentation.