aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAshton Wiersdorf <ashton.wiersdorf@pobox.com>2023-01-05 23:36:58 -0700
committerAshton Wiersdorf <ashton.wiersdorf@pobox.com>2023-01-05 23:36:58 -0700
commit8b3fc0d5350c34500bcfa13f521af01a91a3e7fb (patch)
treea98f54ad36362086f1c93461839ade57715e92a8
parent3d9afbb0667aec431cf8210d885ec75b767999c7 (diff)
Start work on an org-mode mixin
-rw-r--r--mixins/org.el105
1 files changed, 105 insertions, 0 deletions
diff --git a/mixins/org.el b/mixins/org.el
new file mode 100644
index 0000000..a31b6fe
--- /dev/null
+++ b/mixins/org.el
@@ -0,0 +1,105 @@
+;;; Emacs Bedrock
+;;;
+;;; Mixin: Org-mode starter config
+
+;;; Usage: Append or require this file from init.el for some software
+;;; development-focused packages.
+;;;
+;;; Org-mode is a fantastically powerful package. It does a lot of things, which
+;;; makes it a little difficult to understand at first.
+;;;
+;;; We will configure Org-mode in phases. Work with each phase as you are
+;;; comfortable.
+
+;;; Contents:
+;;;
+;;; - Critical variables
+;;; - Phase 1: editing and exporting files
+;;; - Phase 2: todos, agenda generation, and task tracking
+;;; - Phase 3: extensions (org-roam, etc.)
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;;
+;;; Critical variables
+;;;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+;;; These variables need to be set for Org-mode's full power to be unlocked!
+;;;
+;;; You can read the documentation for any variable with `C-h v'. If you have
+;;; Consult configured (see the `ui.el' file) then it should help you find what
+;;; you're looking for.
+
+;;; Phase 1 variables
+
+;; Advanced: Custom link types
+;; This example is for linking a person's 7-character ID to their page on the
+;; free genealogy website Family Search.
+(setq org-link-abbrev-alist
+ '(("family_search" . "https://www.familysearch.org/tree/person/details/%s")))
+
+;;; Phase 2 variables
+
+;; Agenda variables
+(setq org-directory "~/Documents/org/") ; Non-absolute paths for agenda and
+ ; capture templates will look here.
+
+(setq org-agenda-files '("inbox.org" "work.org"))
+
+;; Default tags
+(setq org-tag-alist '(
+ ;; locale
+ (:startgroup)
+ ("home" . ?h)
+ ("work" . ?w)
+ ("school" . ?s)
+ (:endgroup)
+ (:newline)
+ ;; scale
+ (:startgroup)
+ ("one-shot" . ?o)
+ ("project" . ?j)
+ ("tiny" . ?t)
+ (:endgroup)
+ ;; misc
+ ("meta")
+ ("review")
+ ("reading")))
+
+;; Org-refile: where should org-refile look?
+(setq org-refile-targets 'FIXME)
+
+;;; Phase 3 variables
+
+;; Org-roam variables
+(setq org-roam-directory "~/Documents/org-roam/")
+(setq org-roam-index-file "~/Documents/org-roam/index.org")
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;;
+;;; Phase 1: editing and exporting files
+;;;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+(use-package org
+ :hook ((org-mode . visual-line-mode) ; wrap lines at word breaks
+ (org-mode . flyspell-mode)) ; spell checking!
+
+ :bind (:map global-map
+ ("C-c l s" . org-store-link) ; Mnemonic: link → store
+ ("C-c l i" . org-insert-link-global)) ; Mnemonic: link → insert
+ )
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;;
+;;; Phase 2: todos, agenda generation, and task tracking
+;;;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;;
+;;; Phase 3: extensions (org-roam, etc.)
+;;;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+