dotfiles

My personal shell configs and stuff
git clone git://git.alex.balgavy.eu/dotfiles.git
Log | Files | Refs | Submodules | README | LICENSE

commit 59a3fd60bd0f4f6c9991184d267b5c2e7a583ffb
parent 02bde1d8edad4b010e70aab4dffeaec964b71300
Author: Alex Balgavy <alex@balgavy.eu>
Date:   Wed, 26 Jan 2022 12:33:29 +0100

emacs: some renaming

Diffstat:
Memacs/config.org | 27++++++++++++++-------------
1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/emacs/config.org b/emacs/config.org @@ -832,6 +832,12 @@ Where I want to be able to move subtrees (doesn't include inbox because I never (,org-life-reference :maxlevel . 2))) #+end_src +I want to archive to a specific file, in a date tree: + +#+begin_src emacs-lisp + (setq org-archive-location (concat org-life-archive "::datetree/")) +#+end_src + Include the destination file as an element in the path to a heading, and to use the full paths as completion targets rather than just the heading text itself: #+begin_src emacs-lisp @@ -850,11 +856,6 @@ Allow me to tack new heading names onto the end of my outline path, and if I am (setq org-refile-allow-creating-parent-nodes 'confirm) #+end_src -I want to archive to a specific file, in a date tree: - -#+begin_src emacs-lisp - (setq org-archive-location (concat org-life-archive "::datetree/")) -#+end_src *** Quick capture Quick capture lets me send something to my inbox very quickly, without thinking about where it should go. @@ -890,7 +891,7 @@ In ~org-todo-keywords~, ~@~ means note+timestamp, ~!~ means timestamp, ~@/!~ mea I decided that projects will not be TODO items, but their progress will be tracked with a progress cookie ([x/y]). This function converts an item to a project: it adds a PROJECT tag, sets the progress indicator to count all checkboxes in sub-items (only TODO items), and removes any existing TODO keywords. Finally, PROJECT tags shouldn't be inherited (i.e. subtasks shouldn't be marked as projects). #+begin_src emacs-lisp - (defun my-mark-as-project () + (defun za/mark-as-project () "This function makes sure that the current heading has (1) the tag PROJECT (2) the property COOKIE_DATA set to \"todo recursive\" @@ -915,7 +916,7 @@ Define a function to skip items if they're part of a project (i.e. one of their The problem is, the "PROJECT" tag isn't inherited. So, we temporarily disable excluding from inheritance, just for the ~org-get-tags~ call. Then check if "PROJECT" is one of the tags. #+begin_src emacs-lisp - (defun my-skip-if-in-project () + (defun za/skip-if-in-project () "Skip items that are part of a project" (let ((subtree-end (save-excursion (org-end-of-subtree t))) (item-tags (let ((org-tags-exclude-from-inheritance nil)) (org-get-tags)))) @@ -928,7 +929,7 @@ The problem is, the "PROJECT" tag isn't inherited. So, we temporarily disable ex Also, define a function to skip tasks (trees) that are not habits (i.e. don't have the STYLE property ~habit~): #+begin_src emacs-lisp - (defun my-skip-unless-habit () + (defun za/skip-unless-habit () "Skip trees that are not habits" (let ((subtree-end (save-excursion (org-end-of-subtree t)))) (if (string= (org-entry-get nil "STYLE") "habit") @@ -939,7 +940,7 @@ Also, define a function to skip tasks (trees) that are not habits (i.e. don't ha And another function, to skip tasks that are blocked: #+begin_src emacs-lisp - (defun my-skip-if-blocked () + (defun za/skip-if-blocked () "Skip trees that are blocked by previous tasks" (let ((subtree-end (save-excursion (org-end-of-subtree t)))) (if (org-entry-blocked-p) @@ -973,7 +974,7 @@ The first two strings are what shows up in the agenda dispatcher (the key to pre (agenda "" ((org-agenda-overriding-header "Habits:") (org-agenda-span 'day) (org-agenda-use-time-grid nil) - (org-agenda-skip-function 'my-skip-unless-habit) + (org-agenda-skip-function 'za/skip-unless-habit) (org-habit-show-habits t) (org-habit-show-habits-only-for-today nil) (org-habit-show-all-today t))) (todo "NEXT" ((org-agenda-overriding-header "Next actions:"))))) @@ -985,7 +986,7 @@ The first two strings are what shows up in the agenda dispatcher (the key to pre ("f" "Finished tasks that aren't in a project" ((tags "TODO=\"DONE\"" ((org-agenda-overriding-header "Finished tasks:") - (org-agenda-skip-function 'my-skip-if-in-project))))))) + (org-agenda-skip-function 'za/skip-if-in-project))))))) #+end_src @@ -1040,7 +1041,7 @@ I might also want to set ~org-enforce-todo-checkbox-dependencies~, but not convi Time tracking should be done in its own drawer: #+begin_src emacs-lisp - (setq org-clock-into-drawer "CLOCKING") + (setq org-clock-into-drawer "CLOCK") #+end_src I want to set effort in hours:minutes: @@ -1062,7 +1063,7 @@ I want column view to look like this: *** Calculate time since timestamp #+begin_src emacs-lisp - (defun my-org-time-since () + (defun za/org-time-since () "Print the amount of time between the timestamp at point and the current date and time." (interactive) (unless (org-at-timestamp-p 'lax)