guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/05: gnu: emacs: Fix indentation of scheme keyword lists.


From: Alex Kost
Subject: 01/05: gnu: emacs: Fix indentation of scheme keyword lists.
Date: Mon, 30 May 2016 10:12:49 +0000 (UTC)

alezost pushed a commit to branch master
in repository guix.

commit 4509ec72a4f7034e9a7087e802a84bbe04f4c12c
Author: Alex Kost <address@hidden>
Date:   Thu May 26 11:45:16 2016 +0300

    gnu: emacs: Fix indentation of scheme keyword lists.
    
    * gnu/packages/patches/emacs-fix-scheme-indent-function.patch: New patch.
    * gnu/local.mk (dist_patch_DATA): Add it.
    * gnu/packages/emacs.scm (emacs)[source]: Use it.
---
 gnu/local.mk                                       |    1 +
 gnu/packages/emacs.scm                             |    1 +
 .../patches/emacs-fix-scheme-indent-function.patch |   29 ++++++++++++++++++++
 3 files changed, 31 insertions(+)

diff --git a/gnu/local.mk b/gnu/local.mk
index 66538e6..6110d2d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -472,6 +472,7 @@ dist_patch_DATA =                                           
\
   %D%/packages/patches/elfutils-tests-ptrace.patch             \
   %D%/packages/patches/einstein-build.patch                    \
   %D%/packages/patches/emacs-exec-path.patch                   \
+  %D%/packages/patches/emacs-fix-scheme-indent-function.patch  \
   %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch    \
   %D%/packages/patches/emacs-source-date-epoch.patch           \
   %D%/packages/patches/eudev-rules-directory.patch             \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 5d6db5a..7d0427d 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -80,6 +80,7 @@
               (base32
                "0kn3rzm91qiswi0cql89kbv6mqn27rwsyjfb8xmwy9m5s8fxfiyx"))
              (patches (search-patches "emacs-exec-path.patch"
+                                      "emacs-fix-scheme-indent-function.patch"
                                       "emacs-source-date-epoch.patch"))
              (modules '((guix build utils)))
              (snippet
diff --git a/gnu/packages/patches/emacs-fix-scheme-indent-function.patch 
b/gnu/packages/patches/emacs-fix-scheme-indent-function.patch
new file mode 100644
index 0000000..c5a4268
--- /dev/null
+++ b/gnu/packages/patches/emacs-fix-scheme-indent-function.patch
@@ -0,0 +1,29 @@
+Fix 'scheme-indent-function' to indent s-expressions starting with a keyword
+properly, like this:
+
+(#:foo 1
+ #:bar 2)
+
+instead of like this:
+
+(#:foo 1
+       #:bar 2)
+
+The fix is made by Mark H Weaver <address@hidden>:
+<http://www.netris.org/~mhw/scheme-indent-function.el>
+
+--- a/lisp/progmodes/scheme.el
++++ b/lisp/progmodes/scheme.el
+@@ -482,6 +482,12 @@
+                       (> (length function) 3)
+                       (string-match "\\`def" function)))
+              (lisp-indent-defform state indent-point))
++              ((and (null method)
++                    (> (length function) 1)
++                    ;; The '#' in '#:' seems to get lost, not sure why
++                    (string-match "\\`:" function))
++               (let ((lisp-body-indent 1))
++                 (lisp-indent-defform state indent-point)))
+             ((integerp method)
+              (lisp-indent-specform method state
+                                    indent-point normal-indent))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]