Merge branch 'doomemacs:master' into master
This commit is contained in:
commit
febd0461ee
28 changed files with 113 additions and 97 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -1,3 +1,6 @@
|
||||||
|
# generated by macOS
|
||||||
|
.DS_Store
|
||||||
|
|
||||||
# machine generated doom profiles or metadata
|
# machine generated doom profiles or metadata
|
||||||
/profiles/*.el
|
/profiles/*.el
|
||||||
/.local*/
|
/.local*/
|
||||||
|
|
|
@ -449,8 +449,8 @@ Defaults to the profile at `doom-profile-default'."
|
||||||
(defun doom-profile--generate-package-autoloads ()
|
(defun doom-profile--generate-package-autoloads ()
|
||||||
(doom-autoloads--scan
|
(doom-autoloads--scan
|
||||||
(mapcar #'straight--autoloads-file
|
(mapcar #'straight--autoloads-file
|
||||||
(seq-difference (hash-table-keys straight--build-cache)
|
(nreverse (seq-difference (hash-table-keys straight--build-cache)
|
||||||
doom-autoloads-excluded-packages))
|
doom-autoloads-excluded-packages)))
|
||||||
doom-autoloads-excluded-files
|
doom-autoloads-excluded-files
|
||||||
'literal))
|
'literal))
|
||||||
|
|
||||||
|
|
18
lisp/doom.el
18
lisp/doom.el
|
@ -119,9 +119,9 @@
|
||||||
(let ((inhibit-changing-match-data t))
|
(let ((inhibit-changing-match-data t))
|
||||||
(if (string-match "HARFBUZZ" system-configuration-features) ; no alternative
|
(if (string-match "HARFBUZZ" system-configuration-features) ; no alternative
|
||||||
(push 'harfbuzz features)))
|
(push 'harfbuzz features)))
|
||||||
;; `native-compile' exists whether or not it is functional (e.g. libgcc is
|
;; The `native-compile' feature exists whether or not it is functional (e.g.
|
||||||
;; available or not). This seems silly, so pretend it doesn't exist if it
|
;; libgcc is available or not). This seems silly, so pretend it doesn't exist if
|
||||||
;; isn't available.
|
;; it isn't functional.
|
||||||
(if (featurep 'native-compile)
|
(if (featurep 'native-compile)
|
||||||
(if (not (native-comp-available-p))
|
(if (not (native-comp-available-p))
|
||||||
(delq 'native-compile features)))
|
(delq 'native-compile features)))
|
||||||
|
@ -168,7 +168,7 @@
|
||||||
"Current version of Doom Emacs core.")
|
"Current version of Doom Emacs core.")
|
||||||
|
|
||||||
;; DEPRECATED: Remove these when the modules are moved out of core.
|
;; DEPRECATED: Remove these when the modules are moved out of core.
|
||||||
(defconst doom-modules-version "23.09.0-pre"
|
(defconst doom-modules-version "23.12.0-pre"
|
||||||
"Current version of Doom Emacs.")
|
"Current version of Doom Emacs.")
|
||||||
|
|
||||||
(defvar doom-init-time nil
|
(defvar doom-init-time nil
|
||||||
|
@ -697,6 +697,16 @@ appropriately against `noninteractive' or the `cli' context."
|
||||||
;;
|
;;
|
||||||
;;; Last minute initialization
|
;;; Last minute initialization
|
||||||
|
|
||||||
|
(when (daemonp)
|
||||||
|
(message "Starting Doom Emacs in daemon mode!")
|
||||||
|
(unless doom-inhibit-log
|
||||||
|
(add-hook! 'doom-after-init-hook :depth 106
|
||||||
|
(unless doom-inhibit-log
|
||||||
|
(setq doom-inhibit-log (not (or noninteractive init-file-debug))))
|
||||||
|
(message "Disabling verbose mode. Have fun!"))
|
||||||
|
(add-hook! 'kill-emacs-hook :depth 110
|
||||||
|
(message "Killing Emacs. Sayonara!"))))
|
||||||
|
|
||||||
(add-hook! 'doom-before-init-hook :depth -105
|
(add-hook! 'doom-before-init-hook :depth -105
|
||||||
(defun doom--begin-init-h ()
|
(defun doom--begin-init-h ()
|
||||||
"Begin the startup process."
|
"Begin the startup process."
|
||||||
|
|
|
@ -239,13 +239,14 @@ Must be run from a magit diff buffer."
|
||||||
(unless (= (length before) (length after))
|
(unless (= (length before) (length after))
|
||||||
(user-error "Uneven number of packages being bumped"))
|
(user-error "Uneven number of packages being bumped"))
|
||||||
(dolist (p1 before)
|
(dolist (p1 before)
|
||||||
(cl-destructuring-bind (package &key plist _beg _end &allow-other-keys) p1
|
(when (and (listp p1) (eq (car p1) 'package!))
|
||||||
(let ((p2 (cdr (assq package after))))
|
(cl-destructuring-bind (package &key plist _beg _end &allow-other-keys) p1
|
||||||
(if (null p2)
|
(let ((p2 (cdr (assq package after))))
|
||||||
(push package errors)
|
(if (null p2)
|
||||||
(let ((bstr1 (doom--package-to-bump-string package plist))
|
(push package errors)
|
||||||
(bstr2 (doom--package-to-bump-string package (plist-get p2 :plist))))
|
(let ((bstr1 (doom--package-to-bump-string package plist))
|
||||||
(cl-pushnew (format "%s -> %s" bstr1 bstr2) lines :test #'equal))))))
|
(bstr2 (doom--package-to-bump-string package (plist-get p2 :plist))))
|
||||||
|
(cl-pushnew (format "%s -> %s" bstr1 bstr2) lines :test #'equal)))))))
|
||||||
(if (null lines)
|
(if (null lines)
|
||||||
(user-error "No bumps to bumpify")
|
(user-error "No bumps to bumpify")
|
||||||
(prog1 (funcall (if interactive #'kill-new #'identity)
|
(prog1 (funcall (if interactive #'kill-new #'identity)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;; -*- no-byte-compile: t; -*-
|
;; -*- no-byte-compile: t; -*-
|
||||||
;;; checkers/grammar/packages.el
|
;;; checkers/grammar/packages.el
|
||||||
|
|
||||||
(package! langtool :pin "8276eccc5587bc12fd205ee58a7a982f0a136e41")
|
(package! langtool :pin "d86101eafe9a994eb0425e08e7c1795e9cb0cd42")
|
||||||
(package! writegood-mode :pin "ed42d918d98826ad88928b7af9f2597502afc6b0")
|
(package! writegood-mode :pin "d54eadeedb8bf3aa0e0a584c0a7373c69644f4b8")
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
;;; checkers/spell/packages.el
|
;;; checkers/spell/packages.el
|
||||||
|
|
||||||
(if (not (modulep! +flyspell))
|
(if (not (modulep! +flyspell))
|
||||||
(package! spell-fu :pin "aed6e87aa31013534b7a6cbedb26e4f29ccea735")
|
(package! spell-fu :pin "e4031935803c66eca2f076dce72b0a6a770d026c")
|
||||||
(package! flyspell-correct :pin "7d7b6b01188bd28e20a13736ac9f36c3367bd16e")
|
(package! flyspell-correct :pin "1e7a5a56362dd875dddf848b9a9e25d1395b9d37")
|
||||||
(cond ((modulep! :completion ivy)
|
(cond ((modulep! :completion ivy)
|
||||||
(package! flyspell-correct-ivy))
|
(package! flyspell-correct-ivy))
|
||||||
((modulep! :completion helm)
|
((modulep! :completion helm)
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
;;; checkers/syntax/packages.el
|
;;; checkers/syntax/packages.el
|
||||||
|
|
||||||
(unless (modulep! +flymake)
|
(unless (modulep! +flymake)
|
||||||
(package! flycheck :pin "784f184cdd9f9cb4e3dbb997c09d93e954142842")
|
(package! flycheck :pin "e56e30d8c66ffc9776d07740658d3b542c1a8e21")
|
||||||
(package! flycheck-popup-tip :pin "ef86aad907f27ca076859d8d9416f4f7727619c6")
|
(package! flycheck-popup-tip :pin "ef86aad907f27ca076859d8d9416f4f7727619c6")
|
||||||
(when (modulep! +childframe)
|
(when (modulep! +childframe)
|
||||||
(package! flycheck-posframe :pin "8f60c9bf124ab9597d681504a73fdf116a0bde12")))
|
(package! flycheck-posframe :pin "19896b922c76a0f460bf3fe8d8ebc2f9ac9028d8")))
|
||||||
|
|
||||||
;; Flymake
|
;; Flymake
|
||||||
(when (modulep! +flymake)
|
(when (modulep! +flymake)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
;; -*- no-byte-compile: t; -*-
|
;; -*- no-byte-compile: t; -*-
|
||||||
;;; completion/company/packages.el
|
;;; completion/company/packages.el
|
||||||
|
|
||||||
(package! company :pin "9b21604d19696de2c79ee28931620839b3a908b4")
|
(package! company :pin "ed46a616ab9906fd43a630479b6a6c3f79e606f0")
|
||||||
(package! company-dict :pin "cd7b8394f6014c57897f65d335d6b2bd65dab1f4")
|
(package! company-dict :pin "cd7b8394f6014c57897f65d335d6b2bd65dab1f4")
|
||||||
(when (modulep! +childframe)
|
(when (modulep! +childframe)
|
||||||
(package! company-box :pin "b6f53e26adf948aca55c3ff6c22c21a6a6614253"))
|
(package! company-box :pin "b6f53e26adf948aca55c3ff6c22c21a6a6614253"))
|
||||||
|
|
|
@ -1,20 +1,20 @@
|
||||||
;; -*- no-byte-compile: t; -*-
|
;; -*- no-byte-compile: t; -*-
|
||||||
;;; completion/helm/packages.el
|
;;; completion/helm/packages.el
|
||||||
|
|
||||||
(package! helm :pin "dfd6403947c5cd9f32afcd6bc92a1756cc958c82")
|
(package! helm :pin "96aad023cb12e995e92763195086ccee3aa5a141")
|
||||||
(package! helm-company :pin "6eb5c2d730a60e394e005b47c1db018697094dde")
|
(package! helm-company :pin "4622b82353220ee6cc33468f710fa5b6b253b7f1")
|
||||||
(package! helm-c-yasnippet :pin "e214eec8b2875d8a7cd09006dfb6a8e15e9e4079")
|
(package! helm-c-yasnippet :pin "c5880e740da101fde7a995e94a7b16c330e57583")
|
||||||
(package! helm-descbinds :pin "b72515982396b6e336ad7beb6767e95a80fca192")
|
(package! helm-descbinds :pin "b72515982396b6e336ad7beb6767e95a80fca192")
|
||||||
(package! helm-describe-modes :pin "11fb36af119b784539d31c6160002de1957408aa")
|
(package! helm-describe-modes :pin "11fb36af119b784539d31c6160002de1957408aa")
|
||||||
(package! helm-projectile :pin "35a2111d00c0c0c9d8743280d3f1243bb217118a")
|
(package! helm-projectile :pin "e2e38825c975269a4971df25e79b2ae98929624e")
|
||||||
(package! helm-rg :pin "ee0a3c09da0c843715344919400ab0a0190cc9dc")
|
(package! helm-rg :pin "ee0a3c09da0c843715344919400ab0a0190cc9dc")
|
||||||
(package! swiper-helm :pin "93fb6db87bc6a5967898b5fd3286954cc72a0008")
|
(package! swiper-helm :pin "93fb6db87bc6a5967898b5fd3286954cc72a0008")
|
||||||
|
|
||||||
(when (modulep! +childframe)
|
(when (modulep! +childframe)
|
||||||
(package! helm-posframe :pin "87461b52b6f3f378c63642a33f584d4a4ba28351"))
|
(package! helm-posframe :pin "0b6bb016f0ff4980860a9d00574de311748c40b0"))
|
||||||
(when (modulep! +fuzzy)
|
(when (modulep! +fuzzy)
|
||||||
(package! helm-flx :pin "5220099e695a3586dba2d59640217fe378e66310"))
|
(package! helm-flx :pin "5220099e695a3586dba2d59640217fe378e66310"))
|
||||||
(when (modulep! +icons)
|
(when (modulep! +icons)
|
||||||
(package! helm-icons :pin "53349000b114b2dfc874252de6605e3bafa435e2"))
|
(package! helm-icons :pin "0d113719ee72cb7b6bb7db29f7200d667bd86607"))
|
||||||
(when (modulep! :lang org)
|
(when (modulep! :lang org)
|
||||||
(package! helm-org :pin "d67186d3a64e610c03a5f3d583488f018fb032e4"))
|
(package! helm-org :pin "c80e53315ce6b096e2d0e630702df924bf00bf6a"))
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
;; -*- no-byte-compile: t; -*-
|
;; -*- no-byte-compile: t; -*-
|
||||||
;;; completion/ivy/packages.el
|
;;; completion/ivy/packages.el
|
||||||
|
|
||||||
(package! swiper :pin "9d630d800e856a2c984c5a62a6f0ad313a9d2228")
|
(package! swiper :pin "8c30f4cab5948aa8d942a3b2bbf5fb6a94d9441d")
|
||||||
(package! ivy)
|
(package! ivy)
|
||||||
(package! ivy-hydra)
|
(package! ivy-hydra)
|
||||||
(package! ivy-avy)
|
(package! ivy-avy)
|
||||||
|
@ -13,7 +13,7 @@
|
||||||
(package! wgrep :pin "3132abd3750b8c87cbcf6942db952acfab5edccd")
|
(package! wgrep :pin "3132abd3750b8c87cbcf6942db952acfab5edccd")
|
||||||
|
|
||||||
(if (modulep! +prescient)
|
(if (modulep! +prescient)
|
||||||
(package! ivy-prescient :pin "d7cc55dad453c465af9ececbab94426202b5b32b")
|
(package! ivy-prescient :pin "707c25c947a9f17a1d43f97b3b28aba91ec9addb")
|
||||||
(when (modulep! +fuzzy)
|
(when (modulep! +fuzzy)
|
||||||
(package! flx :pin "7b44a5abb254bbfbeca7a29336f7f4ebd8aabbf2")))
|
(package! flx :pin "7b44a5abb254bbfbeca7a29336f7f4ebd8aabbf2")))
|
||||||
|
|
||||||
|
|
|
@ -760,8 +760,9 @@
|
||||||
((modulep! :completion helm) #'swiper-isearch-thing-at-point))
|
((modulep! :completion helm) #'swiper-isearch-thing-at-point))
|
||||||
:desc "Dictionary" "t" #'+lookup/dictionary-definition
|
:desc "Dictionary" "t" #'+lookup/dictionary-definition
|
||||||
:desc "Thesaurus" "T" #'+lookup/synonyms
|
:desc "Thesaurus" "T" #'+lookup/synonyms
|
||||||
(:when (fboundp 'vundo)
|
:desc "Undo history" "u"
|
||||||
:desc "Undo history" "u" #'vundo))
|
(cond ((modulep! :emacs undo +tree) #'undo-tree-visualize)
|
||||||
|
((modulep! :emacs undo) #'vundo)))
|
||||||
|
|
||||||
;;; <leader> t --- toggle
|
;;; <leader> t --- toggle
|
||||||
(:prefix-map ("t" . "toggle")
|
(:prefix-map ("t" . "toggle")
|
||||||
|
|
|
@ -40,8 +40,8 @@
|
||||||
free-keys
|
free-keys
|
||||||
helm
|
helm
|
||||||
help
|
help
|
||||||
indent
|
|
||||||
image
|
image
|
||||||
|
indent
|
||||||
kotlin-mode
|
kotlin-mode
|
||||||
lispy
|
lispy
|
||||||
outline
|
outline
|
||||||
|
|
|
@ -25,8 +25,8 @@ be formatted and returned to the buffer using
|
||||||
** Module flags
|
** Module flags
|
||||||
- +onsave ::
|
- +onsave ::
|
||||||
Enable reformatting of a buffer when it is saved. See
|
Enable reformatting of a buffer when it is saved. See
|
||||||
[[var:+format-on-save-disabled-modes]] to control what major modes to (or not to)
|
[[var:+format-on-save-disabled-modes]] to disable format on save for certain
|
||||||
format on save.
|
major modes.
|
||||||
|
|
||||||
** Packages
|
** Packages
|
||||||
- [[doom-package:apheleia]]
|
- [[doom-package:apheleia]]
|
||||||
|
@ -60,8 +60,9 @@ When this flag is enabled, you shouldn't need to do anything other than write
|
||||||
code and save it.
|
code and save it.
|
||||||
|
|
||||||
** Without +onsave
|
** Without +onsave
|
||||||
Without the flag, formatting will only occur when either =apheleia-format-buffer=
|
Without the flag, formatting will only occur when either =+format/buffer=
|
||||||
or =+format/buffer= is called.
|
or =apheleia-format-buffer= is called. The difference between them is
|
||||||
|
=+format/buffer= will use a LSP server if configured and available.
|
||||||
|
|
||||||
* Configuration
|
* Configuration
|
||||||
|
|
||||||
|
@ -113,11 +114,11 @@ This behaviour is controlled via [[var:+format-on-save-disabled-modes]] thus;
|
||||||
|
|
||||||
In this case, =emacs-lisp-mode=, =sql-mode=, =tex-mode= and =latex-mode= will not be
|
In this case, =emacs-lisp-mode=, =sql-mode=, =tex-mode= and =latex-mode= will not be
|
||||||
formatted on save, but can still be formatted by manually invoking the commands
|
formatted on save, but can still be formatted by manually invoking the commands
|
||||||
=apheleia-format-buffer= or =+format/buffer=.
|
=+format/buffer= or =apheleia-format-buffer=.
|
||||||
|
|
||||||
** Disabling the LSP formatter
|
** Disabling the LSP formatter
|
||||||
If you are in a buffer with ~lsp-mode~ enabled and a server that supports
|
If you are in a buffer with ~lsp-mode~ enabled and a server that supports
|
||||||
=textDocument/formatting=, it will be used instead of [[doom-package:format-all]]'s formatter.
|
=textDocument/formatting=, it will be used instead of [[doom-package:apheleia]]'s formatter.
|
||||||
|
|
||||||
+ To disable this behavior universally use: ~(setq +format-with-lsp nil)~
|
+ To disable this behavior universally use: ~(setq +format-with-lsp nil)~
|
||||||
+ To disable this behavior in one mode: ~(setq-hook! 'python-mode-hook
|
+ To disable this behavior in one mode: ~(setq-hook! 'python-mode-hook
|
||||||
|
|
|
@ -74,7 +74,7 @@ Advanced examples:
|
||||||
\"elm-format --yes --stdin\")"
|
\"elm-format --yes --stdin\")"
|
||||||
(declare (indent defun))
|
(declare (indent defun))
|
||||||
(cl-check-type name symbol)
|
(cl-check-type name symbol)
|
||||||
(after! apheleia-core
|
(after! apheleia
|
||||||
(if (null args)
|
(if (null args)
|
||||||
(progn
|
(progn
|
||||||
(setq apheleia-formatters
|
(setq apheleia-formatters
|
||||||
|
|
|
@ -5,11 +5,10 @@
|
||||||
tex-mode ; latexindent is broken
|
tex-mode ; latexindent is broken
|
||||||
latex-mode
|
latex-mode
|
||||||
org-msg-edit-mode) ; doesn't need a formatter
|
org-msg-edit-mode) ; doesn't need a formatter
|
||||||
"A list of major modes in which to reformat the buffer upon saving.
|
"A list of major modes in which to not reformat the buffer upon saving.
|
||||||
If this list begins with `not', then it negates the list.
|
If it is t, it is disabled in all modes, the same as if the +onsave flag
|
||||||
If it is `t', it is enabled in all modes.
|
wasn't used at all.
|
||||||
If nil, it is disabled in all modes, the same as if the +onsave flag wasn't
|
If nil, formatting is enabled in all modes.
|
||||||
used at all.
|
|
||||||
Irrelevant if you do not have the +onsave flag enabled for this module.")
|
Irrelevant if you do not have the +onsave flag enabled for this module.")
|
||||||
|
|
||||||
(defvar +format-preserve-indentation t
|
(defvar +format-preserve-indentation t
|
||||||
|
@ -22,7 +21,8 @@ Indentation is always preserved when formatting regions.")
|
||||||
"If non-nil, format with LSP formatter if it's available.
|
"If non-nil, format with LSP formatter if it's available.
|
||||||
|
|
||||||
This can be set buffer-locally with `setq-hook!' to disable LSP formatting in
|
This can be set buffer-locally with `setq-hook!' to disable LSP formatting in
|
||||||
select buffers.")
|
select buffers.
|
||||||
|
This has no effect on the +onsave flag, apheleia will always be used there.")
|
||||||
|
|
||||||
(defvaralias '+format-with 'apheleia-formatter
|
(defvaralias '+format-with 'apheleia-formatter
|
||||||
"Set this to explicitly use a certain formatter for the current buffer.")
|
"Set this to explicitly use a certain formatter for the current buffer.")
|
||||||
|
@ -34,19 +34,20 @@ select buffers.")
|
||||||
(when (modulep! +onsave)
|
(when (modulep! +onsave)
|
||||||
(add-hook 'doom-first-file-hook #'apheleia-global-mode))
|
(add-hook 'doom-first-file-hook #'apheleia-global-mode))
|
||||||
|
|
||||||
(defun +format-inhibit-maybe-h ()
|
(defun +format-maybe-inhibit-h ()
|
||||||
"Enable formatting on save in certain major modes.
|
"Check if formatting should be disabled for current buffer.
|
||||||
This is controlled by `+format-on-save-disabled-modes'."
|
This is controlled by `+format-on-save-disabled-modes'."
|
||||||
(or (eq major-mode 'fundamental-mode)
|
(or (eq major-mode 'fundamental-mode)
|
||||||
(string-blank-p (buffer-name))
|
(string-blank-p (buffer-name))
|
||||||
|
(eq +format-on-save-disabled-modes t)
|
||||||
(not (null (memq major-mode +format-on-save-disabled-modes)))))
|
(not (null (memq major-mode +format-on-save-disabled-modes)))))
|
||||||
|
|
||||||
|
|
||||||
(after! apheleia-core
|
(after! apheleia
|
||||||
(add-to-list 'doom-debug-variables '(apheleia-log-only-errors . nil))
|
(add-to-list 'doom-debug-variables '(apheleia-log-only-errors . nil))
|
||||||
|
|
||||||
(when (modulep! +onsave)
|
(when (modulep! +onsave)
|
||||||
(add-to-list 'apheleia-inhibit-functions #'+format-inhibit-maybe-h)))
|
(add-to-list 'apheleia-inhibit-functions #'+format-maybe-inhibit-h)))
|
||||||
|
|
||||||
|
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
;; -*- no-byte-compile: t; -*-
|
;; -*- no-byte-compile: t; -*-
|
||||||
;;; editor/format/packages.el
|
;;; editor/format/packages.el
|
||||||
|
|
||||||
(package! apheleia :pin "c222927f7086d407dad01b2609ff68768e9adddb")
|
(package! apheleia :pin "56651724ad22f2769bbdaccf54cbe75c1cb35c91")
|
||||||
|
|
|
@ -250,7 +250,12 @@ If rtags or rdm aren't available, fail silently instead of throwing a breaking e
|
||||||
(add-hook! '(c-mode-local-vars-hook
|
(add-hook! '(c-mode-local-vars-hook
|
||||||
c++-mode-local-vars-hook
|
c++-mode-local-vars-hook
|
||||||
objc-mode-local-vars-hook
|
objc-mode-local-vars-hook
|
||||||
cmake-mode-local-vars-hook)
|
cmake-mode-local-vars-hook
|
||||||
|
;; HACK Can't use cude-mode-local-vars-hook because cuda-mode
|
||||||
|
;; isn't a proper major mode (just a plain function
|
||||||
|
;; masquarading as one, so your standard mode hooks won't fire
|
||||||
|
;; from switching to cuda-mode).
|
||||||
|
cuda-mode-hook)
|
||||||
:append #'lsp!)
|
:append #'lsp!)
|
||||||
|
|
||||||
(map! :after ccls
|
(map! :after ccls
|
||||||
|
|
|
@ -50,8 +50,10 @@ or terminating simple string."
|
||||||
:defer t
|
:defer t
|
||||||
:init
|
:init
|
||||||
(add-hook 'csharp-mode-local-vars-hook #'tree-sitter! 'append)
|
(add-hook 'csharp-mode-local-vars-hook #'tree-sitter! 'append)
|
||||||
(if (fboundp #'csharp-tree-sitter-mode)
|
(when (fboundp #'csharp-tree-sitter-mode)
|
||||||
(add-to-list 'auto-mode-alist '("\\.cs\\'" . csharp-tree-sitter-mode))))
|
(add-to-list 'auto-mode-alist '("\\.cs\\'" . csharp-tree-sitter-mode))
|
||||||
|
(when (modulep! +lsp)
|
||||||
|
(add-hook 'csharp-tree-sitter-mode-local-vars-hook #'lsp! 'append))))
|
||||||
|
|
||||||
|
|
||||||
;; Unity shaders
|
;; Unity shaders
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
;; -*- no-byte-compile: t; -*-
|
;; -*- no-byte-compile: t; -*-
|
||||||
;;; lang/haskell/packages.el
|
;;; lang/haskell/packages.el
|
||||||
|
|
||||||
(package! haskell-mode :pin "3e146c1a89db257bb75c7b33fa2a5a1a85aabd51")
|
(package! haskell-mode :pin "79eaf444a72109f93f552abb53f834cc63bbf9f2")
|
||||||
|
|
||||||
(when (and (modulep! +lsp)
|
(when (and (modulep! +lsp)
|
||||||
(not (modulep! :tools lsp +eglot)))
|
(not (modulep! :tools lsp +eglot)))
|
||||||
(package! lsp-haskell :pin "918ffa2516a59c90f909b584f7c9968716c0e006"))
|
(package! lsp-haskell :pin "89d16370434e9a247e95b8b701f524f5abfc884b"))
|
||||||
|
|
|
@ -102,16 +102,23 @@ If no viewer is found, `latex-preview-pane-mode' is used.")
|
||||||
(add-hook! '(tex-mode-local-vars-hook
|
(add-hook! '(tex-mode-local-vars-hook
|
||||||
latex-mode-local-vars-hook)
|
latex-mode-local-vars-hook)
|
||||||
:append #'lsp!))
|
:append #'lsp!))
|
||||||
|
;; Define a function to compile the project.
|
||||||
|
(defun +latex/compile ()
|
||||||
|
(interactive)
|
||||||
|
(TeX-save-document (TeX-master-file))
|
||||||
|
(TeX-command TeX-command-default 'TeX-master-file -1))
|
||||||
(map! :localleader
|
(map! :localleader
|
||||||
:map latex-mode-map
|
:map latex-mode-map
|
||||||
:desc "View" "v" #'TeX-view
|
:desc "View" "v" #'TeX-view
|
||||||
:desc "Compile" "c" #'TeX-command-run-all
|
:desc "Compile" "c" #'+latex/compile
|
||||||
|
:desc "Run all" "a" #'TeX-command-run-all
|
||||||
:desc "Run a command" "m" #'TeX-command-master)
|
:desc "Run a command" "m" #'TeX-command-master)
|
||||||
(map! :after latex
|
(map! :after latex
|
||||||
:localleader
|
:localleader
|
||||||
:map LaTeX-mode-map
|
:map LaTeX-mode-map
|
||||||
:desc "View" "v" #'TeX-view
|
:desc "View" "v" #'TeX-view
|
||||||
:desc "Compile" "c" #'TeX-command-run-all
|
:desc "Compile" "c" #'+latex/compile
|
||||||
|
:desc "Run all" "a" #'TeX-command-run-all
|
||||||
:desc "Run a command" "m" #'TeX-command-master))
|
:desc "Run a command" "m" #'TeX-command-master))
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -511,8 +511,9 @@ All my (performant) foldings needs are met between this and `org-show-subtree'
|
||||||
(let ((buf (current-buffer)))
|
(let ((buf (current-buffer)))
|
||||||
(unless (doom-temp-buffer-p buf)
|
(unless (doom-temp-buffer-p buf)
|
||||||
(run-at-time 0.1 nil (lambda ()
|
(run-at-time 0.1 nil (lambda ()
|
||||||
(with-current-buffer buf
|
(when (buffer-live-p buf)
|
||||||
(org-reveal '(4)))))))))
|
(with-current-buffer buf
|
||||||
|
(org-reveal '(4))))))))))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun +org-remove-occur-highlights-h ()
|
(defun +org-remove-occur-highlights-h ()
|
||||||
|
|
|
@ -160,7 +160,7 @@ Is relative to `org-directory', unless it is absolute. Is used in Doom's default
|
||||||
"IDEA(i)" ; An unconfirmed and unapproved task or notion
|
"IDEA(i)" ; An unconfirmed and unapproved task or notion
|
||||||
"|"
|
"|"
|
||||||
"DONE(d)" ; Task successfully completed
|
"DONE(d)" ; Task successfully completed
|
||||||
"KILL(k)") ; Task was cancelled, aborted or is no longer applicable
|
"KILL(k)") ; Task was cancelled, aborted, or is no longer applicable
|
||||||
(sequence
|
(sequence
|
||||||
"[ ](T)" ; A task that needs doing
|
"[ ](T)" ; A task that needs doing
|
||||||
"[-](S)" ; Task is in progress
|
"[-](S)" ; Task is in progress
|
||||||
|
|
|
@ -31,11 +31,11 @@
|
||||||
(format "(defun org-git-version (&rest _) \"%s-??-%s\")\n"
|
(format "(defun org-git-version (&rest _) \"%s-??-%s\")\n"
|
||||||
version (cdr (doom-call-process "git" "rev-parse" "--short" "HEAD")))
|
version (cdr (doom-call-process "git" "rev-parse" "--short" "HEAD")))
|
||||||
"(provide 'org-version)\n")))))
|
"(provide 'org-version)\n")))))
|
||||||
:pin "e90a8a69a7fa2d83c995b5d32bc0b24a68218ed3")
|
:pin "57b94f3447b9046dac2f9238e24ad902510056cc")
|
||||||
(package! org-contrib
|
(package! org-contrib
|
||||||
:recipe (:host github
|
:recipe (:host github
|
||||||
:repo "emacsmirror/org-contrib")
|
:repo "emacsmirror/org-contrib")
|
||||||
:pin "dc59cdd46be8f6854c5d6e9252263d0e4e62e896")
|
:pin "79286861ae3f4a47fbc66ce97cd527196f60c4a8")
|
||||||
|
|
||||||
(package! avy)
|
(package! avy)
|
||||||
(package! htmlize :pin "dd27bc3f26efd728f2b1f01f9e4ac4f61f2ffbf9")
|
(package! htmlize :pin "dd27bc3f26efd728f2b1f01f9e4ac4f61f2ffbf9")
|
||||||
|
@ -56,7 +56,7 @@
|
||||||
|
|
||||||
(when (and IS-MAC
|
(when (and IS-MAC
|
||||||
(modulep! :os macos))
|
(modulep! :os macos))
|
||||||
(package! org-mac-link :pin "3a30a937e135a6637a5126e2ac096b6c90584045"))
|
(package! org-mac-link :pin "e30171a6e98db90787ab8a23b3a7dc4fd13b10f9"))
|
||||||
|
|
||||||
(when (modulep! +passwords)
|
(when (modulep! +passwords)
|
||||||
(package! org-passwords
|
(package! org-passwords
|
||||||
|
@ -71,9 +71,9 @@
|
||||||
(when (modulep! :tools pdf)
|
(when (modulep! :tools pdf)
|
||||||
(package! org-pdftools :pin "4e420233a153a9c4ab3d1a7e1d7d3211c836f0ac"))
|
(package! org-pdftools :pin "4e420233a153a9c4ab3d1a7e1d7d3211c836f0ac"))
|
||||||
(when (modulep! :tools magit)
|
(when (modulep! :tools magit)
|
||||||
(package! orgit :pin "4a585029875a1dbbe96d8ac157bd2fd02875f289")
|
(package! orgit :pin "b60efabc4a1b15d7eacaabc5bdfe6f3c20fee161")
|
||||||
(when (modulep! :tools magit +forge)
|
(when (modulep! :tools magit +forge)
|
||||||
(package! orgit-forge :pin "8ba92a54aee9693b1bf03baf14f83550a7c89b18")))
|
(package! orgit-forge :pin "f595a30aa75af55522b1203cd29198fb9aa3a0a5")))
|
||||||
(when (modulep! +brain)
|
(when (modulep! +brain)
|
||||||
(package! org-brain :pin "2bad7732aae1a3051e2a14de2e30f970bbe43c25"))
|
(package! org-brain :pin "2bad7732aae1a3051e2a14de2e30f970bbe43c25"))
|
||||||
(when (modulep! +dragndrop)
|
(when (modulep! +dragndrop)
|
||||||
|
@ -84,15 +84,15 @@
|
||||||
(when (modulep! +ipython) ; DEPRECATED
|
(when (modulep! +ipython) ; DEPRECATED
|
||||||
(package! ob-ipython :pin "7147455230841744fb5b95dcbe03320313a77124"))
|
(package! ob-ipython :pin "7147455230841744fb5b95dcbe03320313a77124"))
|
||||||
(when (modulep! +jupyter)
|
(when (modulep! +jupyter)
|
||||||
(package! jupyter :pin "1baabc8f2d0631f8f4308400f9a53f1aadd58d14"))
|
(package! jupyter :pin "0a92c0c978ab12bd31a50a7e8b1295f5d1767e20"))
|
||||||
(when (modulep! +journal)
|
(when (modulep! +journal)
|
||||||
(package! org-journal :pin "18df4d5ae5e15580df42562c143d007c6d28d75f"))
|
(package! org-journal :pin "a306f76ee2b0292946a20530bd9114aefc85a263"))
|
||||||
(when (modulep! +noter)
|
(when (modulep! +noter)
|
||||||
(package! org-noter :pin "ab838691f0d6ae281597451de311f71a50ba8da6"))
|
(package! org-noter :pin "a4296d8338d46b5c863d3d339b50e201172f218c"))
|
||||||
(when (modulep! +pomodoro)
|
(when (modulep! +pomodoro)
|
||||||
(package! org-pomodoro :pin "3f5bcfb80d61556d35fc29e5ddb09750df962cc6"))
|
(package! org-pomodoro :pin "3f5bcfb80d61556d35fc29e5ddb09750df962cc6"))
|
||||||
(when (modulep! +pretty)
|
(when (modulep! +pretty)
|
||||||
(package! org-appear :pin "eb9f9db40aa529fe4b977235d86494b115281d17")
|
(package! org-appear :pin "81eba5d7a5b74cdb1bad091d85667e836f16b997")
|
||||||
(package! org-superstar :pin "54c81c27dde2a6dc461bb064e79a8b2089093a2e")
|
(package! org-superstar :pin "54c81c27dde2a6dc461bb064e79a8b2089093a2e")
|
||||||
(package! org-fancy-priorities :pin "7f677c6c14ecf05eab8e0efbfe7f1b00ae68eb1d"))
|
(package! org-fancy-priorities :pin "7f677c6c14ecf05eab8e0efbfe7f1b00ae68eb1d"))
|
||||||
(when (modulep! +present)
|
(when (modulep! +present)
|
||||||
|
@ -100,11 +100,11 @@
|
||||||
:recipe (:host github :repo "anler/centered-window-mode")
|
:recipe (:host github :repo "anler/centered-window-mode")
|
||||||
:pin "80965f6c6afe8d918481433984b493de72af5399")
|
:pin "80965f6c6afe8d918481433984b493de72af5399")
|
||||||
(package! org-tree-slide :pin "e2599a106a26ce5511095e23df4ea04be6687a8a")
|
(package! org-tree-slide :pin "e2599a106a26ce5511095e23df4ea04be6687a8a")
|
||||||
(package! org-re-reveal :pin "93396b531ba13219bdbb968c197d5c44535ce1cd")
|
(package! org-re-reveal :pin "e7895dae9807df38b6e17b6c24e1e824caad6c46")
|
||||||
(package! revealjs
|
(package! revealjs
|
||||||
:recipe (:host github :repo "hakimel/reveal.js"
|
:recipe (:host github :repo "hakimel/reveal.js"
|
||||||
:files ("css" "dist" "js" "plugin"))
|
:files ("css" "dist" "js" "plugin"))
|
||||||
:pin "07a6cf1249e40164705713ed9ad60f13846789fb"))
|
:pin "d5896c968b2406126ca0beafecdffe219230b6b4"))
|
||||||
(cond
|
(cond
|
||||||
((modulep! +roam)
|
((modulep! +roam)
|
||||||
(package! org-roam
|
(package! org-roam
|
||||||
|
@ -152,7 +152,7 @@
|
||||||
:recipe (:host github :repo "DEADB17/ob-racket")
|
:recipe (:host github :repo "DEADB17/ob-racket")
|
||||||
:pin "d8fd51bddb019b0eb68755255f88fc800cfe03cb"))
|
:pin "d8fd51bddb019b0eb68755255f88fc800cfe03cb"))
|
||||||
(when (modulep! :lang rest)
|
(when (modulep! :lang rest)
|
||||||
(package! ob-restclient :pin "ded3b7eb7b0592328a7a08ecce6f25278cba4a1d"))
|
(package! ob-restclient :pin "1a127eb0165f10bb9d33606aa8529051118805e7"))
|
||||||
(when (modulep! :lang scala)
|
(when (modulep! :lang scala)
|
||||||
(package! ob-ammonite :pin "39937dff395e70aff76a4224fa49cf2ec6c57cca"))
|
(package! ob-ammonite :pin "39937dff395e70aff76a4224fa49cf2ec6c57cca"))
|
||||||
|
|
||||||
|
|
|
@ -1,22 +1,5 @@
|
||||||
;;; lang/scheme/autoload.el -*- lexical-binding: t; -*-
|
;;; lang/scheme/autoload.el -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
;; HACK `geiser' has poor autoload etiquette. It calls
|
|
||||||
;; `geiser-activate-implementation' and `geiser-implementation-extension'
|
|
||||||
;; in their autoloads files. Sure, these functions are autoloaded, but this
|
|
||||||
;; needlessly (and unavoidably) pulls in the `geiser-impl' package (et co)
|
|
||||||
;; when geiser-X's autoloads are read (i.e. at startup).
|
|
||||||
;;
|
|
||||||
;; I rectify this by inlining calls to these two functions (and the
|
|
||||||
;; `geiser-impl--add-to-alist' sub-call in
|
|
||||||
;; `geiser-implementation-extension'), and autoloading the two variables
|
|
||||||
;; they operate on. I do this from our autoloads file (which is
|
|
||||||
;; byte-compiled and read at startup before package autoloads).
|
|
||||||
;; TODO At some point, PR this behavior upstream (but not verbatim!)
|
|
||||||
;;;###autoload (defvar geiser-active-implementations ())
|
|
||||||
;;;###autoload (defvar geiser-implementations-alist ())
|
|
||||||
;;;###autoload (eval-and-compile (dolist (sym '(geiser-impl--add-to-alist geiser-activate-implementation geiser-implementation-extension)) (put sym 'byte-optimizer 'byte-compile-inline-expand)))
|
|
||||||
|
|
||||||
|
|
||||||
(defvar calculate-lisp-indent-last-sexp)
|
(defvar calculate-lisp-indent-last-sexp)
|
||||||
;; Adapted from https://github.com/alezost/emacs-config/blob/master/utils/al-scheme.el#L76-L123
|
;; Adapted from https://github.com/alezost/emacs-config/blob/master/utils/al-scheme.el#L76-L123
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
|
|
|
@ -4,12 +4,12 @@
|
||||||
(when (< emacs-major-version 29)
|
(when (< emacs-major-version 29)
|
||||||
(package! scheme
|
(package! scheme
|
||||||
:recipe (:host gitlab :repo "flatwhatson/scheme-mode")
|
:recipe (:host gitlab :repo "flatwhatson/scheme-mode")
|
||||||
:pin "aaef1f88cc34e8b6e07c207f9b8caff33f6e0740"))
|
:pin "51e586e5f1ddb5ea71d2cac8d401faf718c4627e"))
|
||||||
|
|
||||||
(when (package! geiser :pin "e54d5e6dc659c252d10c4280f4c4d78d38623df5")
|
(when (package! geiser :pin "49d12a14482ce9a193c049a5ccdd2fed90b0bdbe")
|
||||||
(package! macrostep-geiser :pin "f6a2d5bb96ade4f23df557649af87ebd0cc45125")
|
(package! macrostep-geiser :pin "f6a2d5bb96ade4f23df557649af87ebd0cc45125")
|
||||||
(when (modulep! +chez)
|
(when (modulep! +chez)
|
||||||
(package! geiser-chez :pin "246ec4c8bc4e7f64414e5cbe0fa66f0e5ef7d527"))
|
(package! geiser-chez :pin "605a81ff7b2d2b275a3ec68e3ce7e5b50f85014d"))
|
||||||
(when (modulep! +chibi)
|
(when (modulep! +chibi)
|
||||||
(package! geiser-chibi :pin "5a6a5a580ea45cd4974df21629a8d50cbe3d6e99"))
|
(package! geiser-chibi :pin "5a6a5a580ea45cd4974df21629a8d50cbe3d6e99"))
|
||||||
(when (modulep! +chicken)
|
(when (modulep! +chicken)
|
||||||
|
@ -19,12 +19,12 @@
|
||||||
(when (modulep! +gauche)
|
(when (modulep! +gauche)
|
||||||
(package! geiser-gauche :pin "8ff743f6416f00751e24aef8b9791501a40f5421"))
|
(package! geiser-gauche :pin "8ff743f6416f00751e24aef8b9791501a40f5421"))
|
||||||
(when (modulep! +guile)
|
(when (modulep! +guile)
|
||||||
(package! geiser-guile :pin "24ce15de235c105daf5ecfb818200dae1c9815ee")
|
(package! geiser-guile :pin "ee33af6b4ef8fdaccbdf93c62b50fe17c07a1ade")
|
||||||
(when (and (modulep! :checkers syntax)
|
(when (and (modulep! :checkers syntax)
|
||||||
(not (modulep! :checkers syntax +flymake)))
|
(not (modulep! :checkers syntax +flymake)))
|
||||||
(package! flycheck-guile
|
(package! flycheck-guile
|
||||||
:recipe (:host github :repo "flatwhatson/flycheck-guile")
|
:recipe (:host github :repo "flatwhatson/flycheck-guile")
|
||||||
:pin "e23a4d7813179124fd98abf1c2f4190a72569bee")))
|
:pin "dd7bbdc48fd21cf8d270c913c56cd580f8ec3d03")))
|
||||||
(when (modulep! +kawa)
|
(when (modulep! +kawa)
|
||||||
(package! geiser-kawa :pin "5896b19642923f74f718eb68d447560b2d26d797"))
|
(package! geiser-kawa :pin "5896b19642923f74f718eb68d447560b2d26d797"))
|
||||||
(when (modulep! +mit)
|
(when (modulep! +mit)
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
(after! swift-mode
|
(after! swift-mode
|
||||||
(set-repl-handler! 'swift-mode #'run-swift)
|
(set-repl-handler! 'swift-mode #'run-swift)
|
||||||
|
(set-eglot-client! 'swift-mode '("sourcekit-lsp"))
|
||||||
|
|
||||||
(when (modulep! +lsp)
|
(when (modulep! +lsp)
|
||||||
(add-hook 'swift-mode-local-vars-hook #'lsp! 'append))
|
(add-hook 'swift-mode-local-vars-hook #'lsp! 'append))
|
||||||
|
@ -25,7 +26,7 @@
|
||||||
|
|
||||||
|
|
||||||
(use-package! lsp-sourcekit
|
(use-package! lsp-sourcekit
|
||||||
:when (modulep! +lsp)
|
:when (and (modulep! +lsp) (not (modulep! :tools lsp +eglot)))
|
||||||
:after swift-mode
|
:after swift-mode
|
||||||
:init (add-hook 'swift-mode-local-vars-hook #'lsp! 'append)
|
:init (add-hook 'swift-mode-local-vars-hook #'lsp! 'append)
|
||||||
:config
|
:config
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
;;; tools/tree-sitter/packages.el
|
;;; tools/tree-sitter/packages.el
|
||||||
|
|
||||||
(package! tree-sitter :pin "3cfab8a0e945db9b3df84437f27945746a43cc71")
|
(package! tree-sitter :pin "3cfab8a0e945db9b3df84437f27945746a43cc71")
|
||||||
(package! tree-sitter-langs :pin "3a3ad0527d5f8c7768678878eb5cfe399bedf703")
|
(package! tree-sitter-langs :pin "5eb24557f542d5fa18e7baaf07969cf7f297bfcd")
|
||||||
(package! tree-sitter-indent :pin "4ef246db3e4ff99f672fe5e4b416c890f885c09e")
|
(package! tree-sitter-indent :pin "4ef246db3e4ff99f672fe5e4b416c890f885c09e")
|
||||||
|
|
||||||
(when (modulep! :editor evil +everywhere)
|
(when (modulep! :editor evil +everywhere)
|
||||||
|
|
|
@ -113,7 +113,7 @@ There are two caveats with this profile system:
|
||||||
1. Delete [[https://github.com/plexus/chemacs2][Chemacs]] from =$EMACSDIR=.
|
1. Delete [[https://github.com/plexus/chemacs2][Chemacs]] from =$EMACSDIR=.
|
||||||
|
|
||||||
2. Install Doom there: ~$ git clone https://github.com/doomemacs/doomemacs
|
2. Install Doom there: ~$ git clone https://github.com/doomemacs/doomemacs
|
||||||
~/.config/emacs~
|
\~/.config/emacs~
|
||||||
|
|
||||||
3. Move =~/.emacs-profiles.el= to =~/.config/doom/profiles.el= and transform the
|
3. Move =~/.emacs-profiles.el= to =~/.config/doom/profiles.el= and transform the
|
||||||
string keys to symbols and adapt =env= entries like so:
|
string keys to symbols and adapt =env= entries like so:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue