dev: merge branch 'master' of github.com:doomemacs

This commit is contained in:
Matt Nish-Lapidus 2024-09-05 16:11:46 -04:00
commit d9342af18e
7 changed files with 67 additions and 51 deletions

View file

@ -388,13 +388,14 @@ windows, switch to `doom-fallback-buffer'. Otherwise, delegate to original
(unless hl-line-mode (unless hl-line-mode
(setq-local doom--hl-line-mode nil)))) (setq-local doom--hl-line-mode nil))))
(add-hook! '(evil-visual-state-entry-hook activate-mark-hook) ;; TODO: Use (de)activate-mark-hook in the absence of evil
(add-hook! 'evil-visual-state-entry-hook
(defun doom-disable-hl-line-h () (defun doom-disable-hl-line-h ()
(when hl-line-mode (when hl-line-mode
(hl-line-mode -1) (hl-line-mode -1)
(setq-local doom--hl-line-mode t)))) (setq-local doom--hl-line-mode t))))
(add-hook! '(evil-visual-state-exit-hook deactivate-mark-hook) (add-hook! 'evil-visual-state-exit-hook
(defun doom-enable-hl-line-maybe-h () (defun doom-enable-hl-line-maybe-h ()
(when doom--hl-line-mode (when doom--hl-line-mode
(hl-line-mode +1))))) (hl-line-mode +1)))))

View file

@ -36,11 +36,11 @@
(cond ((or (modulep! +mbsync) (cond ((or (modulep! +mbsync)
(eq +mu4e-backend 'mbsync)) (eq +mu4e-backend 'mbsync))
(setq mu4e-get-mail-command (setq mu4e-get-mail-command
(format "mbsync --all --config %S" (concat "mbsync --all"
;; XDG support was added to isync 1.5, but this lets ;; XDG support was added to isync 1.5, but this lets
;; users on older benefit from it sooner. ;; users on older benefit from it sooner.
(or (file-exists-p! "isyncrc" (or (getenv "XDG_CONFIG_HOME") "~/.config")) (when-let (file (file-exists-p! "isyncrc" (or (getenv "XDG_CONFIG_HOME") "~/.config")))
"~/.mbsyncrc")) (format " --config %S" file)))
mu4e-change-filenames-when-moving t)) mu4e-change-filenames-when-moving t))
((or (modulep! +offlineimap) ((or (modulep! +offlineimap)
(eq +mu4e-backend 'offlineimap)) (eq +mu4e-backend 'offlineimap))

View file

@ -4,7 +4,10 @@
(add-to-list 'TeX-view-program-selection '(output-pdf "preview-pane") 'append) (add-to-list 'TeX-view-program-selection '(output-pdf "preview-pane") 'append)
(add-to-list 'TeX-view-program-list '("preview-pane" latex-preview-pane-mode)) (add-to-list 'TeX-view-program-list '("preview-pane" latex-preview-pane-mode))
(dolist (viewer (reverse +latex-viewers)) (letf! (defun prepend-to-list (list-var value &optional append)
(set list-var (delete value (symbol-value list-var)))
(add-to-list list-var value append))
(dolist (viewer (reverse +latex-viewers))
(pcase viewer (pcase viewer
(`skim (`skim
(when-let (when-let
@ -12,7 +15,7 @@
(and (featurep :system 'macos) (and (featurep :system 'macos)
(file-exists-p! (or "/Applications/Skim.app" (file-exists-p! (or "/Applications/Skim.app"
"~/Applications/Skim.app")))) "~/Applications/Skim.app"))))
(add-to-list 'TeX-view-program-selection '(output-pdf "Skim")) (prepend-to-list 'TeX-view-program-selection '(output-pdf "Skim"))
(add-to-list 'TeX-view-program-list (add-to-list 'TeX-view-program-list
(list "Skim" (format "%s/Contents/SharedSupport/displayline -r -b %%n %%o %%b" (list "Skim" (format "%s/Contents/SharedSupport/displayline -r -b %%n %%o %%b"
app-path))))) app-path)))))
@ -20,31 +23,31 @@
(`sumatrapdf (`sumatrapdf
(when (and (featurep :system 'windows) (when (and (featurep :system 'windows)
(executable-find "SumatraPDF")) (executable-find "SumatraPDF"))
(add-to-list 'TeX-view-program-selection '(output-pdf "SumatraPDF")))) (prepend-to-list 'TeX-view-program-selection '(output-pdf "SumatraPDF"))))
(`okular (`okular
(when (executable-find "okular") (when (executable-find "okular")
;; Configure Okular as viewer. Including a bug fix ;; Configure Okular as viewer. Including a bug fix
;; (https://bugs.kde.org/show_bug.cgi?id=373855). ;; (https://bugs.kde.org/show_bug.cgi?id=373855).
(add-to-list 'TeX-view-program-list '("Okular" ("okular --noraise --unique file:%o" (mode-io-correlate "#src:%n%a")))) (add-to-list 'TeX-view-program-list '("Okular" ("okular --noraise --unique file:%o" (mode-io-correlate "#src:%n%a"))))
(add-to-list 'TeX-view-program-selection '(output-pdf "Okular")))) (prepend-to-list 'TeX-view-program-selection '(output-pdf "Okular"))))
(`zathura (`zathura
(when (executable-find "zathura") (when (executable-find "zathura")
(add-to-list 'TeX-view-program-selection '(output-pdf "Zathura")))) (prepend-to-list 'TeX-view-program-selection '(output-pdf "Zathura"))))
(`evince (`evince
(when (executable-find "evince") (when (executable-find "evince")
(add-to-list 'TeX-view-program-selection '(output-pdf "Evince")))) (prepend-to-list 'TeX-view-program-selection '(output-pdf "Evince"))))
(`pdf-tools (`pdf-tools
(when (modulep! :tools pdf) (when (modulep! :tools pdf)
(add-to-list 'TeX-view-program-selection '(output-pdf "PDF Tools")) (prepend-to-list 'TeX-view-program-selection '(output-pdf "PDF Tools"))
(when (featurep :system 'macos) (when (featurep :system 'macos)
;; PDF Tools isn't in `TeX-view-program-list-builtin' on macs. ;; PDF Tools isn't in `TeX-view-program-list-builtin' on macs.
(add-to-list 'TeX-view-program-list '("PDF Tools" TeX-pdf-tools-sync-view))) (add-to-list 'TeX-view-program-list '("PDF Tools" TeX-pdf-tools-sync-view)))
;; Update PDF buffers after successful LaTeX runs. ;; Update PDF buffers after successful LaTeX runs.
(add-hook 'TeX-after-compilation-finished-functions #'TeX-revert-document-buffer))))) (add-hook 'TeX-after-compilation-finished-functions #'TeX-revert-document-buffer))))))
(after! latex-preview-pane (after! latex-preview-pane

View file

@ -42,7 +42,15 @@ If no viewer is found, `latex-preview-pane-mode' is used.")
;; ;;
;; Packages ;; Packages
(add-to-list 'auto-mode-alist '("\\.tex\\'" . LaTeX-mode)) ;; HACK: Doom sets `custom-dont-initialize' during the early parts of its
;; startup process. This stops tex-site's setter on `TeX-modes' from
;; activating in `tex-site', which auctex loads *very early* from its
;; autoloads file. `tex-site's existence is hacky (more a historical artifact
;; and necessary evil, given its conflicts with the built in latex modes), so
;; I fix it as a one-off problem rather than a systemic one.
(after! tex-site
(TeX-modes-set 'TeX-modes TeX-modes))
(setq TeX-parse-self t ; parse on load (setq TeX-parse-self t ; parse on load
TeX-auto-save t ; parse on save TeX-auto-save t ; parse on save

View file

@ -10,7 +10,7 @@ This module adds [[https://www.python.org/][Python]] support to Doom Emacs.
- Snippets - Snippets
- Run tests ([[doom-package:nose]], [[doom-package:pytest]]) - Run tests ([[doom-package:nose]], [[doom-package:pytest]])
- Auto-format (with ~black~, requires [[doom-module::editor format]]) - Auto-format (with ~black~, requires [[doom-module::editor format]])
- LSP integration (=pyls=, =jedi=, =ruff=, or =pyright=) - LSP integration (=pyls=, =jedi=, =ruff=, =pyright=, or =basedpyright=)
** Maintainers ** Maintainers
- [[doom-user:][@hlissner]] - [[doom-user:][@hlissner]]
@ -86,9 +86,10 @@ For LSP support the [[doom-module::tools lsp]] module must be enabled, along wit
An alternative LSP server can be used by installing them through the An alternative LSP server can be used by installing them through the
[[cmd:][lsp-install-server]] command, or an external package manager. For example: [[cmd:][lsp-install-server]] command, or an external package manager. For example:
- To install *basedpyright*: ~$ pip install basedpyright~
- To install *pyright*: ~$ pip install pyright~ or ~$ npm i -g pyright~.
- To install [[https://pypi.org/project/python-language-server/][*pyls*]]: ~$ pip install python-language-server[all]~. - To install [[https://pypi.org/project/python-language-server/][*pyls*]]: ~$ pip install python-language-server[all]~.
- To install *mspyls*: ~M-x lsp-install-server RET mspyls~. - To install *mspyls*: ~M-x lsp-install-server RET mspyls~.
- To install *pyright*: ~$ pip install pyright~ or ~$ npm i -g pyright~.
** Formatter ** Formatter

View file

@ -353,4 +353,7 @@
:when (modulep! +lsp) :when (modulep! +lsp)
:when (modulep! +pyright) :when (modulep! +pyright)
:when (not (modulep! :tools lsp +eglot)) :when (not (modulep! :tools lsp +eglot))
:after lsp-mode) :after lsp-mode
:init
(when-let ((exe (executable-find "basedpyright")))
(setq lsp-pyright-langserver-command exe)))

View file

@ -12,26 +12,26 @@
(when (modulep! +lsp) (when (modulep! +lsp)
(unless (modulep! :tools lsp +eglot) (unless (modulep! :tools lsp +eglot)
(when (modulep! +pyright) (when (modulep! +pyright)
(package! lsp-pyright :pin "cc6df06aeaee3053eb800a24193483387b7b545b")))) (package! lsp-pyright :pin "0c0d72aedd18b16f48379b7d2f9ecb9c068713b0"))))
;; Programming environment ;; Programming environment
(package! anaconda-mode :pin "79fa9b4d2bda9f69857aeffb30c75276848a2810") (package! anaconda-mode :pin "f900bd7656a03aa24ef3295251f266736f7756eb")
(when (modulep! :completion company) (when (modulep! :completion company)
(package! company-anaconda :pin "1fe526163c265891cc20d971dc58b661ad8bcf23")) (package! company-anaconda :pin "169252fca79a79da41ef22f2ec0eab0cf1313966"))
;; Environment management ;; Environment management
(package! pipenv :pin "3af159749824c03f59176aff7f66ddd6a5785a10") (package! pipenv :pin "3af159749824c03f59176aff7f66ddd6a5785a10")
(package! pyvenv :pin "31ea715f2164dd611e7fc77b26390ef3ca93509b") (package! pyvenv :pin "31ea715f2164dd611e7fc77b26390ef3ca93509b")
(when (modulep! +pyenv) (when (modulep! +pyenv)
(package! pyenv-mode :pin "de0d750b9c3057fd7cecc72e6a290902a0475afe")) (package! pyenv-mode :pin "76787ea44f633426df402341663784db3a9e9639"))
(when (modulep! +conda) (when (modulep! +conda)
(package! conda :pin "60e14d1e9793431b91913a5688e278bd91d56224")) (package! conda :pin "ce748a53f9c7d7a7d112632d32c848d6e5482e18"))
(when (modulep! +poetry) (when (modulep! +poetry)
(package! poetry :pin "1dff0d4a51ea8aff5f6ce97b154ea799902639ad")) (package! poetry :pin "1dff0d4a51ea8aff5f6ce97b154ea799902639ad"))
;; Testing frameworks ;; Testing frameworks
(package! nose :pin "f8528297519eba911696c4e68fa88892de9a7b72") (package! nose :pin "f8528297519eba911696c4e68fa88892de9a7b72")
(package! python-pytest :pin "9f850e22df93812a5b109968c549f9b3dd828ed1") (package! python-pytest :pin "dcdaec6fe203f08bda0f5ee1931370dfd075a4ff")
;; Import managements ;; Import managements
(package! pyimport :pin "4398ce8dd64fa0f685f4bf8683a35087649346d3") (package! pyimport :pin "4398ce8dd64fa0f685f4bf8683a35087649346d3")