DEV Community

loading...
Cover image for How to write in markdown and benefit from LaTeX styles and features

How to write in markdown and benefit from LaTeX styles and features

instantiator
I'm a senior dev, civil servant, and volunteer. In my spare time I run Police Rewired - a community for volunteer devs, data scientists, and designers. We build tools for public safety.
・2 min read

The things I'll do to avoid learning LaTeX...

Personally, I'd rather not learn LaTeX. I prefer markdown for just about everything these days, as it's so much simpler and more intuitive... but I want my write-ups to benefit from the styles and features that LaTeX offers.

I've built a template and tool to help you do that. It'll give you a bit of structure, you can write markdown across multiple files to help manage and marshal your content, and the output is a single PDF that looks like an authentic LaTeX scientific paper - complete with citations, footnotes, figures and formulae.

You're welcome to use it for your own work, too.

Full details at: instantiator.dev

Read on for a quick summary and steps to getting started...

A template thesis

I've created a template you can use for your own write-up too.

Write your content in markdown, and a dockerised instance of pandoc will build it all into a PDF, in the style of a LaTeX paper. It has support for:

  • A cover page
  • Figures
  • Footnotes
  • Numbered sections
  • Mathematics and formulae
  • Bibliography and citations

A dockerised tool

I containerised pandoc and few other tools so it can run whatever your computing environment. All you'll need is an installation of Docker to get going.

If you're interested to see how it works, check out:

How to get started

  • Ensure you have Docker running.
  • Make a copy of the markdown-thesis-builder template.
  • git clone it to your machine (or download the zip from GitHub).
  • Modify any of the markdown files in the source/ directory.
  • Run: ./build-project.sh

A successful build ends with a line telling you where to find the output PDF:

Output document: source/build/Sample-Project_Your-Name.pdf
Enter fullscreen mode Exit fullscreen mode

See: The sample PDF

Thanks so much for reading. If you found this helpful, or if you have comments, questions, improvements, or issues feel free to let me know!

Full details at: instantiator.dev

Discussion (0)