Now that we are loading package autoloads files (as part of the generated doom-package-autoload-file when running make autoloads), many :commands properties are redundant. In fact, many def-package! blocks are redundant. In some cases, we can do without a config.el file entirely, and can move into the autoloads file or rely entirely on package autoloads. Also, many settings have been moved in their module's autoloads files, which makes them available ASAP; their use no longer depends on module load order. This gained me a modest ~10% boost in startup speed. |
||
---|---|---|
.. | ||
autoload | ||
test | ||
+attach.el | ||
+babel.el | ||
+capture.el | ||
+export.el | ||
+present.el | ||
config.el | ||
packages.el | ||
README.org |
: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
anddvipng
. - 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)