diff --git a/.config/doom/config.el b/.config/doom/config.el index d56790c..599b701 100644 --- a/.config/doom/config.el +++ b/.config/doom/config.el @@ -99,10 +99,9 @@ (setq org-log-into-drawer t) (setq org-agenda-files - '("~/org/planner" - "~/org/projects" - "~/org/archive" - "~/org/notes")) + '("~/org/projects/" + "~/org/tasks/" + )) (require 'org-habit) (add-to-list 'org-modules 'org-habit) @@ -159,15 +158,7 @@ ("p" "Projects") ("pp" "Project File" entry (file+olp "~/org/projects/auto-infra-overview.org" "Inbox") - "* TODO %?\n %U\n %a\n %i" :empty-lines 1) - - ("j" "Journal Entries") - ("jj" "Journal" entry - (file+olp+datetree "~/org/planner/journal.org") - "\n* %<%I:%M %p> - Journal :journal:\n\n%?\n\n" - :clock-in :clock-resume - :empty-lines 1))) - + "* TODO %?\n %U\n %a\n %i" :empty-lines 1))) ;; Init font setup (rymacs/org-font-setup)) @@ -192,10 +183,13 @@ (org-babel-do-load-languages 'org-babel-load-languages '((emacs-lisp . t) - (python .t))) + (python . t) + (scheme . t))) (push '("conf-unix" . conf-unix) org-src-lang-modes)) +(setq geiser-default-implementation '(guile)) + ;; Make shortcuts to easily create babel source code blocks. (with-eval-after-load 'org (require 'org-tempo) @@ -203,7 +197,8 @@ (add-to-list 'org-structure-template-alist '("sh" . "src shell")) (add-to-list 'org-structure-template-alist '("el" . "src emacs-lisp")) (add-to-list 'org-structure-template-alist '("py" . "src python")) - (add-to-list 'org-structure-template-alist '("yml" . "src yaml"))) + (add-to-list 'org-structure-template-alist '("yml" . "src yaml")) + (add-to-list 'org-structure-template-alist '("scm" . "src scheme"))) ;; ;; Define a function that automatically executes rymacs/org-babel-tangle-config (a wrapper around org-babel-tangle) when saving this file. ;; (defun rymacs/org-babel-tangle-config () @@ -219,7 +214,7 @@ :init (setq org-roam-v2-ack t) :custom - (org-roam-directory "~/roam") + (org-roam-directory "~/roam/notes/") (org-roam-completion-everywhere t) (org-roam-capture-templates '(("d" "default" plain @@ -235,7 +230,7 @@ :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n") :unnarrowed t) ("c" "cli" plain - (file "~/roam/templates/command-template.org") + (file "~/roam/templates/commands-template.org") :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n") :unnarrowed t))) :bind (("C-c n l" . org-roam-buffer-toggle) @@ -254,6 +249,8 @@ (require 'org-roam-dailies) ;; Ensure the keymap is available (org-roam-db-autosync-mode)) +;; Function to enable the ability to quickly insert a link without +;; opening a capture buffer. (defun org-roam-node-insert-immediate (arg &rest args) (interactive "P") (let ((args (cons arg args)) @@ -304,13 +301,16 @@ ("/opal.sh/Drafts" . ?d)))) (setq erc-server "irc.libera.chat" ;sets default server - erc-nick "libry" ; Sets nick - erc-user-full-name "ry" + erc-nick "opalvaults" ; Sets nick + erc-user-full-name "opalvaults" erc-track-shorten-start 8 - erc-autojoin-channels-alist '(("irc.libera.chat" "#guix" "#emacs" "#systemcrafters")) + erc-autojoin-channels-alist '(("irc.libera.chat" + "#guix" + "#emacs" + "#scheme")) erc-kill-buffer-on-part t erc-auto-query 'bury - erc-fill-column 120 + erc-fill-column 60 erc-fill-function 'erc-fill-static erc-fill-static-center 20 erc-track-visibility nil diff --git a/.config/doom/init.el b/.config/doom/init.el index 00b84ef..0e3ff8c 100644 --- a/.config/doom/init.el +++ b/.config/doom/init.el @@ -97,7 +97,7 @@ magit ; a git porcelain for Emacs ;;make ; run make tasks from Emacs ;;pass ; password manager for nerds - ;;pdf ; pdf enhancements + pdf ; pdf enhancements ;;prodigy ; FIXME managing external services & code builders ;;rgb ; creating color strings ;;taskrunner ; taskrunner for all your projects @@ -154,7 +154,7 @@ ;;purescript ; javascript, but functional python ; beautiful is better than ugly ;;qt ; the 'cutest' gui framework ever - ;;racket ; a DSL for DSLs + racket ; a DSL for DSLs ;;raku ; the artist formerly known as perl6 ;;rest ; Emacs as a REST client ;;rst ; ReST in peace diff --git a/Emacs.org b/Emacs.org index 2b3fe23..7b7028c 100644 --- a/Emacs.org +++ b/Emacs.org @@ -75,7 +75,7 @@ I am using [[https://protesilaos.com/modus-themes/][Modus Themes]], by [[https:/ #+end_src -** Font Configuration +* Font Configuration Using [[https://github.com/tonsky/FiraCode][Fira Code]] + Fira Code Retina. @@ -88,7 +88,7 @@ Using [[https://github.com/tonsky/FiraCode][Fira Code]] + Fira Code Retina. #+end_src -** Org Mode Configuration +* Org Mode Configuration ** Set Fonts and Symbols Here we are setting general font configuration in order to make editing in org mode a bit more streamlined to look at. @@ -150,10 +150,9 @@ Main Org/Agenda configuration. (setq org-log-into-drawer t) (setq org-agenda-files - '("~/org/planner" - "~/org/projects" - "~/org/archive" - "~/org/notes")) + '("~/org/projects/" + "~/org/tasks/" + )) (require 'org-habit) (add-to-list 'org-modules 'org-habit) @@ -210,15 +209,7 @@ Main Org/Agenda configuration. ("p" "Projects") ("pp" "Project File" entry (file+olp "~/org/projects/auto-infra-overview.org" "Inbox") - "* TODO %?\n %U\n %a\n %i" :empty-lines 1) - - ("j" "Journal Entries") - ("jj" "Journal" entry - (file+olp+datetree "~/org/planner/journal.org") - "\n* %<%I:%M %p> - Journal :journal:\n\n%?\n\n" - :clock-in :clock-resume - :empty-lines 1))) - + "* TODO %?\n %U\n %a\n %i" :empty-lines 1))) ;; Init font setup (rymacs/org-font-setup)) @@ -252,11 +243,11 @@ Main Org/Agenda configuration. #+end_src -** Org Babel +* Org Babel Org Babel allows us to evaluate source code blocks within org mode. With this functionality, we can tell org babel to insert the content of the source block codes into any file specified by using the org-babel-tangle function. -*** Babel Languages +** Babel Languages #+begin_src emacs-lisp @@ -265,14 +256,16 @@ Org Babel allows us to evaluate source code blocks within org mode. With this fu (org-babel-do-load-languages 'org-babel-load-languages '((emacs-lisp . t) - (python .t))) + (python . t) + (scheme . t))) (push '("conf-unix" . conf-unix) org-src-lang-modes)) +(setq geiser-default-implementation '(guile)) #+end_src -*** Soure Block Creation Shortcuts +** Soure Block Creation Shortcuts Here we use a package called org-tempo. @@ -285,12 +278,13 @@ Here we use a package called org-tempo. (add-to-list 'org-structure-template-alist '("sh" . "src shell")) (add-to-list 'org-structure-template-alist '("el" . "src emacs-lisp")) (add-to-list 'org-structure-template-alist '("py" . "src python")) - (add-to-list 'org-structure-template-alist '("yml" . "src yaml"))) + (add-to-list 'org-structure-template-alist '("yml" . "src yaml")) + (add-to-list 'org-structure-template-alist '("scm" . "src scheme"))) #+end_src -*** Babel Configuration File Automation Hook +** Babel Configuration File Automation Hook TODO: This needs to be fixed, or find an equiv. Since we don't want to have to manually use the org-babel-tangle function everytime we make changes to the corresponding .org file, we create an automation hook that executes the function every time we save. @@ -311,13 +305,15 @@ Since we don't want to have to manually use the org-babel-tangle function everyt * Org Roam Configuration +I use Org Roam as an alternative to writing traditional notes. Instead of long sprawling .org files, each note in Org roam is a excerpt of a specific idea or topic that has links to other notes made with Org Roam. Roam also allows you to pull up a buffer to look at which notes are linked in other notes. This creates a spawling network of information that is useful, quick to draw information from, and can create a notetaking experience that is interactive and seamless. + #+begin_src emacs-lisp (use-package org-roam :init (setq org-roam-v2-ack t) :custom - (org-roam-directory "~/roam") + (org-roam-directory "~/roam/notes/") (org-roam-completion-everywhere t) (org-roam-capture-templates '(("d" "default" plain @@ -333,7 +329,7 @@ Since we don't want to have to manually use the org-babel-tangle function everyt :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n") :unnarrowed t) ("c" "cli" plain - (file "~/roam/templates/command-template.org") + (file "~/roam/templates/commands-template.org") :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n") :unnarrowed t))) :bind (("C-c n l" . org-roam-buffer-toggle) @@ -352,6 +348,8 @@ Since we don't want to have to manually use the org-babel-tangle function everyt (require 'org-roam-dailies) ;; Ensure the keymap is available (org-roam-db-autosync-mode)) +;; Function to enable the ability to quickly insert a link without +;; opening a capture buffer. (defun org-roam-node-insert-immediate (arg &rest args) (interactive "P") (let ((args (cons arg args)) @@ -381,11 +379,9 @@ Deft is a package that helps browse and filter plain text files. I use it to sea * Mu4e (E-mail) -** Important Account information: -*** Opal.sh +Account Information: - IMAP: imap.opal.sh -- 993 - SMTP smtp.opal.sh -- 587 - - Username: ry@opal.sh #+begin_src emacs-lisp @@ -428,20 +424,22 @@ Deft is a package that helps browse and filter plain text files. I use it to sea #+begin_src emacs-lisp (setq erc-server "irc.libera.chat" ;sets default server - erc-nick "libry" ; Sets nick - erc-user-full-name "ry" + erc-nick "opalvaults" ; Sets nick + erc-user-full-name "opalvaults" erc-track-shorten-start 8 - erc-autojoin-channels-alist '(("irc.libera.chat" "#guix" "#emacs" "#systemcrafters")) + erc-autojoin-channels-alist '(("irc.libera.chat" + "#guix" + "#emacs" + "#scheme")) erc-kill-buffer-on-part t erc-auto-query 'bury - erc-fill-column 120 + erc-fill-column 60 erc-fill-function 'erc-fill-static erc-fill-static-center 20 erc-track-visibility nil erc-interpret-mirc-color t erc-rename-buffers t erc-track-exclude-server-buffer t) - #+end_src * Elfeed (RSS)