1 ;;; geiser.el -- main geiser file
3 ;; Copyright (C) 2009, 2010, 2011, 2012, 2013 Jose Antonio Ortega Ruiz
5 ;; This program is free software; you can redistribute it and/or
6 ;; modify it under the terms of the Modified BSD License. You should
7 ;; have received a copy of the license along with this program. If
8 ;; not, see <http://www.xfree86.org/3.3.6/COPYRIGHT2.html#5>.
11 ;; Autoloads and basic setup for geiser.
16 (defconst geiser-elisp-dir
(file-name-directory load-file-name
)
17 "Directory containing Geiser's Elisp files.")
20 (defconst geiser-scheme-dir
21 (let ((d (expand-file-name "./scheme/" geiser-elisp-dir
)))
22 (if (file-directory-p d
)
24 (expand-file-name "../scheme/" geiser-elisp-dir
)))
25 "Directory containing Geiser's Scheme files.")
28 (when (not (member geiser-elisp-dir load-path
))
29 (add-to-list 'load-path geiser-elisp-dir
))
35 (autoload 'geiser-version
"geiser-version" "Echo Geiser's version." t
)
38 (autoload 'geiser-unload
"geiser-reload" "Unload all Geiser code." t
)
41 (autoload 'geiser-reload
"geiser-reload" "Reload Geiser code." t
)
44 (autoload 'geiser
"geiser-repl"
45 "Start a Geiser REPL, or switch to a running one." t
)
48 (autoload 'run-geiser
"geiser-repl" "Start a Geiser REPL." t
)
51 (autoload 'geiser-connect
"geiser-repl"
52 "Start a Geiser REPL connected to a remote server." t
)
55 (autoload 'switch-to-geiser
"geiser-repl"
56 "Switch to a running one Geiser REPL." t
)
59 (autoload 'run-guile
"geiser-guile" "Start a Geiser Guile REPL." t
)
62 (autoload 'switch-to-guile
"geiser-guile"
63 "Start a Geiser Guile REPL, or switch to a running one." t
)
66 (autoload 'connect-to-guile
"geiser-guile"
67 "Connect to a remote Geiser Guile REPL." t
)
70 (autoload 'run-racket
"geiser-racket" "Start a Geiser Racket REPL." t
)
73 (autoload 'run-gracket
"geiser-racket" "Start a Geiser GRacket REPL." t
)
76 (autoload 'switch-to-racket
"geiser-racket"
77 "Start a Geiser Racket REPL, or switch to a running one." t
)
80 (autoload 'connect-to-racket
"geiser-racket"
81 "Connect to a remote Geiser Racket REPL." t
)
84 (autoload 'geiser-mode
"geiser-mode"
85 "Minor mode adding Geiser REPL interaction to Scheme buffers." t
)
88 (autoload 'turn-on-geiser-mode
"geiser-mode"
89 "Enable Geiser's mode (useful in Scheme buffers)." t
)
92 (autoload 'turn-off-geiser-mode
"geiser-mode"
93 "Disable Geiser's mode (useful in Scheme buffers)." t
)
96 (autoload 'geiser-mode--maybe-activate
"geiser-mode")
100 (custom-add-load group
(symbol-name group
))
101 (custom-add-load 'geiser
(symbol-name group
)))
112 geiser-implementation
119 (add-hook 'scheme-mode-hook
'geiser-mode--maybe-activate
)
121 (add-to-list 'auto-mode-alist
'("\\.rkt\\'" . scheme-mode
))