Skip to content

vedang/org-mode-crate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Org Mode Crate

This repository contains my configuration for Org Mode.

I’ve strived to make this configuration super simple to install and use, if you face any problems please open an issue and let me know about it.

Caveats

  • This configuration is ONLY known to work with Emacs 27.2 and above. You are on your own with older versions of Emacs.
  • This configuration requires Org Mode 9.4 and above.

Install

Manual Install

Get the code:

$ git clone git://github.com/vedang/org-mode-crate.git /path/to/org-mode-crate

Add the following lines to your .emacs

(add-to-list 'load-path "/path/to/org-mode-crate/")
(setq org-directory "/path/to/org-files-dir")
;; Agenda does not have a key-binding by default.
;; Provide one as a starting point.
(global-set-key (kbd "<f12>") 'org-agenda)
(require 'org-mode-crate)

Press F12 to get started with your agenda

Install via Melpa

Install via El-Get

Install in DOOM emacs

;; in packages.el
(package! org-mode-crate
  :recipe (:host github :repo "vedang/org-mode-crate"))
;; in config.el
(use-package! org-mode-crate
             :init (global-set-key (kbd "<f12>") 'org-agenda)
             :config (require 'org-mode-crate))

Workflow notes

  • Create and maintain as many files in your org-directory as you want.
  • Currently, I don’t handle recursively loading org files, so your org-directory should be a flat structure.
  • Tasks are categorized as follows:
    • Important tasks: These tasks should be tagged with important.
    • Next tasks: In any given project, tag the next thing you want to do with the tag next. You can have many next tasks, but ideally you should have only one. Whenever a task goes into WORKING state, it automatically gets the next tag. Moving to any other state automatically removes this tag.
  • The following hotkeys are provided for quick tagging:
(setq org-tag-alist
      '(("next" . ?x)
        ("notes" . ?n)
        ("important" . ?i)
        ("action_items" . ?a)
        ("joy" . ?j)
        ("waiting" . ?w)))

Optional notes

  • You can use the convenience function `bh/punch-in’ (bound to <f9> i) to clock in a predetermined default task. All you need is the following one time setup:
    • Go to the org-task you want to use as the default task.
    • Give this task an org-id by running the function org-id-get-create
      M-x org-id-get-create
              
    • Copy the ID (stored in the task properties) and add the following line above (require 'org-mode-crate)
      (defvar bh/organization-task-id "<task_id>")
              
  • Now when you start org-mode, you can press <f9> i to clock in the default task.

About

Plug and play org-mode configuration. Based on my workflow, which in turn is based on Bernt Hansen's incredible tutorial "Organize your life in plain text" (http://doc.norang.ca/org-mode.html)

Resources

Stars

Watchers

Forks

Packages

No packages published