# HG changeset patch # User Richard Westhaver # Date 1726876807 14400 # Node ID 6e53b8dc7795fddd9a204617abf73b975535b854 # Parent 65bf0057ca359b7facfcbbe6609fda450edccae3 bump diff -r 65bf0057ca35 -r 6e53b8dc7795 babel.org --- a/babel.org Fri Sep 13 21:21:53 2024 -0400 +++ b/babel.org Fri Sep 20 20:00:07 2024 -0400 @@ -294,12 +294,11 @@ * skel-show :skel: #+name: skel-show -#+begin_src shell :var key=":id" :results replace - echo $(skel show $key) +#+begin_src shell :var key="id" :results replace + skel show $key #+end_src #+RESULTS: skel-show -: 15bc-b763-ec92-1cf5 #+RESULTS: : (core lisp rust emacs c) @@ -399,10 +398,10 @@ (age (org-sbe hg-log-age ''(dir root))) (rev (org-sbe hg-rev ''(dir root))) (num (org-sbe hg-id-num ''(dir root))) - (tags (org-sbe skel-show (key "':tags'"))) + (tags (org-sbe skel-show (key "'tags'"))) (id (org-sbe skel-show (key "':id'") ''(dir root))) - (version (org-sbe skel-show (key "':version'") ''(dir root))) - (description (org-sbe skel-show (key "':description'") ''(dir root))) + (version (org-sbe skel-show (key "'version'") ''(dir root))) + (description (org-sbe skel-show (key "'description'") ''(dir root))) (vc (format ":%s [[https://vc.compiler.company/%s][vc.compiler.company/%s]] :rev %s" vc-type name name (format "[[https://vc.compiler.company/%s/rev/%s][%s:%s]]" name rev rev num))) @@ -478,14 +477,40 @@ * project-tasks :project:org: List all project tasks. #+name: project-tasks -#+begin_src emacs-lisp :results replace - `((todo item tags scheduled deadline effort) - hline) +#+begin_src emacs-lisp :results replace :var project="." + (let ((name (project-name (project-current nil project))) + (hdr (list '(todo item tags scheduled deadline) + 'hline)) + (tbl)) + (save-excursion + (with-current-buffer (find-file-noselect + (join-paths company-org-directory + "plan/tasks/" + (format "%s.org" name))) + (org-with-wide-buffer + (org-map-entries (lambda () + (let ((row)) + (push (or (org-get-todo-state) "") row) + (push (org-get-heading t t t t) row) + (push (or (remove name (org-get-tags)) "") row) + (push (if-let ((ts (org-get-scheduled-time (point) t))) + (format-time-string (cdr org-timestamp-formats) ts) + "") + row) + (push (if-let ((ts (org-get-deadline-time (point) t))) + (format-time-string (cdr org-timestamp-formats) ts) + "") + row) + (push (nreverse row) tbl))) + "TODO<>\"DONE\"" nil) + ))) + (append hdr (nreverse tbl)) + ) #+end_src #+RESULTS: project-tasks -| todo | item | tags | scheduled | deadline | effort | -|------+------+------+-----------+----------+--------| +| todo | item | tags | scheduled | deadline | +|------+------+------+-----------+----------| * env-table :os: :PROPERTIES: