diff options
-rw-r--r-- | gnu-system.am | 1 | ||||
-rw-r--r-- | gnu/packages/emacs.scm | 27 | ||||
-rw-r--r-- | gnu/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch | 14 |
3 files changed, 42 insertions, 0 deletions
diff --git a/gnu-system.am b/gnu-system.am index 5657124036..7b22138018 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -453,6 +453,7 @@ dist_patch_DATA = \ gnu/packages/patches/duplicity-test_selection-tmp.patch \ gnu/packages/patches/elfutils-tests-ptrace.patch \ gnu/packages/patches/emacs-exec-path.patch \ + gnu/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \ gnu/packages/patches/emacs-source-date-epoch.patch \ gnu/packages/patches/eudev-rules-directory.patch \ gnu/packages/patches/evilwm-lost-focus-bug.patch \ diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 40eddb0690..1da43fe0ae 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -1228,3 +1228,30 @@ for quotation marks, dashes, and ellipses. For example, typing @kbd{\"} automatically inserts a Unicode opening or closing quotation mark, depending on context.") (license license:gpl3+))) + +(define-public emacs-scheme-complete + (let ((commit "9b5cf224bf2a5994bc6d5b152ff487517f1a9bb5")) + (package + (name "emacs-scheme-complete") + (version (string-append "20151223." (string-take commit 8))) + (source + (origin + (file-name (string-append name "-" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ashinn/scheme-complete.git") + (commit commit))) + (sha256 + (base32 + "141wn9l0m33w0g3dqmx8nxbfdny1r5xbr6ak61rsz21bk0qafs7x")) + (patches + (list (search-patch "emacs-scheme-complete-scheme-r5rs-info.patch"))))) + (build-system emacs-build-system) + (home-page "https://github.com/ashinn/scheme-complete") + (synopsis "Smart tab completion for Scheme in Emacs") + (description + "This file provides a single function, @code{scheme-smart-complete}, +which you can use for intelligent, context-sensitive completion for any Scheme +implementation in Emacs. To use it just load this file and bind that function +to a key in your preferred mode.") + (license license:public-domain)))) diff --git a/gnu/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch b/gnu/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch new file mode 100644 index 0000000000..6c49bdcdde --- /dev/null +++ b/gnu/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch @@ -0,0 +1,14 @@ +Fix completion for R5RS Scheme. +See https://github.com/ashinn/scheme-complete/issues/1 + +--- scheme-complete-master/scheme-complete.el.orig 2015-12-25 21:59:09.896909029 +0100 ++++ scheme-complete-master/scheme-complete.el 2015-12-25 21:59:17.924993998 +0100 +@@ -591,7 +591,7 @@ + '((exact->inexact (lambda (z) z)) + (inexact->exact (lambda (z) z))) + (mapcar #'(lambda (x) +- (list x (scheme-env-lookup *scheme-r7rs-info* x))) ++ (scheme-env-lookup *scheme-r7rs-info* x)) + *scheme-r5rs-bindings*)))) + *scheme-r5rs-info*) + |