mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-26 12:39:36 -05:00
gnu: Add emacs-geiser-guile.
* gnu/packages/patches/emacs-geiser-guile-auto-activate.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it here. * gnu/packages/emacs-xyz.scm (emacs-geiser-guile): New variable. Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
This commit is contained in:
parent
c1a78a1081
commit
7141b010ee
3 changed files with 77 additions and 0 deletions
|
@ -970,6 +970,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/emacs-exec-path.patch \
|
||||
%D%/packages/patches/emacs-exwm-fix-fullscreen-states.patch \
|
||||
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
|
||||
%D%/packages/patches/emacs-geiser-guile-auto-activate.patch \
|
||||
%D%/packages/patches/emacs-geiser-autoload-activate-implementation.patch \
|
||||
%D%/packages/patches/emacs-ignore-empty-xim-styles.patch \
|
||||
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
|
||||
|
|
|
@ -266,6 +266,48 @@ (define-public emacs-geiser
|
|||
e.g. emacs-geiser-guile for Guile.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public emacs-geiser-guile
|
||||
(package
|
||||
(name "emacs-geiser-guile")
|
||||
(version "0.13")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.com/emacs-geiser/guile.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0w264pjwlxna31260ll6gd0n77jlynhzf3h2dws5wr7jflns5mbc"))
|
||||
(patches (search-patches
|
||||
"emacs-geiser-guile-auto-activate.patch"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
'(#:include (cons "^src/" %default-include)
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'make-autoloads 'patch-autoloads
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* (string-append
|
||||
(elpa-directory (assoc-ref outputs "out"))
|
||||
"/geiser-guile-autoloads.el")
|
||||
;; Activating implementations fails when Geiser is not yet
|
||||
;; loaded, so let's defer that until it is.
|
||||
(("\\(geiser-activate-implementation .*\\)" all)
|
||||
(string-append
|
||||
"(eval-after-load 'geiser-impl '" all ")")))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("guile" ,guile-2.2)))
|
||||
(propagated-inputs
|
||||
`(("geiser" ,emacs-geiser)))
|
||||
(home-page "https://nongnu.org/geiser/")
|
||||
(synopsis "Guile Scheme support for Geiser")
|
||||
(description
|
||||
"This package adds support for the Guile Scheme implementation to Geiser,
|
||||
a generic Scheme interaction mode for the GNU Emacs editor.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public emacs-ac-geiser
|
||||
(let ((commit "93818c936ee7e2f1ba1b315578bde363a7d43d05")
|
||||
(revision "0"))
|
||||
|
|
34
gnu/packages/patches/emacs-geiser-guile-auto-activate.patch
Normal file
34
gnu/packages/patches/emacs-geiser-guile-auto-activate.patch
Normal file
|
@ -0,0 +1,34 @@
|
|||
From 93ef7101fdfcc7eac6f465b4b9788c384a323c14 Mon Sep 17 00:00:00 2001
|
||||
From: jao <jao@gnu.org>
|
||||
Date: Mon, 5 Apr 2021 20:17:50 +0100
|
||||
Subject: [PATCH] fix: auto-activate guile implementation
|
||||
|
||||
---
|
||||
geiser-guile.el | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/geiser-guile.el b/geiser-guile.el
|
||||
index 340442b..deeb76f 100644
|
||||
--- a/geiser-guile.el
|
||||
+++ b/geiser-guile.el
|
||||
@@ -25,6 +25,7 @@
|
||||
(require 'geiser-syntax)
|
||||
(require 'geiser-custom)
|
||||
(require 'geiser-repl)
|
||||
+(require 'geiser-impl)
|
||||
(require 'geiser-base)
|
||||
(require 'geiser-eval)
|
||||
(require 'geiser-edit)
|
||||
@@ -474,6 +475,9 @@ it spawn a server thread."
|
||||
|
||||
(geiser-impl--add-to-alist 'regexp "\\.scm$" 'guile t)
|
||||
|
||||
+;;;###autoload
|
||||
+(geiser-activate-implementation 'guile)
|
||||
+
|
||||
;;;###autoload
|
||||
(autoload 'run-guile "geiser-guile" "Start a Geiser Guile REPL." t)
|
||||
|
||||
--
|
||||
GitLab
|
||||
|
Loading…
Reference in a new issue