diff --git a/ha-config.org b/ha-config.org index 1da16bc..051088e 100644 --- a/ha-config.org +++ b/ha-config.org @@ -946,7 +946,6 @@ Build the hydra as well as configure the =perspective= project. (use-package perspective :custom (persp-modestring-short t) - (persp-sort 'name) (persp-show-modestring t) :config @@ -986,12 +985,14 @@ Build the hydra as well as configure the =perspective= project. ("q" nil) ("C-g" nil)) - (ha-leader "TAB" '("workspaces" . hydra-workspace-leader/body)) :bind ("C-" . hydra-workspace-leader/body)) #+END_SRC -*** Predefined Workspaces -#+END_SRC +I have no idea why this binding doesn’t work /within/ the =use-package= declaration, but oh well… +#+BEGIN_SRC emacs-lisp +(ha-leader "TAB" '("workspaces" . hydra-workspace-leader/body)) +#+END_SRC +*** Predefined Workspaces Let's describe a list of startup project workspaces. This way, I don't need the clutter of the recent state, but also get back to a state of mental normality. Granted, this list is essentially a list of projects that I'm currently developing, so I expect this to change often. @@ -1013,7 +1014,8 @@ Given a list of information about project-workspaces, can we just create them al #+BEGIN_SRC emacs-lisp (defun ha-persp-exists? (name) "Return non-nill is a perspective of NAME has been created." - (seq-contains (hash-table-keys (perspectives-hash)) name)) + (when (fboundp 'perspectives-hash) + (seq-contains (hash-table-keys (perspectives-hash)) name))) (defun ha-workspace-initialize (&optional projects) "Precreate workspace projects from a PROJECTS list. diff --git a/ha-org-word-processor.org b/ha-org-word-processor.org index 25d9fdc..18cf065 100644 --- a/ha-org-word-processor.org +++ b/ha-org-word-processor.org @@ -193,6 +193,21 @@ To make it more distinguishable, he also changed the colors: 1 'org-checkbox-done-text prepend)) 'append) #+END_SRC +* SVG-Based Prettiness +While I'm intrigued with [[https://github.com/rougier][Nicolas P. Rougier]]'s [[https://github.com/rougier/notebook-mode][notebook project]], I really just want to steal their [[https://github.com/rougier/svg-lib][svg-lib project]] that allows me to create and display various SVG objects, namely tags, progress bars, progress pies and icons. Each object fits nicely in a text buffer ensuring width is an integer multiple of character width. + +#+BEGIN_SRC emacs-lisp + (use-package svg-lib + :straight (:type git :protocol ssh :host github :repo "rougier/svg-lib")) + + (use-package svg-tag-mode + :straight (:type git :protocol ssh :host github :repo "rougier/svg-tag-mode")) + + (use-package notebook + :straight (:type git :protocol ssh :host github :repo "rougier/notebook") + :after org + :hook (org-mode . notebook-mode)) +#+END_SRC * Padding The [[https://github.com/TonCherAmi/org-padding][org-padding]] project looks places extra space before and after headers and blocks (essentially leading), to create a more word-processor-y experience. Great idea, however, I have spent a lot of extra time entering blank lines before and after my headers and blocks: