Spaces:
Sleeping
Sleeping
(define-module (lang elisp base) | |
;; Be pure. Nothing in this module requires symbols that map to the | |
;; standard Guile builtins, and it creates a problem if this module | |
;; has access to them, as @bind can dynamically change their values. | |
;; Transformer output always uses the values of builtin procedures | |
;; and macros directly. | |
#:pure | |
;; {Elisp Primitives} | |
;; | |
;; In other words, Scheme definitions of elisp primitives. This | |
;; should (ultimately) include everything that Emacs defines in C. | |
#:use-module (lang elisp primitives buffers) | |
#:use-module (lang elisp primitives char-table) | |
#:use-module (lang elisp primitives features) | |
#:use-module (lang elisp primitives format) | |
#:use-module (lang elisp primitives fns) | |
#:use-module (lang elisp primitives guile) | |
#:use-module (lang elisp primitives keymaps) | |
#:use-module (lang elisp primitives lists) | |
#:use-module (lang elisp primitives load) | |
#:use-module (lang elisp primitives match) | |
#:use-module (lang elisp primitives numbers) | |
#:use-module (lang elisp primitives pure) | |
#:use-module (lang elisp primitives read) | |
#:use-module (lang elisp primitives signal) | |
#:use-module (lang elisp primitives strings) | |
#:use-module (lang elisp primitives symprop) | |
#:use-module (lang elisp primitives syntax) | |
#:use-module (lang elisp primitives system) | |
#:use-module (lang elisp primitives time) | |
;; Now switch into Emacs Lisp syntax. | |
#:use-syntax (lang elisp transform)) | |
;;; Everything below here is written in Elisp. | |
(defun load-emacs (&optional new-load-path debug) | |
(if debug (message "load-path: %s" load-path)) | |
(cond (new-load-path | |
(message "Setting load-path to: %s" new-load-path) | |
(setq load-path new-load-path))) | |
(if debug (message "load-path: %s" load-path)) | |
(scheme (read-set! keywords 'prefix)) | |
(message "Calling loadup.el to clothe the bare Emacs...") | |
(load "loadup.el") | |
(message "Guile Emacs now fully clothed")) | |