Courses & Tutorials

Awesome Scientific Writing – Massive Collection of Resources

Scientific writing can extend beyond LaTeX, made possible by formats,
such as
Markdown (and its many flavours),
reStructuredText and
Jupyter notebooks.

πŸ”– means ability to seamlessly cite references.

πŸ”— means ability to cross-reference figures and sections within the
document
.

Contents

Word Processors

  • Atom – Popular IDE with Markdown support.
  • Marktext – Markdown text editor.
  • R Studio – IDE for R.
    • bookdown – R package to facilitate writing books and long-form articles, reports with R Markdown πŸ”– πŸ”—.
    • R Markdown – R package to write R next to Markdown
      πŸ”–
      πŸ”—.
  • Vim – Command line text editor.
    • fzf-bibtex – BibTeX source
      with Vim integration which uses fzf (a fuzzy finder implemented in Go).
    • vim-pandoc – Pandoc integration and utilities for Vim.
    • vim-pandoc-syntax – Pandoc syntax highlighting for Vim.
  • Visual Studio Code – Popular IDE with Markdown support.
    • Markdown All in One – Extension for enhanced
      Markdown support in VSCode, such as preview and auto completion to name a few.
  • Zettlr – Markdown editor which
    integrates CSL, BibLaTeX, Pandoc and many other tools
    πŸ”– πŸ”—.

Bibliography

Reference managers to generate citations, BibTeX, and BibLaTeX files.

Illustrations

Drawing illustrations themselves has driven many a scientist mad. Fortunately,
there are formal languages with which one can create beautiful graphics.

  • diagrams.net – Open source, online, desktop and
    container deployable diagramming software.
  • graphviz – Visualization software for graphs and
    networks which uses a domain-specific DOT language.
  • Mermaid Live Editor – Define simple diagrams instead of drawing them.
  • Vega Lite – Define charts and more complex diagrams.
  • PlantUML – Define UML diagrams instead of drawing them.

Converters and Filters

Supplementary files and tools.

  • Cicero – Python package which renders HTML presentations
    from Markdown source using remark or reveal.js πŸ”—.
  • docutils – Python package which can
    convert reStructuredText into various formats and provides command-line
    tools to do it πŸ”—.
  • Jupyter Book – A static site generator which converts
    a collection of CommonMark, MyST markdown and Jupyter notebooks into a HTML website.
  • MyST – Markedly Structured Text,
    a superset of CommonMark markdown with reStructuredText like features.
  • nbconvert – Convert Jupyter
    notebooks into reveal.js presentations, PDF, HTML, Markdown,
    reStructuredText and more.

    • bookbook – Experimental Python
      package which extends nbconvert and adds the ability to cross reference
      within and across notebooks πŸ”—.
    • ipypublish – Workflow for
      creating and editing publication ready scientific reports and presentations,
      from one or more Jupyter Notebooks, without leaving the browser πŸ”–
      πŸ”—.
  • pandoc – Haskell library for converting from
    one markup format to another, and a command-line tool that uses this
    library πŸ”– πŸ”—.

    • Academic Markdown – Python wrapper over Pandoc with specialized extensions to parse certain
      elements, making it a superset of Pandoc Markdown flavour πŸ”–
      πŸ”—.
    • Pandoc filters – List of
      addons to pandoc which implement extra features such as citations and
      cross-references.
    • Panflute – Pythonic alternative
      to John MacFarlane’s pandocfilters.

Spell Checking and Linting

Templates

Reusable minimalist examples.

Articles

  • Pandoc Markdown-LaTeX
    Boilerplate
    – Demonstrate
    how to integrate Pandoc with an existing LaTeX template which
    requires some boilerplate code (i.e. LaTeX preamble), thus avoiding the
    latexmk dependency.
  • scientific-markdown – Example
    for use of Markdown for scientific publications using Pandoc and
    latexmk.
  • Steve’s R Markdown Templates – Academic manuscript, memos, Beamer presentation, syllabus and CV.

Presentations

  • pandoc-starter – Templates for
    articles, Beamer presentations etc. using Markdown files and Makefiles for
    getting started with Pandoc.
  • slides – Demo for generating reveal.js
    presentations using Pandoc.

Books

Tutorials

How to generate articles and presentations for scientific purposes.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button