[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH var
From: |
Maxim Cournoyer |
Subject: |
[PATCH] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable. |
Date: |
Sun, 25 Oct 2020 14:42:28 -0400 |
* .dir-locals.el: Set the GUIX-DIRECTORY and GEISER-GUILE-LOAD-PATH Emacs
variables based on the location of the .dir-locals file.
---
.dir-locals.el | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/.dir-locals.el b/.dir-locals.el
index 19f15b3e1a..df5267ab8b 100644
--- a/.dir-locals.el
+++ b/.dir-locals.el
@@ -8,7 +8,31 @@
;; For use with 'bug-reference-prog-mode'.
(bug-reference-url-format . "http://bugs.gnu.org/%s")
(bug-reference-bug-regexp
- . "<https?://\\(debbugs\\|bugs\\)\\.gnu\\.org/\\([0-9]+\\)>")))
+ . "<https?://\\(debbugs\\|bugs\\)\\.gnu\\.org/\\([0-9]+\\)>")
+
+ ;; Emacs-Guix
+ (eval . (setq guix-directory
+ (locate-dominating-file default-directory
".dir-locals.el")))
+
+ ;; Geiser
+ ;; This allows automatically setting the `geiser-guile-load-path'
+ ;; variable when using various Guix checkouts (e.g., via git worktrees).
+ ;; The checkout root directory name should be prefixed by "guix" for it
+ ;; to work correctly.
+ (eval . (let* ((root-dir (expand-file-name
+ (locate-dominating-file
+ default-directory ".dir-locals.el")))
+ ;; Workaround for bug https://issues.guix.gnu.org/43818.
+ (root-dir* (if (string-suffix-p "/" root-dir)
+ (substring root-dir 0 -1)
+ root-dir))
+ (clean-geiser-guile-load-path
+ (seq-remove (lambda (x)
+ (string-match "/guix" x))
+ geiser-guile-load-path)))
+ (setq geiser-guile-load-path
+ (cons root-dir* clean-geiser-guile-load-path))))))
+
(c-mode . ((c-file-style . "gnu")))
(scheme-mode
.
--
2.28.0
- [PATCH] Automatically set `geiser-guile-load-path' from .dir-locals, Maxim Cournoyer, 2020/10/25
- Re: [PATCH] Automatically set `geiser-guile-load-path' from .dir-locals, Pierre Neidhardt, 2020/10/25
- [PATCH] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable.,
Maxim Cournoyer <=
- Re: [PATCH] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable., Pierre Neidhardt, 2020/10/25
- Re: [PATCH] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable., Miguel Ángel Arruga Vivas, 2020/10/25
- Re: [PATCH] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable., Maxim Cournoyer, 2020/10/26
- [PATCH v2] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable., Maxim Cournoyer, 2020/10/26
- Re: [PATCH v2] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable., Pierre Neidhardt, 2020/10/26
- Re: [PATCH v2] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable., Miguel Ángel Arruga Vivas, 2020/10/26
- Re: [PATCH v2] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable., Maxim Cournoyer, 2020/10/27
- Re: [PATCH v2] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable., Miguel Ángel Arruga Vivas, 2020/10/27
- [PATCH v3] .dir-locals.el: Automatically set the GEISER-GUILE-LOAD-PATH variable., Maxim Cournoyer, 2020/10/27