;;; oni-org-init.el --- Org-mode configuration -*- lexical-binding: t; -*- ;; Copyright (C) 2018 Tom Willemse ;; Author: Tom Willemse ;; Keywords: local ;; This program is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with this program. If not, see . ;;; Commentary: ;; My configuration for org-mode. I try to implement a GTD workflow. ;;; Code: (require 'org) (require 'org-bullets) (require 'org-capture) (require 'org-habit) (defun oni-org-init-setup-prettify-symbols-mode () "Set up prettify symbols mode for org mode." (when (member "Ionicons" (font-family-list)) (setq-local prettify-symbols-alist '(("[ ]" . #xf372) ("[X]" . #xf374))) (set-face-attribute 'org-checkbox nil :family "Ionicons") (prettify-symbols-mode))) (setq org-default-notes-file "~/documents/gtd/inbox.org") (setq org-src-fontify-natively t) (setq org-return-follows-link t) (setq org-fontify-whole-heading-line t) (setq org-hide-emphasis-markers t) (setq org-return-follows-link t) (setq org-use-fast-todo-selection t) (setq org-log-into-drawer t) (setq org-agenda-todo-ignore-scheduled 'future) (setq org-agenda-files '("~/documents/gtd/todo.org" "~/documents/gtd/projects.org" "~/documents/gtd/appointments.org")) (setq org-refile-targets '(("~/documents/gtd/todo.org" :maxlevel . 1) ("~/documents/gtd/projects.org" :level . 2) ("~/documents/gtd/someday.org" :maxlevel . 2) ("~/documents/gtd/appointments.org" :maxlevel . 1))) (setq org-capture-templates '(("t" "Note" entry (file "~/documents/gtd/inbox.org") "* TODO %i%?") ("a" "Appointment" entry (file "~/documents/gtd/appointments.org") "* %i%?\n %U"))) (setq org-todo-keywords '((sequence "TODO(t)" "BLOCKED(b@)" "PROGRESS(p)" "|" "DONE(d!)" "CANCELLED(c@)"))) (add-to-list 'org-modules 'org-habit) (add-hook 'org-mode-hook 'auto-fill-mode) (add-hook 'org-mode-hook 'org-bullets-mode) (add-hook 'org-mode-hook #'oni-org-init-setup-prettify-symbols-mode) (provide 'oni-org-init) ;;; oni-org-init.el ends here