summary refs log tree commit diff
diff options
context:
space:
mode:
authorFederico Beffa <beffa@fbengineering.ch>2015-12-25 23:21:11 +0100
committerFederico Beffa <beffa@fbengineering.ch>2016-02-03 10:47:21 +0100
commit58a7dc1340986f11ff54a970f613a03e8ebd741c (patch)
tree19fbb5e48fef1695c08f219449df710364b9fa32
parentaad4a48ab4665f556ed04896f0adee9c216d9ff8 (diff)
downloadguix-58a7dc1340986f11ff54a970f613a03e8ebd741c.tar.gz
gnu: Add emacs-mit-scheme-doc.
* gnu/packages/emacs.scm (emacs-mit-scheme-doc): New variable.
-rw-r--r--gnu/packages/emacs.scm42
1 files changed, 42 insertions, 0 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 1da43fe0ae..852945c135 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -55,6 +55,7 @@
   #:use-module (gnu packages package-management)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pdf)
+  #:use-module (gnu packages scheme)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages mp3)
   #:use-module (guix utils)
@@ -1255,3 +1256,44 @@ 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))))
+
+(define-public emacs-mit-scheme-doc
+  (package
+    (name "emacs-mit-scheme-doc")
+    (version "20140203")
+    (source
+     (origin
+       (modules '((guix build utils)))
+       (snippet
+        ;; keep only file of interest
+        '(begin
+           (for-each delete-file '("dot-emacs.el" "Makefile"))
+           (copy-file "6.945-config/mit-scheme-doc.el" "mit-scheme-doc.el")
+           (delete-file-recursively "6.945-config")))
+       (file-name (string-append name "-" version ".tar.bz2"))
+       (method url-fetch)
+       (uri (string-append "http://groups.csail.mit.edu/mac/users/gjs/"
+                           "6.945/dont-panic/emacs-basic-config.tar.bz2"))
+       (sha256
+        (base32
+         "0dqidg2bd66pawqfarvwca93w5gqf9mikn1k2a2rmd9ymfjpziq1"))))
+    (build-system emacs-build-system)
+    (inputs `(("mit-scheme" ,mit-scheme)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'configure-doc
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let* ((mit-scheme-dir (assoc-ref inputs "mit-scheme"))
+                    (doc-dir (string-append mit-scheme-dir "/share/doc/"
+                                            "mit-scheme-"
+                                            ,(package-version mit-scheme))))
+               (substitute* "mit-scheme-doc.el"
+                 (("http://www\\.gnu\\.org/software/mit-scheme/documentation/mit-scheme-ref/")
+                  (string-append "file:" doc-dir "/mit-scheme-ref/")))))))))
+    (home-page "http://groups.csail.mit.edu/mac/users/gjs/6.945/dont-panic/")
+    (synopsis "MIT-Scheme documentation lookup for Emacs")
+    (description
+     "This package provides a set of Emacs functions to search definitions of
+identifiers in the MIT-Scheme documentation.")
+    (license license:gpl2+)))