summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2025-09-03 14:25:13 -0500
committerCraig Jennings <c@cjennings.net>2025-09-03 14:25:13 -0500
commit70f3358ddfcbb3985270c99fdaefe7e0b19bc3df (patch)
tree13acada5368e7269ce74d69961ea1d07dca8efa1
parentda650a763100a3d35e07c944e6405ebfc963d36e (diff)
downloaddotemacs-70f3358ddfcbb3985270c99fdaefe7e0b19bc3df.tar.gz
dotemacs-70f3358ddfcbb3985270c99fdaefe7e0b19bc3df.zip
updated tasks
-rw-r--r--todo.org294
1 files changed, 115 insertions, 179 deletions
diff --git a/todo.org b/todo.org
index f912ee11..e1d52c8a 100644
--- a/todo.org
+++ b/todo.org
@@ -1,5 +1,5 @@
* Emacs Open Work
-** DOING [#A] Jumper Package
+** DOING [#A] Jumper Package :enhancement:
*** Specification
**** variable:custom: jumper-max-locations
maximum number of locations to store: default 10
@@ -110,7 +110,7 @@ Depending on context, can I add the
- First few words of the line
Do we think the reordering behavior when deleting locations might confuse users? How to simplify?
What happens if a buffer is deleted that doesn't have a file associated with it? If we're using registers underneath, how do registers handle this?
-** DOING [#A] Org Roam and Org Template Fixes
+** DOING [#A] Org Roam and Org Template Fixes :bug:
*** TODO [#B] Org Branch to Org Roam
*** TODO [#B] Add Org Capture Template for Vocabulary Words
*** DONE [#B] Fix Emacs Org Roam Template Errors
@@ -139,9 +139,9 @@ The file was created, but does not come to the front
The category value seems unaligned
*** DONE [#A] Add Org Templates Back to Emacs Repository!
CLOSED: [2025-09-01 Mon 12:51]
-** TODO [#A] AI-Config: GPTel Add Ability to Save and Reload Conversations
-** TODO [#A] Custom Function: Delete Whitespace From Region is Broken
-** TODO [#A] Mu4e Fixes
+** TODO [#A] GPTel Add Ability to Save and Reload Conversations :enhancement:
+** TODO [#A] Custom Function: Delete Whitespace From Region is Broken :bug:
+** TODO [#A] Mu4e Fixes :bug:
*** DONE [#A] mu4e contacts not expanding on forwarding emails
CLOSED: [2025-08-29 Fri 16:09]
removed org-contacts functionaality and it returned!
@@ -149,9 +149,10 @@ removed org-contacts functionaality and it returned!
CLOSED: [2025-08-30 Sat 12:12]
https://github.com/jeremy-compostella/org-msg
*** TODO [#A] Fix org-contacts functionality
-** TODO [#A] file-config.el cj/xdg-open blocks Emacs process
+** TODO [#A] Add "save all attachments" to mu4e :enhancement:
+** TODO [#A] file-config.el cj/xdg-open blocks Emacs process :bug:
Should change to non-blocking -- maybe use Emacs internal async?
-** TODO [#A] Make org mode buffers swap with shift-meta
+** TODO [#A] Make org mode buffers swap with shift-meta :enhancement:
(org-shiftmetaright) should be overridden with (buf-move-right)
(org-shiftmetaleft) should be overridden with (buf-move-left)
@@ -187,25 +188,6 @@ Without knowing your specific pain points, I'll recommend several high-value imp
*** Recommended Code Changes
-**** 1. Enhanced Command Completion with =pcomplete= and =company-mode=
-
-#+begin_src emacs-lisp
-;; Better completion for eshell
-(use-package pcmpl-args
- :after eshell)
-
-;; Company mode integration for eshell
-(use-package company-shell
- :after (eshell company)
- :config
- (add-to-list 'company-backends 'company-shell)
- (add-hook 'eshell-mode-hook
- (lambda ()
- (setq-local company-minimum-prefix-length 2)
- (setq-local company-idle-delay 0.1)
- (company-mode 1))))
-#+end_src
-
**** 2. Improved Directory Navigation with =eshell-z=
#+begin_src emacs-lisp
@@ -217,29 +199,6 @@ Without knowing your specific pain points, I'll recommend several high-value imp
#+end_src
-**** 3. Better History with =eshell-up= and Enhanced History Search
-
-#+begin_src emacs-lisp
-(use-package eshell-up
- :after eshell
- :config
- (defalias 'eshell/up 'eshell-up)
- (defalias 'eshell/up-peek 'eshell-up-peek))
-
-;; Enhance history searching
-(defun cj/eshell-history-search ()
- "Search eshell history with completion."
- (interactive)
- (insert
- (completing-read "Eshell history: "
- (delete-dups
- (ring-elements eshell-history-ring)))))
-
-(add-hook 'eshell-mode-hook
- (lambda ()
- (define-key eshell-mode-map (kbd "C-r") 'cj/eshell-history-search)))
-#+end_src
-
**** 4. Directory Tracking and Shell Command Execution Improvements
#+begin_src emacs-lisp
@@ -273,11 +232,6 @@ If region is active, use that, otherwise use the current line."
**** 5. Enhanced Visual Output and ANSI Colors
#+begin_src emacs-lisp
-;; Improve how eshell handles ANSI escape sequences
-(use-package eshell-syntax-highlighting
- :after esh-mode
- :config
- (eshell-syntax-highlighting-global-mode +1))
;; Better handling of visual commands
(defun cj/eshell-exec-visual-and-kill ()
@@ -373,109 +327,9 @@ If region is active, use that, otherwise use the current line."
(error "Not in a project"))))
#+end_src
-*** Explanation of Key Improvements
-
-1. *pcmpl-args*: Provides better argument completion for command-line tools.
-
-2. *company-shell*: Brings Emacs' powerful completion framework to eshell with support for commands, environment variables, and more.
-
-3. *eshell-z*: Implements z/autojump functionality, allowing you to jump to frequently visited directories with minimal keystrokes.
-
-4. *eshell-up*: Makes navigating up directories easier with the =up= command.
-
-5. *History searching*: The custom function provides interactive history searching with completion.
-
-6. *Directory tracking and buffer naming*: Renames eshell buffers to include the current directory, making multiple eshell sessions easier to manage.
-
-7. *Layout improvements*: The smart window splitting function determines the best way to display eshell based on your current window configuration.
-
-These enhancements should make your eshell experience more productive while maintaining the flexibility and integration with Emacs that makes eshell valuable.
-
** TODO [#B] Add All ERT Tests Into Separate Directory
Tests should be added to a separate directory rather than the end of each elisp file.
Gather them together, move them there, and make it easy to run tests per module and workflow.
-** TODO [#B] Get Tufte.css working and as a separate entry
-Below is one way to get Org-mode’s HTML exporter to play nicely with Tufte-CSS. The basic recipe is:
-
-1. Inject Tufte’s stylesheet into every HTML export
-2. Teach Org to emit the little “margin-toggle” + “sidenote” markup that tufte.css expects for footnotes
-3. (Optionally) wrap images in <figure> so you get tufte-style captions out of the box
-
-Along the way you’ll see where Org’s default HTML‐classes line up with tufte.css and where you have to override them.
-
-— 1 Inject tufte.css into your exports
-Put tufte.css somewhere your exported HTML can see it (for example
-~/.emacs.d/assets/tufte.css or a URL on your webserver). Then in your init.el:
-
-(with-eval-after-load 'ox-html
-;; 1a) tell Org to link in your tufte.css
-(setq org-html-head-extra
-"<link rel=\"stylesheet\" href=\"/assets/tufte.css\" type=\"text/css\"/>")
-;; 1b) enable HTML5 “fancy” output (so you get <figure> around images)
-(setq org-html-html5-fancy t
-org-html-inline-images t))
-
-— 2 Turn Org footnotes into Tufte sidenotes
-By default Org emits
-<sup class=…><a href="#fn:1" id="fnref:1">[1]</a></sup>
-…and then a big =<div id="footnotes">= at the bottom.
-
-Tufte-CSS wants each footnote inline, wrapped in
-<label class="margin-toggle">⊕</label>
-<input type="checkbox" class="margin-toggle"/>
-<span class="sidenote">…your note…</span>
-
-We can override two Org variables:
-
-(with-eval-after-load 'ox-html
-;; format of each inline footnote reference
-(setq org-html-footnote-format
-(concat
-"<label for=\"%1$s\" class=\"margin-toggle\">"
-"&#8853;</label>"
-"<input type=\"checkbox\" id=\"%1$s\" class=\"margin-toggle\"/>"
-"<span class=\"sidenote\">%2$s</span>"))
-;; drop Org’s default footnote list at the end
-(setq org-html-footnote-separator ""))
-
-Once you do that, exporting an Org file with footnotes will generate the markup tufte.css needs to float them in the margin.
-
-— 3 (Optionally) get <figure> + <figcaption> around images
-If you set =org-html-html5-fancy= to t (see step 1) Org will automatically emit:
-
-<figure>
-<img src="…"/>
-<figcaption>Your caption</figcaption>
-</figure>
-
-and tufte.css already has rules for =<figure class="figure">= etc.
-
-— 4 Common pitfalls
-• Make sure your href in =org-html-head-extra= actually points to the css that the browser can load (absolute vs. relative).
-• If you still see a “Footnotes” section at the bottom, double-check that =org-html-footnote-separator= is set to the empty string and that your init-file got re-evaluated.
-• On Windows or if you’re testing locally, run e.g. =python3 -m http.server= inside your export folder so your browser can fetch the CSS.
-
-— 5 Unit test for your footnote hack
-Drop this in =~/.emacs.d/tests/test-org-tufte.el= and run =M-x ert RET t RET=:
-
-(require 'ert)
-;; load your config; adjust the path if necessary
-(load-file "~/.emacs.d/init.el")
-
-(ert-deftest org-tufte-footnote-format-test ()
-"Ensure each footnote reference becomes a margin-toggle + sidenote."
-(let/ ((id "fn:42")
-(content "My note.")
-(html (format org-html-footnote-format id content)))
-(should (string-match-p "class=\"margin-toggle\"" html))
-(should (string-match-p "<span class=\"sidenote\">My note\\.</span>" html))
-;; it must not accidentally reintroduce Org’s bottom-of-page footnote div
-(should-not (string-match-p "div id=\"footnotes\"" html))))
-
-Once that test passes, you know your footnotes are being rewritten into Tufte-style side notes. From there, you can sprinkle in additional filters (e.g. wrap =<blockquote>= in a =.sidenote= class, override list/p table styles, etc.) or just let the rest of tufte.css style Org’s default tags (h1, p, ul, table, code, etc.).
-
-Enjoy your beautifully-typeset Org → HTML exports in true Tufte style!
-
** TODO [#B] Org Agenda Work
*** TODO [#B] Add Past Due to F8 Agenda Summary in Emacs
*** TODO [#B] Separate B and C in F8 Agenda Summary in Emacs
@@ -886,24 +740,6 @@ This appears to work with emacs -q. What's up with your config?
Captured On: [2025-06-07 Sat 13:29]
** TODO [#C] Emacs Change Appropriate Use-package Installs to :vc
especially where you're cloning them to provide fixes
-** TODO [#C] Emacs: Add Reverso Functionality
-https://sqrtminusone.xyz/packages/reverso/
-check his config for a usage example
-
-Reverso
-
-reverso.el is a package of mine that provides Emacs interface for https://reverso.net.
-#+begin_src emacs-lisp
- (use-package reverso
- :straight (:host github :repo "SqrtMinusOne/reverso.el")
- :init
- (my-leader-def "ar" #'reverso)
- :commands (reverso)
- :config
- (setq reverso-languages '(russian english german))
- (reverso-history-mode))
-#+end_src
-
** TODO [#C] Emacs Config: Narrowing Org doesn't allow refresh by type
After generating an org agenda list, I can narrow the type to all DONE or IN-PROGRESS. However when I use my custom functions to just get the agenda for the current buffer, I can't. The scope has now widened and the refresh is for all buffers.
** TODO [#C] Add a Restrict to Subtree Org Agenda Command
@@ -967,13 +803,6 @@ Quick alternative: if you don’t need the full agenda machinery (dates, deadlin
With this in place you effectively get an agenda tailored to exactly the bit of tree you’re working on.
** TODO [#C] Find Another Keymapping for Emojify
-** TODO [#D] Install ZOxide Integration into Emacs
-[[https://gitlab.com/Vonfry/zoxide.el][Vonfry / zoxide.el · GitLab]]
-Captured On: [2025-06-07 Sat 17:11]
-** TODO [#D] manateelazycat/awesome-tray: Hide mode-line, display necessary information at right of minibuffer.
-[[https://github.com/manateelazycat/awesome-tray][manateelazycat/awesome-tray: Hide mode-line, display necessary information at right of minibuffer.]]
-Captured On: [2025-06-07 Sat 13:29]
-** TODO [#D] ryuslash/mode-icons: Show icons instead of mode names
** TODO [#D] Emacs Signal Client
*** TODO investigate: net/signel.org · master · undefined · GitLab
[[https://gitlab.com/jaor/elibs/-/blob/master/net/signel.org][net/signel.org · master · undefined · GitLab]]
@@ -1044,3 +873,110 @@ Captured On: [2025-08-13 Wed 19:29]
** gregoryg/emacs-gregoryg: My emacs settings for use across Linux, Windows, OS X
[[https://github.com/gregoryg/emacs-gregoryg?tab=readme-ov-file#gptel---llms-in-markdown-and-org-mode][gregoryg/emacs-gregoryg: My emacs settings for use across Linux, Windows, OS X]]
Captured On: [2025-08-12 Tue 16:31]
+** TODO [#D] manateelazycat/awesome-tray: Hide mode-line, display necessary information at right of minibuffer.
+[[https://github.com/manateelazycat/awesome-tray][manateelazycat/awesome-tray: Hide mode-line, display necessary information at right of minibuffer.]]
+Captured On: [2025-06-07 Sat 13:29]
+** TODO [#D] Install ZOxide Integration into Emacs
+[[https://gitlab.com/Vonfry/zoxide.el][Vonfry / zoxide.el · GitLab]]
+Captured On: [2025-06-07 Sat 17:11]
+** TODO [#D] ryuslash/mode-icons: Show icons instead of mode names
+** TODO [#C] Emacs: Add Reverso Functionality
+https://sqrtminusone.xyz/packages/reverso/
+check his config for a usage example
+
+Reverso
+
+reverso.el is a package of mine that provides Emacs interface for https://reverso.net.
+#+begin_src emacs-lisp
+ (use-package reverso
+ :straight (:host github :repo "SqrtMinusOne/reverso.el")
+ :init
+ (my-leader-def "ar" #'reverso)
+ :commands (reverso)
+ :config
+ (setq reverso-languages '(russian english german))
+ (reverso-history-mode))
+#+end_src
+
+** TODO [#B] Get Tufte.css working and as a separate entry
+Below is one way to get Org-mode’s HTML exporter to play nicely with Tufte-CSS. The basic recipe is:
+
+1. Inject Tufte’s stylesheet into every HTML export
+2. Teach Org to emit the little “margin-toggle” + “sidenote” markup that tufte.css expects for footnotes
+3. (Optionally) wrap images in <figure> so you get tufte-style captions out of the box
+
+Along the way you’ll see where Org’s default HTML‐classes line up with tufte.css and where you have to override them.
+
+— 1 Inject tufte.css into your exports
+Put tufte.css somewhere your exported HTML can see it (for example
+~/.emacs.d/assets/tufte.css or a URL on your webserver). Then in your init.el:
+
+(with-eval-after-load 'ox-html
+;; 1a) tell Org to link in your tufte.css
+(setq org-html-head-extra
+"<link rel=\"stylesheet\" href=\"/assets/tufte.css\" type=\"text/css\"/>")
+;; 1b) enable HTML5 “fancy” output (so you get <figure> around images)
+(setq org-html-html5-fancy t
+org-html-inline-images t))
+
+— 2 Turn Org footnotes into Tufte sidenotes
+By default Org emits
+<sup class=…><a href="#fn:1" id="fnref:1">[1]</a></sup>
+…and then a big =<div id="footnotes">= at the bottom.
+
+Tufte-CSS wants each footnote inline, wrapped in
+<label class="margin-toggle">⊕</label>
+<input type="checkbox" class="margin-toggle"/>
+<span class="sidenote">…your note…</span>
+
+We can override two Org variables:
+
+(with-eval-after-load 'ox-html
+;; format of each inline footnote reference
+(setq org-html-footnote-format
+(concat
+"<label for=\"%1$s\" class=\"margin-toggle\">"
+"&#8853;</label>"
+"<input type=\"checkbox\" id=\"%1$s\" class=\"margin-toggle\"/>"
+"<span class=\"sidenote\">%2$s</span>"))
+;; drop Org’s default footnote list at the end
+(setq org-html-footnote-separator ""))
+
+Once you do that, exporting an Org file with footnotes will generate the markup tufte.css needs to float them in the margin.
+
+— 3 (Optionally) get <figure> + <figcaption> around images
+If you set =org-html-html5-fancy= to t (see step 1) Org will automatically emit:
+
+<figure>
+<img src="…"/>
+<figcaption>Your caption</figcaption>
+</figure>
+
+and tufte.css already has rules for =<figure class="figure">= etc.
+
+— 4 Common pitfalls
+• Make sure your href in =org-html-head-extra= actually points to the css that the browser can load (absolute vs. relative).
+• If you still see a “Footnotes” section at the bottom, double-check that =org-html-footnote-separator= is set to the empty string and that your init-file got re-evaluated.
+• On Windows or if you’re testing locally, run e.g. =python3 -m http.server= inside your export folder so your browser can fetch the CSS.
+
+— 5 Unit test for your footnote hack
+Drop this in =~/.emacs.d/tests/test-org-tufte.el= and run =M-x ert RET t RET=:
+
+(require 'ert)
+;; load your config; adjust the path if necessary
+(load-file "~/.emacs.d/init.el")
+
+(ert-deftest org-tufte-footnote-format-test ()
+"Ensure each footnote reference becomes a margin-toggle + sidenote."
+(let/ ((id "fn:42")
+(content "My note.")
+(html (format org-html-footnote-format id content)))
+(should (string-match-p "class=\"margin-toggle\"" html))
+(should (string-match-p "<span class=\"sidenote\">My note\\.</span>" html))
+;; it must not accidentally reintroduce Org’s bottom-of-page footnote div
+(should-not (string-match-p "div id=\"footnotes\"" html))))
+
+Once that test passes, you know your footnotes are being rewritten into Tufte-style side notes. From there, you can sprinkle in additional filters (e.g. wrap =<blockquote>= in a =.sidenote= class, override list/p table styles, etc.) or just let the rest of tufte.css style Org’s default tags (h1, p, ul, table, code, etc.).
+
+Enjoy your beautifully-typeset Org → HTML exports in true Tufte style!
+