Skip to content

Latest commit

 

History

History
330 lines (276 loc) · 13.1 KB

File metadata and controls

330 lines (276 loc) · 13.1 KB

Org setup

Introduction

This file provides details on my current org setup. It is intended as a literate programming approach to structure my org setup. It may work, or it may not (!) but I thought I’d give it a go.

If you want to use some (all) of this setup, you’ll need to change directories appropriately. You can tangle this file to Emacs lisp using C-c C-v C-t, which will create org-setup.el in the same folder as this file. You can then source this in your init.el file.

This setup has been greatly influenced by Gregory Stein (GS) and in turn by Bernt Hansen (BH). You should check out those great resources.

Design Notes

  • Capture templates must be defined outside with-eval-after-load
  • Use expand-file-name (or helper) for all paths
  • Use backquote + comma when embedding evaluated paths
  • Avoid mixing :clock-in nil with :clock-resume t
  • Some completion backends (e.g. citar) must be disabled in capture buffers

Core configuration (no org dependency)

These settings do not depend on Org being loaded and should be defined eagerly.

Function definitions

Function definitions for capture templates and other org-related quality of life adjustments go here.

Constants and settings

Capture setup/templates.

Capture templates are defined eagerly so they are fully constructed before use.

Now combine with other templates. These are stored in a separate (private) repository.

Org runtime configuration (after load)

These settings require Org to be fully loaded.

General org settings

Agenda-specific settings