Update Doom Config for 5/22
This commit is contained in:
parent
e63b83a61b
commit
c0186c8b7e
3 changed files with 286 additions and 130 deletions
271
config.el
271
config.el
|
|
@ -2,9 +2,24 @@
|
|||
|
||||
;; Place your private configuration here! Remember, you do not need to run 'doom
|
||||
;; sync' after modifying this file!
|
||||
;; ** Default Init File
|
||||
;; Load the default init file. This is the place where distro packagers can place
|
||||
;; their own configuration. Doom disables it as an optimization, but it's useful
|
||||
;; for storing information that can only reliably be obtained through package
|
||||
;; managers. More specifically, it's used in this dotfiles to specify the full path
|
||||
;; to some commands used by Doom. Doing so removes the need to clutter =PATH= with
|
||||
;; commands not needed outside of Doom.
|
||||
;;
|
||||
;;
|
||||
;;#+begin_src emacs-lisp
|
||||
;;(load "default" 'noerror 'nomessage)
|
||||
;;#+end_src
|
||||
|
||||
|
||||
|
||||
;; Sane defaults
|
||||
(defvar is-archie-p (equal (system-name) "archie"))
|
||||
(defvar is-peregrine-p (equal (system-name) "peregrine"))
|
||||
(defvar is-macos-p (equal (system-name) "Shawns-Macbook-Pro.local"))
|
||||
(setq-default window-combination-resize t)
|
||||
(setq global-auto-revert-non-file-buffers t)
|
||||
|
|
@ -14,7 +29,9 @@
|
|||
scroll-margin 2 ; It's nice to maintain a little margin
|
||||
window-resize-pixelwise t
|
||||
)
|
||||
(setq auth-sources "~/.authinfo.gpg")
|
||||
;;; (setq auth-sources "~/.authinfo.gpg")
|
||||
(setq auth-sources
|
||||
'((:source "~/.authinfo.gpg")))
|
||||
|
||||
(display-time-mode 1)
|
||||
(global-subword-mode 1)
|
||||
|
|
@ -49,11 +66,12 @@
|
|||
;; `load-theme' function. This is the default:
|
||||
;;(use-package! all-the-icons)
|
||||
(setq doom-font (font-spec :family "JetBrains Mono" :style "Regular" :size 14)
|
||||
doom-variable-pitch-font (font-spec :family "JetBrains Mono" :size 18)
|
||||
doom-variable-pitch-font (font-spec :family "Overpass Nerd Font" :style "Regular" :size 18)
|
||||
doom-big-font (font-spec :family "JetBrains Mono" :style "Regular" :size 26))
|
||||
(defvar sb-org-font (font-spec :family "Source Code Pro" :style "Regular" :size 14))
|
||||
(defvar sb-org-font (font-spec :family "SauceCodePro" :style "Regular" :size 14))
|
||||
|
||||
(setq doom-theme 'doom-nord)
|
||||
;; (setq doom-theme 'doom-nord)
|
||||
(setq doom-theme 'doom-oceanic-next)
|
||||
(after! doom-themes
|
||||
;;(load-theme 'doom-nano-dark t)
|
||||
(setq doom-themes-enable-bold t
|
||||
|
|
@ -61,6 +79,10 @@
|
|||
(map! :leader
|
||||
:desc "Load new theme"
|
||||
"h t" #'counsel-load-theme)
|
||||
(funcall (lambda ()
|
||||
(set-frame-parameter nil 'alpha-background 95)
|
||||
(add-to-list 'default-frame-alist '(alpha-background . 95))
|
||||
))
|
||||
|
||||
;; 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'.
|
||||
|
|
@ -77,7 +99,7 @@
|
|||
;; remove the modes from `doom-modeline-continuous-word-count-modes'.
|
||||
;;
|
||||
(after! doom-modeline
|
||||
(setq doom-modeline-height 18)
|
||||
(setq doom-modeline-height 28)
|
||||
(setq doom-modeline-bar-width 6)
|
||||
(setq doom-modeline-enable-word-count t)
|
||||
(setq doom-modeline-continuous-word-count-modes '(markdown-mode org-mode)))
|
||||
|
|
@ -90,6 +112,10 @@
|
|||
(consult-buffer))
|
||||
(setq +ivy-buffer-preview t)
|
||||
|
||||
;; Escape insert mode with 'jk':
|
||||
(after! evil-escape
|
||||
(setq! evil-escape-key-sequence "jk"))
|
||||
|
||||
;; Here are some additional functions/macros that could help you configure Doom:
|
||||
;;
|
||||
;; - `load!' for loading external *.el files relative to this one
|
||||
|
|
@ -170,18 +196,18 @@
|
|||
;; (map! :leader
|
||||
;; :desc "Edit agenda file"
|
||||
;; "- a" #'(lambda () (interactive) (find-file "~/Org/agenda.org"))
|
||||
(map! :leader
|
||||
:desc "Edit eshell aliases"
|
||||
"- e" #'(lambda () (interactive) (find-file "~/.doom.d/aliases"))
|
||||
:leader
|
||||
:desc "Edit doom init.el"
|
||||
"- i" #'(lambda () (interactive) (find-file "~/.doom.d/init.el"))
|
||||
:leader
|
||||
:desc "Edit doom config.el"
|
||||
"- c" #'(lambda () (interactive) (find-file "~/.doom.d/config.el"))
|
||||
:leader
|
||||
:desc "Edit doom packages.el"
|
||||
"- p" #'(lambda () (interactive) (find-file "~/.doom.d/packages.el")))
|
||||
;; (map! :leader
|
||||
;; :desc "Edit eshell aliases"
|
||||
;; "- e" #'(lambda () (interactive) (find-file "~/.doom.d/aliases"))
|
||||
;; :leader
|
||||
;; :desc "Edit doom init.el"
|
||||
;; "- i" #'(lambda () (interactive) (find-file "~/.doom.d/init.el"))
|
||||
;; :leader
|
||||
;; :desc "Edit doom config.el"
|
||||
;; "- c" #'(lambda () (interactive) (find-file "~/.doom.d/config.el"))
|
||||
;; :leader
|
||||
;; :desc "Edit doom packages.el"
|
||||
;; "- p" #'(lambda () (interactive) (find-file "~/.doom.d/packages.el")))
|
||||
|
||||
;; (after! mastodon
|
||||
;; (setq mastodon-auth-source-file "~/.authinfo")
|
||||
|
|
@ -197,11 +223,24 @@
|
|||
;;(setq rmh-elfeed-org-files (list "~/Dropbox/Org/feedly.org"))
|
||||
(setq elfeed-use-curl t)
|
||||
(setq elfeed-protocol-fever-update-unread-only t)
|
||||
(setq elfeed-protocol-feeds (list
|
||||
(list "fever+https://shawnb@rss.onionpatch.cloud"
|
||||
(setq elfeed-protocol-feeds '(("fever+https://shawnb@rss.onionpatch.cloud"
|
||||
:api-url "https://rss.onionpatch.cloud/api/fever.php"
|
||||
:password ")9vwibuQmv9pr"
|
||||
:autotags '(("https://www.axios.com" news)("Hacker News" technology)))))
|
||||
:autotags (("https://feeds.arstechnica.com/arstechnica/index" secondary)
|
||||
("https://api.axios.com/feed/" nooz)
|
||||
("https://rss.csmonitor.com/feeds/all" nooz secondary)
|
||||
("https://hnrss.org/newest?points=150")
|
||||
("https://theimaginativeconservative.org/feed" primary)
|
||||
("https://kill-the-newsletter.com/feeds/nnug6b0e4e7h8swq.xml" bellingcat nooz primary)
|
||||
("https://planet.emacslife.com/atom.xml" primary emacs)
|
||||
("https://www.plough.com/en/Plough-RSS-Feed" primary religion)
|
||||
("https://reason.com/feed/" nooz secondary)
|
||||
("https://www.readtangle.com/rss/" primary nooz)
|
||||
("https://tracydurnell.com/feed/" primary blog)
|
||||
("https://www.voanews.com/api/zqboml-vomx-tpeivmy" nooz primary)
|
||||
("https://www.voanews.com/api/zpbovl-vomx-tpe_vmr" primary)
|
||||
("https://www.voanews.com/api/zyritl-vomx-tpettmq" techno primary)
|
||||
("https://www.voanews.com/api/zmbjqvl-vomx-tpeyvror" primary)))))
|
||||
;; enable elfeed-protocol
|
||||
(setq elfeed-protocol-enabled-protocols '(fever))
|
||||
(elfeed-protocol-enable)
|
||||
|
|
@ -248,6 +287,9 @@
|
|||
:desc "Add search item to Pocket"
|
||||
"r k s" #'(lambda () (interactive) (pocket-reader-elfeed-search-add-link))
|
||||
:leader
|
||||
:desc "Get MetaFilter items"
|
||||
"r m" #'(lambda () (interactive) (elfeed-search-set-filter "@1-week-ago +unread =Meta"))
|
||||
:leader
|
||||
:desc "Get News items"
|
||||
"r n e" #'(lambda () (interactive) (elfeed-search-set-filter "@1-week-ago +unread +News"))
|
||||
:leader
|
||||
|
|
@ -280,35 +322,45 @@
|
|||
(setq elfeed-goodies/entry-pane-position 'bottom)
|
||||
|
||||
(setq elfeed-search-filter "@1-week-ago +unread "
|
||||
elfeed-search-title-min-width 80)
|
||||
;;elfeed-show-refresh-function #'+rss/elfeed-show-refresh--better-style)
|
||||
elfeed-search-title-min-width 80
|
||||
shr-max-image-proportion 0.6)
|
||||
|
||||
;; (defface elfeed-show-title-face '((t (:weight ultrabold :slant italic :height 1.5)))
|
||||
;; "title face in elfeed show buffer"
|
||||
;; :group 'elfeed)
|
||||
;; (defface elfeed-show-author-face `((t (:weight light)))
|
||||
;; "title face in elfeed show buffer"
|
||||
;; :group 'elfeed)
|
||||
;; (set-face-attribute 'elfeed-search-title-face nil
|
||||
;; :foreground 'nil
|
||||
;; :weight 'light)
|
||||
|
||||
;; (after! elfeed-show
|
||||
;; (require 'url))
|
||||
|
||||
(defun +rss/elfeed-show-refresh--better-style ()
|
||||
"Update the buffer to match the selected entry, using a mail-style."
|
||||
(defun sbinfo/elfeed-filter-by-ordinality ()
|
||||
"Select a default filter and update elfeed."
|
||||
(interactive)
|
||||
(let* ((inhibit-read-only t)
|
||||
(title (elfeed-entry-title elfeed-show-entry))
|
||||
(date (seconds-to-time (elfeed-entry-date elfeed-show-entry)))
|
||||
(author (elfeed-meta elfeed-show-entry :author))
|
||||
(link (elfeed-entry-link elfeed-show-entry))
|
||||
(tags (elfeed-entry-tags elfeed-show-entry))
|
||||
(tagsstr (mapconcat #'symbol-name tags ", "))
|
||||
(nicedate (format-time-string ("%a, %e %b %Y %T %Z" date))
|
||||
(content (elfeed-deref (elfeed-entry-content elfeed-show-entry)))
|
||||
(type (elfeed-entry-content-type elfeed-show-entry))
|
||||
(feed (elfeed-entry-feed elfeed-show-entry))
|
||||
(feed-title (elfeed-feed-title feed))
|
||||
(base (and feed (elfeed-compute-base (elfeed-feed-url feed)))))
|
||||
(erase-buffer)
|
||||
(insert "\n")))
|
||||
)
|
||||
(let* ((filters
|
||||
'(("Default - 3 Days" . "@3-days-ago +unread -Sports -Videos")
|
||||
("Default - 7 Days" . "@7-days-ago +unread -Sports -Videos")
|
||||
("Default with Videos" . "@7-days-ago +unread")
|
||||
("Primary - 7 Days" . "@7-days-ago +unread +primary")
|
||||
("Secondary - 7 Days" . "@7-days-ago +unread +secondary")
|
||||
("Weekly News" . "@7-days-ago +nooz")
|
||||
("Wait Items" . "@7-days-ago +unread +wait")))
|
||||
;; ("Third (3rd)" . "@7-days-ago +3rd +unread")
|
||||
;; ("Outlets" . "@2-days-ago +outlet")))
|
||||
(filter
|
||||
(completing-read "Elfeed Filter: " filters nil t)))
|
||||
(setq elfeed-search-filter
|
||||
(alist-get filter filters nil nil #'string=))
|
||||
(elfeed-search-update :force)))
|
||||
|
||||
(use-package! wombag
|
||||
:config
|
||||
(setq wombag-host "https://read.onionpatch.cloud" ;where you access Wallabag
|
||||
wombag-username "shawnb"
|
||||
wombag-password "6!EzrhCk94qxm"
|
||||
wombag-client-id "3_2c3vfqmpkqm8oosg8ccwo4scgoscosc0oowssgcs8oowc0w844"
|
||||
wombag-client-secret "5otka1i1kpc84wwwwsc404o8o0wow4sgcksk0ok8s8ws0c4c8g"))
|
||||
|
||||
|
||||
;; ⌘-b ; browse to URL in foreground
|
||||
|
|
@ -342,14 +394,17 @@
|
|||
display-line-numbers nil))
|
||||
|
||||
(add-hook 'markdown-mode-hook 'writing-mode)
|
||||
(setq ispell-program-name "/usr/bin/aspell")
|
||||
;; (setq ispell-program-name "/usr/bin/aspell")
|
||||
(setq ispell-program-name "/home/shawnb/.nix-profile/bin/aspell")
|
||||
(setq ispell-list-command "--list")
|
||||
|
||||
(defun sbinfo/org-mode-setup ()
|
||||
(setq +zen-text-scale 0)
|
||||
(org-indent-mode)
|
||||
(org-superstar-mode 1)
|
||||
(org-bullets-mode 1))
|
||||
;; (variable-pitch-mode 1)
|
||||
;; (org-superstar-mode 1)
|
||||
(org-bullets-mode 1)
|
||||
(display-line-numbers-mode -1)
|
||||
(variable-pitch-mode 1))
|
||||
;; (visual-line-mode 1))
|
||||
|
||||
(defun sbinfo/org-font-setup ()
|
||||
|
|
@ -362,21 +417,23 @@
|
|||
(org-level-6 . 1.0)
|
||||
(org-level-7 . 1.0)
|
||||
(org-level-8 . 1.0)))
|
||||
;; (set-face-attribute (car face) nil :font "JetBrains Mono" :weight 'regular :height (cdr face))))
|
||||
;; (set-face-attribute (car face) nil :font "Fira Code Retina" :weight 'regular :height (cdr face))))
|
||||
;; (set-face-attribute (car face) nil :font "Source Code Pro" :weight 'regular :height (cdr face)))
|
||||
(set-face-attribute (car face) nil :font "Source Code Pro" :height (cdr face))))
|
||||
(set-face-attribute (car face) nil :font "Overpass Nerd Font" :weight 'regular :height (cdr face)))
|
||||
|
||||
;; Ensure that anything that should be fixed-pitch in Org files appears that way
|
||||
;; (set-face-attribute 'org-block nil :foreground nil :inherit 'fixed-pitch)
|
||||
;; (set-face-attribute 'org-code nil :inherit '(shadow fixed-pitch))
|
||||
;; (set-face-attribute 'org-table nil :inherit '(shadow fixed-pitch))
|
||||
;; (set-face-attribute 'org-verbatim nil :inherit '(shadow fixed-pitch))
|
||||
;; (set-face-attribute 'org-special-keyword nil :inherit '(font-lock-comment-face fixed-pitch))
|
||||
;; (set-face-attribute 'org-meta-line nil :inherit '(font-lock-comment-face fixed-pitch))
|
||||
;; (set-face-attribute 'org-checkbox nil :inherit 'fixed-pitch))
|
||||
(set-face-attribute 'org-block unspecified :foreground nil :inherit 'fixed-pitch)
|
||||
(set-face-attribute 'org-hide nil :inherit 'fixed-pitch)
|
||||
(set-face-attribute 'org-code nil :inherit '(shadow fixed-pitch))
|
||||
(set-face-attribute 'org-table nil :inherit '(shadow fixed-pitch))
|
||||
(set-face-attribute 'org-verbatim nil :inherit '(shadow fixed-pitch))
|
||||
(set-face-attribute 'org-special-keyword nil :inherit '(font-lock-comment-face fixed-pitch))
|
||||
(set-face-attribute 'org-meta-line nil :inherit '(font-lock-comment-face fixed-pitch))
|
||||
(set-face-attribute 'org-checkbox nil :inherit 'fixed-pitch)
|
||||
)
|
||||
;; (set-face-attribute (car face) nil :font "Fira Code Retina" :weight 'regular :height (cdr face))))
|
||||
;; (set-face-attribute (car face) nil :font "Source Code Pro" :weight 'regular :height (cdr face)))
|
||||
;; (set-face-attribute (car face) nil :font "SauceCodePro" :height (cdr face))))
|
||||
|
||||
|
||||
(defvar sbinfo/open-ai-key "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")
|
||||
|
||||
(after! chatgpt-shell
|
||||
(setq chatgpt-shell-openai-key sbinfo/open-ai-key))
|
||||
|
|
@ -387,17 +444,28 @@
|
|||
(setq org-ai-use-auth-source nil)
|
||||
(setq org-ai-openai-api-token sbinfo/open-ai-key))
|
||||
|
||||
(use-package! gptel
|
||||
:config
|
||||
(setq! gptel-api-key sbinfo/open-ai-key))
|
||||
(gptel-make-anthropic "Claude" ;Any name you want
|
||||
:stream t ;Streaming responses
|
||||
:key (auth-source-search :host "claude.ai"))
|
||||
;; (use-package! gptel
|
||||
;; :config
|
||||
;; )
|
||||
|
||||
(use-package! org-web-tools
|
||||
:commands org-web-tools--url-as-readable-org)
|
||||
|
||||
(after! org
|
||||
(add-hook! org-mode :append
|
||||
#'flymake-vale-load)
|
||||
|
||||
(add-hook 'org-mode-hook #'sbinfo/org-mode-setup)
|
||||
(setq org-directory "~/org/"
|
||||
org-agenda-files '("agenda.org" "goals_2024.org" "job_search_2022.org")
|
||||
org-agenda-files '("agenda.org" "goals_2025.org" "job_search_2022.org")
|
||||
org-agenda-start-with-follow-mode t
|
||||
org-default-notes-file (expand-file-name "notes.org" org-directory)
|
||||
org-ellipsis " ▼ "
|
||||
org-bullets-bullet-list '("◉" "○" "●" "○" "●" "○" "●")
|
||||
org-adapt-indentation t
|
||||
org-indent-indentation-per-level 4
|
||||
org-log-done 'time
|
||||
org-roam-directory "~/org/roam/"
|
||||
|
|
@ -424,17 +492,64 @@
|
|||
'(("b" "Bookmark" entry
|
||||
(file "~/org/bookmarksv2.org")
|
||||
"* %^{title}\n#+date: %U\n- URL: %^{link}\n- Context: %?")
|
||||
("c" "Coral Lane To-Do" checkitem
|
||||
(file+headline "~/org/coral_lane_activities.org" "To Dos")
|
||||
" [ ] %?\n")
|
||||
("h" "Templates for hockey games")
|
||||
("hp" "Playoff Game" entry
|
||||
(file "~/org/dalvsedmwcf2025.org")
|
||||
(file "~/org/templates/playoffcapture.orgtmpl") :unnarrowed t)
|
||||
("hr" "Regular Game" entry
|
||||
(file "~/org/dallasstars20242025.org")
|
||||
(file "~/org/templates/regular.orgtmpl") :unnarrowed t)
|
||||
("i" "IT Request" checkitem
|
||||
(file+headline "~/org/notes.org" "Future IT Requests")
|
||||
" [ ] %?\n")
|
||||
("s" "Shopping Item" checkitem
|
||||
(file+headline "~/org/Shopping.org" "Needs")
|
||||
" [ ] %?\n")
|
||||
("t" "Personal todo" entry
|
||||
(file+headline "~/org/agenda.org" "Inbox")
|
||||
"* [ ] %?\n%i\n%a")
|
||||
(file "~/org/agenda.org")
|
||||
"* TODO %?\n%i\n")
|
||||
("n" "Personal notes" entry
|
||||
(file+headline "~/org/notes.org" "Inbox")
|
||||
"* %u %?\n%i\n%a" :prepend t)))
|
||||
"* %u %?\n%i\n%a" :prepend t)
|
||||
("u" "Urinary Tracker" table-line
|
||||
(file+headline "~/org/urinary_tracker.org" "Urinary Tracker")
|
||||
"| %<%Y-%m-%d> | %<%I:%M %p> | %? | | |"))
|
||||
org-roam-capture-ref-templates
|
||||
'(("w" "ref" plain "%(org-web-tools--url-as-readable-org \"${ref}\")"
|
||||
:target (file+head "clips/${slug}.org" "#+title: ${title}\n")
|
||||
:unnarrowed t)))
|
||||
;;("j" "Journal" entry
|
||||
;;(file+olp+datetree +org-capture-journal-file)
|
||||
;;"* %U %?\n%i\n%a" :prepend t)))
|
||||
(sbinfo/org-font-setup))
|
||||
|
||||
(use-package! org-modern
|
||||
:hook (org-mode . org-modern-mode)
|
||||
:config
|
||||
(setq org-modern-star '("◉" "○" "✸" "✿" "✤" "✜" "◆" "▶")
|
||||
org-modern-table-vertical 1
|
||||
org-modern-table-horizontal 0.2
|
||||
org-modern-list '((43 . "➤")
|
||||
(45 . "–")
|
||||
(42 . "•"))
|
||||
org-modern-todo-faces
|
||||
'(("TODO" :inverse-video t :inherit org-todo)
|
||||
("BLOG" :inverse-video t :inherit +org-todo-project)
|
||||
("PROJ" :inverse-video t :inherit +org-todo-project)
|
||||
("WAIT" :inverse-video t :inherit +org-todo-onhold)
|
||||
("CANCELLED" :inverse-video t :inherit +org-todo-cancel))
|
||||
org-modern-footnote
|
||||
(cons nil (cadr org-script-display))
|
||||
org-modern-block-fringe nil
|
||||
org-modern-progress nil
|
||||
org-modern-priority nil
|
||||
org-modern-horizontal-rule (make-string 36 ?─)
|
||||
)
|
||||
(custom-set-faces! '(org-modern-statistics :inherit org-checkbox-statistics-todo)))
|
||||
|
||||
(use-package! websocket
|
||||
:after org-roam)
|
||||
|
||||
|
|
@ -479,6 +594,12 @@
|
|||
;; Todoist
|
||||
(setq todoist-token "344745a4ca6497cbce38cc957cad0c59c5d91613")
|
||||
|
||||
;; Vale
|
||||
(defvar my-flymake-vale-executable "/home/shawnb/.nix-profile/bin/vale")
|
||||
(use-package! flymake-vale
|
||||
:config
|
||||
(setq flymake-vale-program my-flymake-vale-executable))
|
||||
|
||||
;; Auto create directories recursively
|
||||
;; See https://emacsredux.com/blog/2022/06/12/auto-create-missing-directories/
|
||||
(defun er-auto-create-missing-dirs ()
|
||||
|
|
@ -486,7 +607,25 @@
|
|||
(unless (file-exists-p target-dir)
|
||||
(make-directory target-dir t))))
|
||||
|
||||
;; Run du -hc on a directory in Dired
|
||||
(defun sbinfo/dired-du ()
|
||||
"Run 'du -hc' on the directory under the cursor in Dired."
|
||||
(interactive)
|
||||
(let ((current-dir (dired-get-file-for-visit)))
|
||||
(if (file-directory-p current-dir)
|
||||
(dired-do-async-shell-command "du -hc" nil (list current-dir))
|
||||
(message "The current point is not a directory."))))
|
||||
|
||||
(add-to-list 'find-file-not-found-functions #'er-auto-create-missing-dirs)
|
||||
;; ACe Window
|
||||
(global-set-key (kbd "M-o") 'ace-window)
|
||||
(setq aw-keys '(?a ?s ?d ?f ?g ?h ?j ?k ?l))
|
||||
;; nov
|
||||
(use-package! nov
|
||||
:config
|
||||
(add-to-list 'auto-mode-alist '("\\.epub\\'" . nov-mode))
|
||||
)
|
||||
|
||||
(after! ledger-mode
|
||||
(setq ledger-binary-path "hledger.sh")
|
||||
(setq ledger-default-date-format "%Y-%m-%d"))
|
||||
|
|
|
|||
48
init.el
48
init.el
|
|
@ -21,17 +21,18 @@
|
|||
;;layout ; auie,ctsrnm is the superior home row
|
||||
|
||||
:completion
|
||||
company ; the ultimate code completion backend
|
||||
;;company ; the ultimate code completion backend
|
||||
(corfu +orderless +dabbrev) ; complete with cap(f), cape and a flying feather!
|
||||
;;helm ; the *other* search engine for love and life
|
||||
;;ido ; the other *other* search engine...
|
||||
;;ivy ; a search engine for love and life
|
||||
vertico ; the search engine of the future
|
||||
(vertico +icons) ; 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-quit ; DOOM quit-message prompts when you quit Emacs
|
||||
;;(emoji +unicode) ; 🙂
|
||||
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
|
||||
;;hydra
|
||||
|
|
@ -42,21 +43,21 @@
|
|||
;;nav-flash ; blink cursor line after big motions
|
||||
;;neotree ; a project drawer, like NERDTree for vim
|
||||
ophints ; highlight the region an operation acts on
|
||||
(popup +defaults) ; tame sudden yet inevitable temporary windows
|
||||
(popup +all +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 +pretty) ; vcs diff in the fringe
|
||||
vi-tilde-fringe ; fringe tildes to mark beyond EOB
|
||||
;;window-select ; visually switch windows
|
||||
window-select ; visually switch windows
|
||||
workspaces ; tab emulation, persistence & separate workspaces
|
||||
;;zen ; distraction-free coding or writing
|
||||
zen ; distraction-free coding or writing
|
||||
|
||||
:editor
|
||||
(evil +everywhere); 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
|
||||
|
|
@ -67,35 +68,35 @@
|
|||
;;word-wrap ; soft wrapping with language-aware indent
|
||||
|
||||
:emacs
|
||||
dired ; making dired pretty [functional]
|
||||
(dired +icons) ; making dired pretty [functional]
|
||||
electric ; smarter, keyword-based electric-indent
|
||||
;;ibuffer ; interactive buffer management
|
||||
(ibuffer +icons) ; interactive buffer management
|
||||
undo ; persistent, smarter undo for your inevitable mistakes
|
||||
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) ; tasing you for misspelling mispelling
|
||||
(spell +aspell +flyspell) ; tasing you for misspelling mispelling
|
||||
;;grammar ; tasing grammar mistake every you make
|
||||
|
||||
:tools
|
||||
;;ansible
|
||||
;;biblio ; Writes a PhD for you (citation needed)
|
||||
;;debugger ; FIXME stepping through code, to help you add bugs
|
||||
;;direnv
|
||||
direnv
|
||||
;;docker
|
||||
;;editorconfig ; let someone else argue about tabs vs spaces
|
||||
;;ein ; tame Jupyter notebooks with emacs
|
||||
(eval +overlay) ; run code, run (also, repls)
|
||||
;;gist ; interacting with github gists
|
||||
lookup ; navigate your code and its documentation
|
||||
(lsp +eglot) ; M-x vscode
|
||||
(lookup +dictionary) ; navigate your code and its documentation
|
||||
lsp ; M-x vscode
|
||||
magit ; a git porcelain for Emacs
|
||||
;;make ; run make tasks from Emacs
|
||||
;;pass ; password manager for nerds
|
||||
|
|
@ -105,7 +106,7 @@
|
|||
;;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
|
||||
|
|
@ -147,20 +148,25 @@
|
|||
;;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
|
||||
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 +tree-sitter +lsp) ; I hereby declare "nix geht mehr!"
|
||||
;;ocaml ; an objective camel
|
||||
(org
|
||||
+pretty
|
||||
+hugo
|
||||
+noter
|
||||
+pandoc
|
||||
+roam2) ; 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 +pyright) ; beautiful is better than ugly
|
||||
(python
|
||||
+lsp
|
||||
+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
|
||||
|
|
@ -176,7 +182,9 @@
|
|||
;;swift ; who asked for emoji variables?
|
||||
;;terra ; Earth and Moon in alignment for performance.
|
||||
;;web ; the tubes
|
||||
yaml ; JSON, but readable
|
||||
(yaml
|
||||
+lsp
|
||||
+tree-sitter) ; JSON, but readable
|
||||
;;zig ; C, but simpler
|
||||
|
||||
:email
|
||||
|
|
@ -187,7 +195,7 @@
|
|||
:app
|
||||
;;calendar
|
||||
;;emms
|
||||
;;everywhere ; *leave* Emacs!? You must be joking
|
||||
everywhere ; *leave* Emacs!? You must be joking
|
||||
;;irc ; how neckbeards socialize
|
||||
rss ; emacs as an RSS reader
|
||||
;;twitter ; twitter client https://twitter.com/vnought
|
||||
|
|
|
|||
13
packages.el
13
packages.el
|
|
@ -62,8 +62,12 @@
|
|||
(package! elfeed-goodies)
|
||||
;;(package! elfeed-org)
|
||||
(package! elfeed-protocol)
|
||||
(package! flymake-vale
|
||||
:recipe (:host github
|
||||
:repo "tpeacock19/flymake-vale"))
|
||||
(package! ement)
|
||||
(package! gptel)
|
||||
(package! nov)
|
||||
(package! org-ai)
|
||||
(package! org-bullets)
|
||||
(package! org-roam-ui)
|
||||
|
|
@ -72,9 +76,14 @@
|
|||
:repo "brunoarine/org-similarity"
|
||||
:branch "main"))
|
||||
(package! org-web-tools :pin "8f8b5c6")
|
||||
(package! pocket-reader :pin "5354082")
|
||||
(package! pocket-reader :pin "7f55668")
|
||||
;; (package! org-web-tools)
|
||||
;; (package! pocket-reader)
|
||||
(package! todoist)
|
||||
(package! twittering-mode)
|
||||
(package! wc-mode)
|
||||
(package! wombag
|
||||
:recipe (:host github
|
||||
:repo "karthink/wombag"))
|
||||
(package! writegood-mode)
|
||||
(package! wordsmith-mode)
|
||||
;; (package! wordsmith-mode)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue