Files
doomemacs/modules/lang/org
Henrik Lissner 78cb47a072 lang/org: lazy-load babel libraries
Removes +org-babel-languages and no longer eagerly loads babel
libraries. If an ob-*.el exists for the language, it will be loaded once
you execute its src block.

Warning: this may interfere with tangling. An unloaded library can't
register a language extension in org-babel-tangle-lang-exts (if any).
This means babel won't be able to figure out the correct file extension
for certain src blocks.

Either load the package explicitly or provide a filename + extension for
the TARGET-FILE argument:

  (require 'ob-rust)
  (org-babel-tangle-file "notes.org")
  ;; or
  (org-babel-tangle-file "notes.org" "notes.rs")
2018-01-28 15:45:31 -05:00
..
2018-01-28 15:45:31 -05:00

:lang org

This module provides support for org-mode.

  • A custom attachment system that keeps files in a centralized location.
  • Drag-and-drop support for images (with inline preview) and media files (drops a file icon and a short link).
  • Executable code blocks with support for a variety of languages and tools, including REST requests, SQL, google translate, plantuml, and matlab.
  • An org-capture workflow that works from outside Emacs (through the bin/org-capture shell script).
  • Exported documents are saved to a centralized location.
  • A configuration for using org-mode for slide-show presentations, or exporting org files to reveal.js slideshows.
  • (TODO) A static site generator based in org-mode and Emacs.

org-mode is a beast, and Doom's most difficult module to maintain. And its most important. This module is highly opinionated and experimental; my foray into learning org is a neverending quest.

Table of Contents   TOC

Install

Org has no hard dependencies, but there are some things you'll need to make use of Org's more esoteric features.

  • For inline LaTeX previews, you need latex and dvipng.
  • To run babel code blocks, you need whatever dependencies those languages need. It is recommended you enable the associated module in lang/ and ensure its dependencies are met.
  • The +crm module uses a sqlite database to manage your contacts, invoices, and projects; this needs sqlite installed.

MacOS

brew cask install mactex
brew install sqlite

Arch Linux

sudo pacman --needed --noconfirm -S texlive-core texlive-bin texlive-science sqlite

Configuration

(Coming soon)

Usage

(Coming soon)

Appendix

(Coming soon)