aboutsummaryrefslogtreecommitdiffstats
path: root/config/doom
diff options
context:
space:
mode:
Diffstat (limited to 'config/doom')
-rw-r--r--config/doom/config.org271
-rw-r--r--config/doom/custom.el68
-rw-r--r--config/doom/init.el98
-rw-r--r--config/doom/snippets/org-mode/daily25
4 files changed, 339 insertions, 123 deletions
diff --git a/config/doom/config.org b/config/doom/config.org
index 3d203aa..577f1f9 100644
--- a/config/doom/config.org
+++ b/config/doom/config.org
@@ -11,6 +11,22 @@
#+begin_src emacs-lisp
(setq doom-font (font-spec :family "DejaVu Sans Mono" :size 18 :weight 'semi-light))
(setq doom-theme 'doom-gruvbox)
+(add-hook 'prog-mode-hook 'prettify-symbols-mode)
+
+(defun on/prettify-symbols ()
+ "Common added symbols."
+ (mapc (lambda (p)
+ (cl-pushnew p prettify-symbols-alist :test #'equal))
+ '(("<=" . ?≤)
+ (">=" . ?≥)
+ ("->" . ?→)
+ ("->>" . ?↠)
+ ("=>" . ?⇒)
+ ("/=" . ?≠) ("!=" . ?≠)
+ ("::" . ?∷)
+ ("lambda" . ?λ))))
+
+(add-hook 'prog-mode-hook 'on/prettify-symbols)
#+end_src
This determines the style of line numbers in effect. If set to `nil', line
numbers are disabled. For relative line numbers, set this to `relative'.
@@ -88,6 +104,9 @@ Because I always need help and it should come up quickly
(emacs-lisp-mode)
(display-buffer (current-buffer))))
#+end_src
+#+begin_src emacs-lisp
+ (add-hook 'after-save-hook 'executable-make-buffer-file-executable-if-script-p)
+#+end_src
* Dictionary
#+begin_src emacs-lisp :tangle "packages.el"
(package! lexic)
@@ -110,6 +129,7 @@ Shamelessly copied from https://tecosaur.github.io/emacs-config/#dictionary
* Orgmode
#+begin_src emacs-lisp
(after! org
+ (setq org-tags-column (- fill-column))
(setcdr (assoc "j" org-capture-templates)
'("Journal" entry (file+olp+datetree +org-capture-journal-file)
"* %(format-time-string \"%H:%M\") %?\n%a\n%i"
@@ -119,20 +139,19 @@ Shamelessly copied from https://tecosaur.github.io/emacs-config/#dictionary
`("e" "Event" entry (file ,(expand-file-name
"caldav.org" org-directory))
"* %?\n%^T\n%i\n%a"))
- (add-to-list 'org-capture-templates
- `("i" "Isar-Speak Contact"
- entry (file ,(expand-file-name "Isar-Speak.org" org-directory))
- "* INTRS [[notmuch-search:%:fromaddress][%:fromname]]
-:PROPERTIES:
-:EMAIL: %:fromaddress
-:END:
-Invited: %^t
-"))
+
(setq org-roam-capture-templates '(("d" "default" plain "%i\n%?"
:target (file+head "%<%Y%m%d%H%M%S>-${slug}.org"
"#+title: ${title}")
:unnarrowed t))
org-roam-capture-ref-templates org-roam-capture-templates))
+
+(use-package! semantic-search
+ :after org
+ :load-path "~/dev/dotfiles/scratch/semgrep"
+ :commands (semantic-search)
+ :config
+ (setq semantic-server-url "http://localhost:8080"))
#+end_src
** Alerts
This is to set the reminders of calendar events.
@@ -155,13 +174,18 @@ this new window.
#+begin_src emacs-lisp
(use-package! cal-sync
:load-path "~/dev/org-caldav"
- :commands (cal-sync-push cal-sync-import-file cal-sync-delete)
+ :commands (cal-sync-push cal-sync-import-file cal-sync-delete on/calendar-fetch)
:init (map! :leader
(:prefix-map "mc"
"p" #'cal-sync-push
"f" #'cal-sync-import-file))
:config
- (setq cal-sync-url "https://cloud.oscarnajera.com/remote.php/dav/calendars/oscar"
+ (defun on/calendar-fetch ()
+ (interactive)
+ (call-process "org_agenda_sync"
+ nil (list :file (expand-file-name "~/org/caldav.org")) nil
+ "--format" "org"))
+ (setq cal-sync-url "https://oscar@cloud.oscarnajera.com/remote.php/dav/calendars/oscar"
cal-sync-calendar-id "personal-1"
org-icalendar-date-time-format ":%Y%m%dT%H%M%SZ"))
#+end_src
@@ -219,23 +243,37 @@ this new window.
#+begin_src emacs-lisp
(after! elfeed
(setq elfeed-feeds
- '("https://sachachua.com/blog/feed"
+ '("http://feeds.feedburner.com/MeltingAsphalt"
+ "http://feeds.feedburner.com/TroyHunt"
+ "http://kitchingroup.cheme.cmu.edu/blog/feed/index.xml"
"http://www.howardism.org/index.xml"
- "https://reyify.com/api/rss"
- "https://guix.gnu.org/feeds/blog.atom"
"https://ag91.github.io/rss.xml"
+ "https://architectelevator.com/feed.xml"
+ "https://bitcoinops.org/feed.xml"
+ "https://cyberwardog.blogspot.com/feeds/posts/default"
"https://daryl.wakatara.com/rss.xml"
+ "https://guix.gnu.org/feeds/blog.atom"
+ "https://hboeck.de/rss.xml"
+ "https://jackrusher.com/feed.xml"
"https://nullprogram.com/feed/"
+ "https://oscarnajera.com/post/index.xml"
+ "https://paulstamatiou.com/posts.xml"
+ "https://planet.archlinux.org/atom.xml"
+ "https://reyify.com/api/rss"
+ "https://sachachua.com/blog/feed"
+ "https://serokell.io/blog.rss.xml"
+ "https://stevelosh.com/rss.xml"
+ "https://www.archlinux.org/feeds/news/"
+ "https://www.n16f.net/blog/index.xml"
"https://www.schneier.com/feed/atom"
- "https://stevelosh.com/rss.xml")))
-
+ "https://www.tweag.io/rss.xml")))
#+end_src
* Email
** Notmuch
#+begin_src emacs-lisp :tangle "packages.el"
-(package! notmuch :pin "7b5921877e748338359a25dae578771f768183af")
-(package! org-mime :pin "a7bf07316f93015e4f853ea0fc5b8d05b4a7695d")
-(package! ol-notmuch :pin "126fb446d8fa9e54cf21103afaf506fd81273c02")
+(package! notmuch :pin "c769658360e10a6d01a4134e680e2f498741bc5c")
+(package! org-mime :pin "cc00afcf0291633324364c1c83bfe2833cfdc1bf")
+(package! ol-notmuch :pin "781c3518a537da2a8b5e8a4424f9441df463a147")
#+end_src
#+BEGIN_SRC emacs-lisp
(use-package! notmuch
@@ -367,18 +405,14 @@ this new window.
(defun on/registered-mail-accounts ()
"Read mbsync config to extract IMAPAccounts."
- (let ((buffer (find-file-noselect
- (expand-file-name
- "~/dev/dotfiles/mail/dot-mbsyncrc.personal"))))
- (with-current-buffer buffer
- (goto-char (point-min))
- (let ((pick (prog1 (->>
- (cl-loop while (search-forward-regexp (rx bol "IMAPAccount " (group (+ any)) eol) nil t)
- collect (match-string 1))
- (cons "all")
- (completing-read "Which mailbox")))))
- (kill-buffer buffer)
- (if (string= pick "all") nil (list pick))))))
+ (with-temp-buffer
+ (insert-file-contents (expand-file-name "~/.mbsyncrc"))
+ (let ((pick (thread-last
+ (cl-loop while (search-forward-regexp (rx bol "IMAPAccount " (group (+ any)) eol) nil t)
+ collect (match-string 1))
+ (cons "all")
+ (completing-read "Which mailbox"))))
+ (if (string= pick "all") nil (list pick)))))
(define-derived-mode mail-sync-log-mode comint-mode "mail-sync-log"
"Major mode for reading mail sync."
@@ -407,21 +441,27 @@ this new window.
smtpmail-local-domain "oscarnajera.com")
(defun set-smtp-server ()
- (let* ((default-smtp-conf '("mail.oscarnajera.com" 587 starttls "hi"))
- (smtp-from-server-alist
- '(("Oscar Najera <najera.oscar@gmail.com>"
- "smtp.googlemail.com" 587 starttls "najera.oscar")))
- (smtp-conf (alist-get (save-restriction
- (message-narrow-to-headers)
- (message-fetch-field "from"))
- smtp-from-server-alist default-smtp-conf
- nil #'string=)))
- (-let [(server port protocol user) smtp-conf]
- (setq smtpmail-smtp-server server
- smtpmail-smtp-service port
- smtpmail-stream-type protocol
- smtpmail-smtp-user user)
- (message "SMTP server changed to %s in port %s by %s" server port protocol))))
+ (-let* (((user host)
+ (thread-first
+ (message-field-value "from" )
+ (mail-extract-address-components)
+ (cadr)
+ (string-split "@")))
+ (smtp-servers '("oscarnajera.com" "mail.oscarnajera.com"
+ "gmail.com" "smtp.googlemail.com"
+ "byteplant.com" "smtp.byteplant.com"))
+ ((&plist :host :user :port :secret)
+ (car
+ (auth-source-search :host
+ (or (plist-get smtp-servers host #'string=)
+ "mail.oscarnajera.com")
+ :user user
+ :max 1))))
+ (setq smtpmail-smtp-server host
+ smtpmail-smtp-service (string-to-number port)
+ smtpmail-stream-type 'starttls
+ smtpmail-smtp-user user)
+ (message "SMTP server changed to %s %s %s" host port user)))
(add-hook 'message-send-mail-hook 'set-smtp-server))
#+end_src
@@ -433,6 +473,19 @@ this new window.
#+begin_src emacs-lisp
(use-package! khardel)
#+end_src
+* IRC
+#+begin_src emacs-lisp
+(set-irc-server! "irc.libera.chat"
+ `(:tls t
+ :port 6697
+ :nick "titan-c"
+ :sasl-username ,(+pass-get-user "Social/freenode/titan-c")
+ :sasl-password (lambda (&rest _) (+pass-get-secret "Social/freenode/titan-c"))
+ :channels ("#emacs" "#guix")))
+#+end_src
+
+#+RESULTS:
+
* Ledger
Emacs mode for managing ledger text files
#+BEGIN_SRC emacs-lisp
@@ -442,20 +495,21 @@ Emacs mode for managing ledger text files
(defun on/ledger-link-invoice ()
"Attach an invoice file to this posting."
(interactive)
+ (ledger-navigate-beginning-of-xact)
+ (end-of-line)
(when-let* ((date (ledger-xact-date))
- (payee (replace-regexp-in-string " " "_" (string-trim-right (ledger-xact-payee))))
- (src-file (read-file-name "Attach: " "~/dev/journal/Empresa_DE/"))
+ (payee (thread-last
+ (ledger-xact-payee)
+ (string-trim)
+ (replace-regexp-in-string (rx (+ (or space punctuation))) "_")))
+ (src-file (read-file-name "Attach: "))
(file-name (concat "Empresa_DE/" date "_" payee "." (file-name-extension src-file))))
- (ledger-navigate-beginning-of-xact)
- (end-of-line)
- (rename-file src-file (expand-file-name file-name "/home/titan/dev/journal/"))
- (newline)
- (insert " ; Invoice: " file-name))))
+ (insert "\n ; Invoice: " file-name)
+ (rename-file src-file (expand-file-name file-name)))))
#+end_src
** CSV
#+begin_src emacs-lisp :tangle "packages.el"
(package! parse-csv)
-(package! emacsql-sqlite3)
#+end_src
** Crypto
#+begin_src emacs-lisp
@@ -465,8 +519,8 @@ Emacs mode for managing ledger text files
:init
(defun on/cardano-set-network ()
(interactive)
- (let* ((networks '((:mainnet "/tmp/nina-mn.socket" "http://localhost:8090" "--mainnet")
- (:preview "/tmp/nina-pr.socket" "http://localhost:8091" "--testnet-magic" "2")))
+ (let* ((networks '((:mainnet "/run/cardano-node-mainnet/socket" "http://localhost:8090" "--mainnet")
+ (:preview "/run/cardano-node-preview/socket" "http://localhost:8091" "--testnet-magic" "2")))
(pick
(alist-get
(completing-read "Pick network" networks)
@@ -485,7 +539,7 @@ Emacs mode for managing ledger text files
cardano-wallet-tx-log-mode)))))
(setq cardano-tx-log-level 'debug)
;; (setq cardano-cli-command (expand-file-name "~/dev/cardano/cardano-node/cli"))
- (setq cardano-tx-cli-command "/home/titan/dev/cardano/cardano-node/dist-newstyle/build/x86_64-linux/ghc-8.10.7/cardano-cli-1.35.3/x/cardano-cli/build/cardano-cli/cardano-cli")
+ (setq cardano-tx-cli-command "/usr/bin/cardano-cli")
(setq cardano-tx-db-keyring-dir "~/dev/cardano/emacs-wallet/keys/demo"))
(use-package! cardano-wallet
@@ -526,10 +580,33 @@ Emacs mode for managing ledger text files
#+begin_src emacs-lisp :tangle "packages.el"
(package! emacsql-psql)
#+end_src
+
+#+begin_src emacs-lisp
+(after! format-all
+ (define-format-all-formatter sqlformat
+ (:executable "pg_format")
+ (:install)
+ (:modes sql-mode)
+ (:format
+ (format-all--buffer-easy
+ executable
+ "-s2" "-g" "-U2"
+ "-"))))
+#+end_src
** WEB
+#+begin_src emacs-lisp :tangle "packages.el"
+(package! impatient-mode)
+#+end_src
#+begin_src emacs-lisp
-(after! web-mode
- (setq-hook! 'web-mode-hook +format-with :none))
+(after! skewer-mode
+ (setq httpd-port 8095))
+
+(use-package! impatient-mode
+ :commands impatient-mode)
+
+(use-package! trident-mode
+ :commands trident-mode
+ :load-path "~/dev/emacs-lisp/trident-mode.el/")
#+end_src
** Haskell
#+begin_src emacs-lisp
@@ -542,6 +619,36 @@ Emacs mode for managing ledger text files
#+begin_src emacs-lisp
(setq-hook! 'clojure-mode-hook +format-with :none)
#+end_src
+** Common Lisp
+#+begin_src emacs-lisp
+(after! sly
+ (setq sly-lisp-implementations
+ '((sbcl-large ("sbcl" "--dynamic-space-size" "2048"))
+ (sbcl ("sbcl")))))
+#+end_src
+** C
+#+begin_src emacs-lisp
+(after! lsp-clangd
+ (setq lsp-clients-clangd-args
+ '("-j=3"
+ "--background-index"
+ "--clang-tidy"
+ "--completion-style=detailed"
+ "--header-insertion=never"
+ "--header-insertion-decorators=0"))
+ (set-lsp-priority! 'clangd 2))
+#+end_src
+
+* Video Editing
+#+begin_src emacs-lisp :tangle "packages.el"
+(package! subed
+ :recipe (:host github :repo "sachac/subed" :files ("subed/*.el")))
+#+end_src
+
+#+begin_src emacs-lisp
+(use-package! subed)
+#+end_src
+
* Admin
#+begin_src emacs-lisp :tangle "packages.el"
(package! guix)
@@ -553,8 +660,43 @@ Emacs mode for managing ledger text files
(package! json-rpc)
#+end_src
#+begin_src emacs-lisp
-(use-package! json-rpc)
+(use-package! btc-explorer
+ :load-path "~/dev/emacs-lisp/btc-explorer/"
+ :commands (on/bitcoin-rpc-connect)
+ :config
+ (use-package json-rpc)
+ (defun on/bitcoin-rpc-connect ()
+ (interactive)
+ (let* ((networks '(:mainnet 8332
+ :mainnet-r 8335
+ :testnet 18332
+ :testnet-r 18335
+ :regtest 18443))
+ (host "localhost")
+ (user "crazy")
+ (port (plist-get networks
+ (intern (completing-read "Pick network: " networks))))
+ (secret (-some->
+ (auth-source-search :host host)
+ (car)
+ (plist-get :secret))))
+ (when (and btc-explorer-bitcoind
+ (json-rpc-live-p btc-explorer-bitcoind))
+ (json-rpc-close btc-explorer-bitcoind))
+ (setq btc-explorer-bitcoind
+ (json-rpc-connect host port user (funcall secret))))))
+
+(use-package! lnd
+ :load-path "~/dev/emacs-lisp/btc-explorer/"
+ :commands (lnd-pick-node)
+ :config
+ (setq lnd-nodes '(("local" "https://localhost:8480/v1/"
+ "/run/media/titan/ext_backup/personal/bitcoin/lnd/data/chain/bitcoin/testnet/admin.macaroon")
+ ("remote" "https://localhost:8481/v1/"
+ "~/dev/emacs-lisp/btc-explorer/admin.macaroon"))))
+
#+end_src
+
#+begin_src emacs-lisp
(use-package! shepherd
:load-path "~/dev/dotfiles/elisp/"
@@ -564,3 +706,12 @@ Emacs mode for managing ledger text files
#+begin_src emacs-lisp
(use-package! mpc)
#+end_src
+
+#+begin_src emacs-lisp
+(use-package! journalctl
+ :load-path "~/dev/dotfiles/elisp"
+ :commands (journalctl))
+#+end_src
+#+begin_src emacs-lisp
+(setq netstat-program-options '("-aptu"))
+#+end_src
diff --git a/config/doom/custom.el b/config/doom/custom.el
index 9ea349e..7ba527d 100644
--- a/config/doom/custom.el
+++ b/config/doom/custom.el
@@ -3,12 +3,76 @@
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
+ '(auth-source-save-behavior nil)
'(ignored-local-variable-values
'((grep-find-ignored-directories ".git" ".venv" "node_modules" ".mypy_cache" ".pytest_cache" "SCCS" "RCS" "CVS" "MCVS" ".src" ".svn" ".git" ".hg" ".bzr" "_MTN" "_darcs" "{arch}")
(grep-find-ignored-files "*.min.js" "*.standalone.js" "*.map" "*.gz" ".#*" "*.o" "*~" "*.bin" "*.lbin" "*.so" "*.a" "*.ln" "*.blg" "*.bbl" "*.elc" "*.lof" "*.glo" "*.idx" "*.lot" "*.fmt" "*.tfm" "*.class" "*.fas" "*.lib" "*.mem" "*.x86f" "*.sparcf" "*.dfsl" "*.pfsl" "*.d64fsl" "*.p64fsl" "*.lx64fsl" "*.lx32fsl" "*.dx64fsl" "*.dx32fsl" "*.fx64fsl" "*.fx32fsl" "*.sx64fsl" "*.sx32fsl" "*.wx64fsl" "*.wx32fsl" "*.fasl" "*.ufsl" "*.fsl" "*.dxl" "*.lo" "*.la" "*.gmo" "*.mo" "*.toc" "*.aux" "*.cp" "*.fn" "*.ky" "*.pg" "*.tp" "*.vr" "*.cps" "*.fns" "*.kys" "*.pgs" "*.tps" "*.vrs" "*.pyc" "*.pyo")))
- '(package-selected-packages '(youtube-sub-extractor elpher adoc-mode logview))
+ '(package-selected-packages
+ '(graphviz-dot-mode elfeed-tube flycheck-elsa elpher adoc-mode logview))
'(safe-local-variable-values
- '((cider-default-cljs-repl . shadow)
+ '((eval let
+ ((root-dir-unexpanded
+ (locate-dominating-file default-directory ".dir-locals.el")))
+ (when root-dir-unexpanded
+ (let*
+ ((root-dir
+ (file-local-name
+ (expand-file-name root-dir-unexpanded)))
+ (root-dir*
+ (directory-file-name root-dir)))
+ (unless
+ (boundp 'geiser-guile-load-path)
+ (defvar geiser-guile-load-path 'nil))
+ (make-local-variable 'geiser-guile-load-path)
+ (require 'cl-lib)
+ (cl-pushnew root-dir* geiser-guile-load-path :test #'string-equal))))
+ (eval with-eval-after-load 'yasnippet
+ (let
+ ((guix-yasnippets
+ (expand-file-name "etc/snippets/yas"
+ (locate-dominating-file default-directory ".dir-locals.el"))))
+ (unless
+ (member guix-yasnippets yas-snippet-dirs)
+ (add-to-list 'yas-snippet-dirs guix-yasnippets)
+ (yas-reload-all))))
+ (eval setq-local guix-directory
+ (locate-dominating-file default-directory ".dir-locals.el"))
+ (eval add-to-list 'completion-ignored-extensions ".go")
+ (google-translate-default-source-language . "de")
+ (google-translate-default-target-language . "en")
+ (vc-prepare-patches-separately)
+ (diff-add-log-use-relative-names . t)
+ (vc-git-annotate-switches . "-w")
+ (eval eval-after-load "yapfify"
+ '(defun yapfify-call-bin
+ (input-buffer output-buffer start-line end-line)
+ "Call process yapf on INPUT-BUFFER saving the output to OUTPUT-BUFFER.
+
+Return the exit code. START-LINE and END-LINE specify region to
+format."
+ (with-current-buffer input-buffer
+ (call-process-region
+ (point-min)
+ (point-max)
+ (concat
+ (projectile-locate-dominating-file default-directory dir-locals-file)
+ "scripts/run-pipenv")
+ nil output-buffer nil "run" "yapf" "-l"
+ (concat
+ (number-to-string start-line)
+ "-"
+ (number-to-string end-line))))))
+ (eval setq flycheck-python-pylint-executable
+ (concat
+ (projectile-locate-dominating-file default-directory dir-locals-file)
+ "scripts/run-pylint"))
+ (eval setq flycheck-python-mypy-executable
+ (concat
+ (projectile-locate-dominating-file default-directory dir-locals-file)
+ "scripts/run-mypy"))
+ (grep-find-ignored-directories ".git" ".venv" "node_modules" ".mypy_cache" ".pytest_cache" "SCCS" "RCS" "CVS" "MCVS" ".src" ".svn" ".git" ".hg" ".bzr" "_MTN" "_darcs" "{arch}")
+ (grep-find-ignored-files "*.min.js" "*.standalone.js" "*.map" "*.gz" ".#*" "*.o" "*~" "*.bin" "*.lbin" "*.so" "*.a" "*.ln" "*.blg" "*.bbl" "*.elc" "*.lof" "*.glo" "*.idx" "*.lot" "*.fmt" "*.tfm" "*.class" "*.fas" "*.lib" "*.mem" "*.x86f" "*.sparcf" "*.dfsl" "*.pfsl" "*.d64fsl" "*.p64fsl" "*.lx64fsl" "*.lx32fsl" "*.dx64fsl" "*.dx32fsl" "*.fx64fsl" "*.fx32fsl" "*.sx64fsl" "*.sx32fsl" "*.wx64fsl" "*.wx32fsl" "*.fasl" "*.ufsl" "*.fsl" "*.dxl" "*.lo" "*.la" "*.gmo" "*.mo" "*.toc" "*.aux" "*.cp" "*.fn" "*.ky" "*.pg" "*.tp" "*.vr" "*.cps" "*.fns" "*.kys" "*.pgs" "*.tps" "*.vrs" "*.pyc" "*.pyo")
+ (cider-default-cljs-repl . shadow)
(cider-shadow-cljs-default-options . "app")
(cider-preferred-build-tool . clojure-cli)
(cider-clojure-cli-global-options . "-A:dev")
diff --git a/config/doom/init.el b/config/doom/init.el
index 2bce639..cd9d65d 100644
--- a/config/doom/init.el
+++ b/config/doom/init.el
@@ -21,49 +21,49 @@
;;layout ; auie,ctsrnm is the superior home row
:completion
- company ; the ultimate code completion backend
- ;;helm ; the *other* search engine for love and life
+ company ; the ultimate code completion backend
+ ;; helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine...
- ivy ; a search engine for love and life
+ ivy ; a search engine for love and life
+ ;; vertico ; the search engine of the future
:ui
;;deft ; notational velocity for Emacs
- doom ; what makes DOOM look the way it does
- ;;doom-dashboard ; a nifty splash screen for Emacs
- doom-quit ; DOOM quit-message prompts when you quit Emacs
+ doom ; what makes DOOM look the way it does
+ ;; doom-dashboard ; a nifty splash screen for Emacs
+ ;;doom-quit ; DOOM quit-message prompts when you quit Emacs
;;(emoji +unicode) ; 🙂
- ;;fill-column ; a `fill-column' indicator
- hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
+ hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
;;hydra
;;indent-guides ; highlighted indent columns
;;ligatures ; ligatures and symbols to make your code pretty again
;;minimap ; show a map of the code on the side
- modeline ; snazzy, Atom-inspired modeline, plus API
+ modeline ; snazzy, Atom-inspired modeline, plus API
;;nav-flash ; blink cursor line after big motions
;;neotree ; a project drawer, like NERDTree for vim
- ophints ; highlight the region an operation acts on
+ ophints ; highlight the region an operation acts on
(popup +defaults) ; tame sudden yet inevitable temporary windows
;;tabs ; a tab bar for Emacs
;;treemacs ; a project drawer, like neotree but cooler
;;unicode ; extended unicode support for various languages
- vc-gutter ; vcs diff in the fringe
- vi-tilde-fringe ; fringe tildes to mark beyond EOB
- window-select ; visually switch windows
- workspaces ; tab emulation, persistence & separate workspaces
+ vc-gutter ; vcs diff in the fringe
+ vi-tilde-fringe ; fringe tildes to mark beyond EOB
+ window-select ; visually switch windows
+ ;;workspaces ; tab emulation, persistence & separate workspaces
;;zen ; distraction-free coding or writing
:editor
- evil; come to the dark side, we have cookies
- file-templates ; auto-snippets for empty files
+ evil ; come to the dark side, we have cookies
+ file-templates ; auto-snippets for empty files
;; fold ; (nigh) universal code folding
- (format +onsave) ; automated prettiness
+ (format +onsave) ; automated prettiness
;;god ; run Emacs commands without modifier keys
;;lispy ; vim for lisp, for people who don't like vim
;;multiple-cursors ; editing in many places at once
;;objed ; text object editing for the innocent
;;parinfer ; turn lisp into python, sort of
;;rotate-text ; cycle region at point between text candidates
- snippets ; my elves. They type so I don't have to
+ snippets ; my elves. They type so I don't have to
;;word-wrap ; soft wrapping with language-aware indent
:emacs
@@ -74,15 +74,15 @@
vc ; version-control and Emacs, sitting in a tree
:term
- eshell ; the elisp shell that works everywhere
+ eshell ; the elisp shell that works everywhere
;;shell ; simple shell REPL for Emacs
;;term ; basic terminal emulator for Emacs
;;vterm ; the best terminal emulation in Emacs
:checkers
- syntax ; tasing you for every semicolon you forget
- (spell +flyspell +hunspell) ; tasing you for misspelling mispelling
- grammar ; tasing grammar mistake every you make
+ syntax ; tasing you for every semicolon you forget
+ (spell +flyspell +hunspell) ; tasing you for misspelling mispelling
+ grammar ; tasing grammar mistake every you make
:tools
;;ansible
@@ -92,41 +92,41 @@
;;docker
;;editorconfig ; let someone else argue about tabs vs spaces
;;ein ; tame Jupyter notebooks with emacs
- (eval +overlay) ; run code, run (also, repls)
+ (eval +overlay) ; run code, run (also, repls)
;;gist ; interacting with github gists
- lookup ; navigate your code and its documentation
+ lookup ; navigate your code and its documentation
lsp
- magit ; a git porcelain for Emacs
+ magit ; a git porcelain for Emacs
;;make ; run make tasks from Emacs
- (pass +auth) ; password manager for nerds
- pdf ; pdf enhancements
+ (pass +auth) ; password manager for nerds
+ pdf ; pdf enhancements
;;prodigy ; FIXME managing external services & code builders
;;rgb ; creating color strings
;;taskrunner ; taskrunner for all your projects
;;terraform ; infrastructure as code
;;tmux ; an API for interacting with tmux
- tree-sitter ; syntax and parsing, sitting in a tree...
+ tree-sitter ; syntax and parsing, sitting in a tree...
;;upload ; map local to remote projects via ssh/ftp
:os
- (:if IS-MAC macos) ; improve compatibility with macOS
+ (:if IS-MAC macos) ; improve compatibility with macOS
;;tty ; improve the terminal Emacs experience
:lang
;;agda ; types of types of types of types...
;;beancount ; mind the GAAP
- ;;cc ; C > C++ == 1
+ (cc +lsp +tree-sitter) ; C > C++ == 1
clojure ; java with a lisp
common-lisp ; if you've seen one lisp, you've seen them all
;;coq ; proofs-as-programs
;;crystal ; ruby at the speed of c
;;csharp ; unity, .NET, and mono shenanigans
- data ; config/data formats
+ data ; config/data formats
;;(dart +flutter) ; paint ui and not much else
;;dhall
- ;;elixir ; erlang done right
+ (elixir +tree-sitter +lsp) ; erlang done right
;;elm ; care for a cup of TEA?
- emacs-lisp ; drown in parentheses
+ emacs-lisp ; drown in parentheses
;;erlang ; an elegant language for a more civilized age
;;ess ; emacs speaks statistics
;;factor
@@ -137,27 +137,27 @@
;;gdscript ; the language you waited for
;;(go +lsp) ; the hipster dialect
;;(graphql +lsp) ; Give queries a REST
- (haskell +lsp) ; a language that's lazier than I am
+ (haskell +lsp) ; a language that's lazier than I am
;;hy ; readability of scheme w/ speed of python
;;idris ; a language you can depend on
- ;;json ; At least it ain't XML
+ (json +lsp +tree-sitter) ; At least it ain't XML
;;(java +lsp) ; the poster child for carpal tunnel syndrome
- (javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
- ;;julia ; a better, faster MATLAB
+ (javascript +lsp +tree-sitter) ; all(hope(abandon(ye(who(enter(here))))))
+ (julia +lsp +tree-sitter) ; a better, faster MATLAB
;;kotlin ; a better, slicker Java(Script)
;;latex ; writing papers in Emacs has never been so fun
;;lean ; for folks with too much to prove
- ledger ; be audit you can be
- lua ; one-based indices? one-based indices
- markdown ; writing docs for people to ignore
+ ledger ; be audit you can be
+ lua ; one-based indices? one-based indices
+ markdown ; writing docs for people to ignore
;;nim ; python + lisp at the speed of c
- nix ; I hereby declare "nix geht mehr!"
+ nix ; I hereby declare "nix geht mehr!"
;;ocaml ; an objective camel
- (org +roam2 +hugo +present) ; organize your plain life in plain text
+ (org +roam2 +hugo +present +gnuplot +pomodoro) ; organize your plain life in plain text
;;php ; perl's insecure younger brother
;;plantuml ; diagrams for confusing people more
;;purescript ; javascript, but functional
- (python +lsp +ipython) ; beautiful is better than ugly
+ (python +lsp +ipython +pyright +tree-sitter) ; beautiful is better than ugly
;;qt ; the 'cutest' gui framework ever
;;racket ; a DSL for DSLs
;;raku ; the artist formerly known as perl6
@@ -166,14 +166,14 @@
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
;;scala ; java, but good
- (scheme +guile) ; a fully conniving family of lisps
- sh ; she sells {ba,z,fi}sh shells on the C xor
+ (scheme +guile) ; a fully conniving family of lisps
+ sh ; she sells {ba,z,fi}sh shells on the C xor
;;sml
;;solidity ; do you need a blockchain? No.
;;swift ; who asked for emoji variables?
;;terra ; Earth and Moon in alignment for performance.
- web ; the tubes
- yaml ; JSON, but readable
+ (web +lsp +tree-sitter) ; the tubes
+ yaml ; JSON, but readable
;;zig ; C, but simpler
:email
@@ -184,8 +184,8 @@
:app
;;calendar
;;emms
- ;;everywhere ; *leave* Emacs!? You must be joking
- irc ; how neckbeards socialize
+ ;; everywhere ; *leave* Emacs!? You must be joking
+ irc ; how neckbeards socialize
rss ; emacs as an RSS reader
;;twitter ; twitter client https://twitter.com/vnought
diff --git a/config/doom/snippets/org-mode/daily b/config/doom/snippets/org-mode/daily
index f0f24fd..57e60c2 100644
--- a/config/doom/snippets/org-mode/daily
+++ b/config/doom/snippets/org-mode/daily
@@ -2,17 +2,18 @@
# name: daily
# key: daily
# --
-- Amazing things that happened yesterday
-- How could I have made yesterday even better?
-- Daily affirmations
-- What would make today great
-
-- What am I *happy* about in my life now? What about that makes me happy? How does that make me feel?
-- What am I *excited* about in my life now? What about that makes me excited? How does that make me feel?
-- What am I *proud* about in my life now? What about that makes me proud? How does that make me feel?
-- What am I *grateful* for in my life now? what about that makes me grateful? how does that make me feel?
-- What am I *enjoying most* in my life right now? what about that do I enjoy? How does that make me feel?
-- What am I *committed to* in my life right now? What about that make me committed? How does that make me feel?
-- Who do I love? Who loves me? What about that makes me loving? How does that make me feel?
+* Routine Review
+** Amazing things that happened yesterday
+** How could I have made yesterday even better?
+** Daily affirmations
+** What would make today great
+** What makes me feel? And what about that makes me feel that way? :feelings:
+- happy :: about in my life now? What about that makes me happy? How does that make me feel?
+- excited :: about in my life now? What about that makes me excited? How does that make me feel?
+- proud :: about in my life now? What about that makes me proud? How does that make me feel?
+- grateful :: for in my life now? what about that makes me grateful? how does that make me feel?
+- enjoying most :: in my life right now? what about that do I enjoy? How does that make me feel?
+- committed :: to in my life right now? What about that make me committed? How does that make me feel?
+- love :: Who do I love? Who loves me? What about that makes me loving? How does that make me feel?
- [ ] Timebox day \ No newline at end of file