~afontaine/nix unlisted

a3173336582142f69f7bc7104b0d467550b54719 — Andrew Fontaine a month ago 33e2dbd
doom: Update Doom

Now uses the new fancy mu4e module.

Also uses `eglot` for language server stuff, which needs more config,
but the switch has begun at laest.

Also uses new `vertico` for search + completion, as it is nicer than
ivy/counsel. This requires the package app-launcher to replace
`counsel-linux-app`.

(defun roam-extra:todo-p ()
  "Return non-nil if current buffer has any TODO entry.

TODO entries marked as done are ignored, meaning the this
function returns nil if current buffer contains only completed
tasks."
  (org-element-map
      (org-element-parse-buffer 'headline)
      'headline
    (lambda (h)
      (eq (org-element-property :todo-type h)
          'todo))
    nil 'first-match))

(defun roam-extra:update-todo-tag ()
  "Update TODO tag in the current buffer."
  (when (and (not (active-minibuffer-window))
             (org-roam--org-file-p buffer-file-name))
    (let* ((file (buffer-file-name (buffer-base-buffer)))
           (all-tags (org-roam--extract-tags file))
           (prop-tags (org-roam--extract-tags-prop file))
           (tags prop-tags))
      (if (roam-extra:todo-p)
          (setq tags (seq-uniq (cons "todo" tags)))
        (setq tags (remove "todo" tags)))
      (unless (equal prop-tags tags)
        (org-roam--set-global-prop
         "roam_tags"
         (combine-and-quote-strings tags))))))
M andrew/doom-emacs/doom/config.el => andrew/doom-emacs/doom/config.el +0 -2
@@ 76,8 76,6 @@
        exwm-layout-show-all-buffers t
        exwm-workspace-show-all-buffers t
        exwm-workspace-switch-create-limit 9))
(after! counsel
  (setq counsel-linux-app-format-function #'counsel-linux-app-format-function-name-pretty))

(after! circe
  (set-irc-server! "libera.afontaine.dev"

M andrew/doom-emacs/doom/init.el => andrew/doom-emacs/doom/init.el +4 -3
@@ 19,10 19,11 @@
       ;;japanese

       :completion
       (company)           ; the ultimate code completion backend
       (vertico +icon)           ; the ultimate code completion backend
       company
       ;;helm              ; the *other* search engine for love and life
       ;;ido               ; the other *other* search engine...
       (ivy +icons)               ; a search engine for love and life
       ;;(ivy +icons)               ; a search engine for love and life

       :ui
       ;;deft              ; notational velocity for Emacs


@@ 92,7 93,7 @@
       ;;gist              ; interacting with github gists
       (lookup           ; helps you navigate your code and documentation
        +docsets)        ; ...or in Dash docsets locally
       (lsp +bindings)
       (lsp +bindings +eglot)
       (magit +forge)             ; a git porcelain for Emacs
       make              ; run make tasks from Emacs
       ;;pass              ; password manager for nerds

M andrew/doom-emacs/doom/modules/os/exwm/packages.el => andrew/doom-emacs/doom/modules/os/exwm/packages.el +2 -0
@@ 27,3 27,5 @@

(if (featurep! :editor evil)
  (package! exwm-evil-state :recipe (:host github :repo "domenzain/evil-exwm-state") :pin "d18f2ec089a2e0a026393d3ac7d3951b2eb9b70b"))

(package! app-launcher :recipe (:host github :repo "SebastienWae/app-launcher"))

M andrew/doom-emacs/doom/packages.el => andrew/doom-emacs/doom/packages.el +0 -2
@@ 26,9 26,7 @@
(package! org-chef)
(package! org-superstar)
(package! org-super-agenda)
(package! org-msg :disable t)
(package! doct)
(package! mu4e-alert)
(package! mu4e-patch :recipe (:host github :repo "seanfarley/mu4e-patch"))
(package! reason-mode)