Welcome to part 2 of a 3-part series on Markdown. If you haven’t read the first post in this series, you can do so here.

In this post, we dive into the workflow of writing, viewing, and publishing Markdown. Let’s get started.

Writing Markdown

All you really need is a text editor, any text editor. My preference happens to be Visual Studio Code – one reason is because I use both Windows and macOS, and Code is available for both platforms (and Linux too). But you could use Atom, Notepad++, UltraEdit, Sublime Text, or BBEdit. Even robust IDEs like those from JetBrains or NetBeans are fine. I think you get the idea, your editor doesn’t matter.

Your text editor of choice might even have built-in or probably has plug-ins available to enable features to make writing in Markdown easier. For example, when you highlight a word and hit control-B, the syntax for bold will be automatically wrapped around word. Visual Studio Code’s community of users have built plug-ins that adds these features. The one that I use is Markdown Shortcuts.

Viewing Markdown

OK, so now you have a document in your text editor with all the syntax to add formatting, now what? Think back to Markdown’s origins, the document was intended to be viewed as an article on a web page. That means your document needs to be parsed and converted into raw HTML. I’m going to skip the details about this. Suffice it to say, whether you are publishing for the web, viewing in an external viewer, or want to print to PDF, the conversion process is done for you and is transparent.

My editor of choice, Visual Studio Code, has a built-in viewer so that I can see a formatted version of what I’m writing in real-time. As with extension for writing, Code also has Markdown extensions written by the community to enhance the viewing experience. Your editor of choice likely has similar options available too.

Publishing Markdown

Most of my documentation ends up as a PDF. Because I work across platforms in Visual Studio Code, I wanted one way/tool to get from my plain text document to a formatted, PDF version. To do this, I use an extension available for Code called Markdown PDF. This extensions handles the conversion from Markdown to raw HTML to PDF, all from a right-click menu that the extension adds to Code. The extension also has other customizable features, such as adding a header/footer, or adding page numbers.

Farewell, for now

Two parts down, one to go. In the final post in this series we’ll dive into the Markdown syntax so you can begin writing your documents using Markdown.