summary refs log tree commit diff
path: root/.dir-locals.el
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2020-11-07 21:33:32 +0100
committerMarius Bakke <marius@gnu.org>2020-11-07 21:33:32 +0100
commit32787d652460871a79f99b63230f92759e2e0de2 (patch)
treece883cac0d602b10b7c005755d035a08197e73a9 /.dir-locals.el
parent052939c2f6e36de00a5e756ea29a4cc96884a55d (diff)
parentc2396ceb6eb30ac87755eb8b39583403b35fbd12 (diff)
downloadguix-32787d652460871a79f99b63230f92759e2e0de2.tar.gz
Merge branch 'master' into staging
 Conflicts:
	gnu/local.mk
	gnu/packages/gdb.scm
	gnu/packages/lisp-xyz.scm
	gnu/packages/web-browsers.scm
Diffstat (limited to '.dir-locals.el')
-rw-r--r--.dir-locals.el23
1 files changed, 22 insertions, 1 deletions
diff --git a/.dir-locals.el b/.dir-locals.el
index 7f310d2612..8e5d3902e3 100644
--- a/.dir-locals.el
+++ b/.dir-locals.el
@@ -8,7 +8,27 @@
      ;; 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).
+     (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* (directory-file-name root-dir)))
+               (unless (boundp 'geiser-guile-load-path)
+                 (defvar geiser-guile-load-path '()))
+               (make-local-variable 'geiser-guile-load-path)
+               (require 'cl-lib)
+               (cl-pushnew root-dir* geiser-guile-load-path
+                           :test #'string-equal)))))
+
  (c-mode          . ((c-file-style . "gnu")))
  (scheme-mode
   .
@@ -103,6 +123,7 @@
    (eval . (put 'call-with-progress-reporter 'scheme-indent-function 1))
    (eval . (put 'with-repository 'scheme-indent-function 2))
    (eval . (put 'with-temporary-git-repository 'scheme-indent-function 2))
+   (eval . (put 'with-temporary-git-worktree 'scheme-indent-function 2))
    (eval . (put 'with-environment-variables 'scheme-indent-function 1))
    (eval . (put 'with-fresh-gnupg-setup 'scheme-indent-function 1))