Presented by:

I've been a fan and user of GNU/Linux since the mid 90s. In my professional career I've been a programmer, systems administrator, and DBA. I really enjoy finding bugs and solving performance problems using a variety of debugging tools and techniques. I also enjoy programming in C, Python, Go, Perl, and Elisp.

When writing about programming or other technical subjects, you’re often weaving blocks of source code, program output, and raw data in with your prose. These supplementary materials are usually copied and pasted into your document from other sources, which can be difficult and tedious to keep up-to-date as things change. Inconsistencies and errors can easily creep in when you “hard-code” dynamic information like program output into your writing.

Wouldn’t it be great if the tool you used for writing knew how to run code in a variety of programming languages, collect and format output, and let you refer symbolically to all this dynamically generated content in your prose? In this talk I’ll demonstrate how to use GNU Emacs’ Org mode to create technical documents that do just that. We’ll explore the features of Babel, Org mode’s literate programming add-on, that makes it convenient to edit, evaluate, and manage embedded code, output, and data all from inside GNU Emacs.

We'll also show how these literate documents can be exported to LaTeX and ultimately PDF format to create professional looking output that looks stunning when printed or viewed.

Note: This is an updated version of the talk I gave at SeaGL 2019 that features new techniques and workflow improvements I've developed over the intervening years.

You can find all the source materials used in this presentation at my GitLab repository.

Date:
2023 November 4 - 14:50
Duration:
50 min
Room:
Room 2
Conference:
SeaGL 2023
Language:
Track:
Languages and Tools
Difficulty:
Introductory

Happening at the same time:

  1. The Future of WebAssembly: Revolutionalizing Computing Across Platforms and Industries
  2. Start Time:
    2023 November 4 14:50

    Room:
    Room 4

  3. Steadfast Self-Hosting
  4. Start Time:
    2023 November 4 14:50

    Room:
    Room 3

  5. Adding feedback to an exercise bike using Linux
  6. Start Time:
    2023 November 4 15:20

    Room:
    Room 3

  7. Trust in an Open Source Community
  8. Start Time:
    2023 November 4 15:20

    Room:
    Room 4