summaryrefslogtreecommitdiff
path: root/geiser-guile.el
diff options
context:
space:
mode:
authorjao <jao@gnu.org>2020-07-20 04:59:45 +0100
committerjao <jao@gnu.org>2020-07-20 04:59:45 +0100
commitba4c1a9f35a3a7286cf4cdb63292ff18424bfd60 (patch)
treee09b7c4a0db2a50a47569671a0f6cdf54a060235 /geiser-guile.el
parent43d9ece15438fb35489761c03db427d9e3970150 (diff)
downloadgeiser-guile-ba4c1a9f35a3a7286cf4cdb63292ff18424bfd60.tar.gz
geiser-guile-ba4c1a9f35a3a7286cf4cdb63292ff18424bfd60.tar.bz2
adjustments to scheme load path
Diffstat (limited to 'geiser-guile.el')
-rw-r--r--geiser-guile.el29
1 files changed, 20 insertions, 9 deletions
diff --git a/geiser-guile.el b/geiser-guile.el
index 522c4eb..d68a5b9 100644
--- a/geiser-guile.el
+++ b/geiser-guile.el
@@ -1,14 +1,21 @@
;;; geiser-guile.el -- guile's implementation of the geiser protocols
-;; Copyright (C) 2009-2018, 2020 Jose Antonio Ortega Ruiz
-;; Copyright (C) 2017 Jan Nieuwenhuizen <janneke@gnu.org>
+;; Copyright (C) 2009-2020 Jose Antonio Ortega Ruiz
+;; Start date: Sun Mar 08, 2009 23:03
-;; This program is free software; you can redistribute it and/or
-;; modify it under the terms of the Modified BSD License. You should
-;; have received a copy of the license along with this program. If
-;; not, see <http://www.xfree86.org/3.3.6/COPYRIGHT2.html#5>.
+;; Author: Jose Antonio Ortega Ruiz (jao@gnu.org)
+;; Maintainer: Jose Antonio Ortega Ruiz (jao@gnu.org)
+;; Keywords: languages, guile, scheme, geiser
+;; Homepage: https://gitlab.com/emacs-geiser/guile
+;; Package-Requires: ((emacs "24.4") (geiser-core "1.0"))
+;; SPDX-License-Identifier: BSD-3-Clause
+;; Version: 1.0
-;; Start date: Sun Mar 08, 2009 23:03
+;; This file is NOT part of GNU Emacs.
+
+;;; Commentary:
+;; geiser-guile extends the `geiser' core package to support GNU
+;; Guile.
;;; Code:
@@ -134,6 +141,10 @@ effect on new REPLs. For existing ones, use the command
(car geiser-guile-binary)
geiser-guile-binary))
+(defvar geiser-guile-scheme-dir
+ (expand-file-name "src" (file-name-nondirectory load-file-name))
+ "Directory where the Guile scheme geiser modules are installed.")
+
(defun geiser-guile--parameters ()
"Return a list with all parameters needed to start Guile.
This function uses `geiser-guile-init-file' if it exists."
@@ -141,7 +152,7 @@ This function uses `geiser-guile-init-file' if it exists."
(expand-file-name geiser-guile-init-file)))
(q-flags (and (not geiser-guile-load-init-file-p) '("-q"))))
`(,@(and (listp geiser-guile-binary) (cdr geiser-guile-binary))
- ,@q-flags "-L" ,(expand-file-name "guile/" geiser-scheme-dir)
+ ,@q-flags "-L" ,geiser-guile-scheme-dir
,@(apply 'append (mapcar (lambda (p) (list "-L" p))
geiser-guile-load-path))
,@(and init-file (file-readable-p init-file) (list "-l" init-file)))))
@@ -357,7 +368,7 @@ it spawn a server thread."
(geiser-connect 'guile))
(defun geiser-guile--set-geiser-load-path ()
- (let* ((path (expand-file-name "guile/" geiser-scheme-dir))
+ (let* ((path geiser-guile-scheme-dir)
(witness "geiser/emacs.scm")
(code `(begin (if (not (%search-load-path ,witness))
(set! %load-path (cons ,path %load-path)))