geiser-racket moved to individual package
[geiser.git] / elisp / geiser.el
blobb05a8132eed02af251b6f20a60a15379042a6a28
1 ;;; geiser.el --- GNU Emacs and Scheme talk to each other
3 ;; Copyright (C) 2009, 2010, 2011, 2012, 2013, 2015, 2018, 2021 Jose Antonio Ortega Ruiz
4 ;; URL: http://www.nongnu.org/geiser/
6 ;; This program is free software; you can redistribute it and/or
7 ;; modify it under the terms of the Modified BSD License. You should
8 ;; have received a copy of the license along with this program. If
9 ;; not, see <http://www.xfree86.org/3.3.6/COPYRIGHT2.html#5>.
11 ;;; Commentary:
13 ;; Autoloads and basic setup for geiser.
16 ;;; Code:
17 ;;; Locations:
19 ;;;###autoload
20 (defconst geiser-elisp-dir (file-name-directory load-file-name)
21 "Directory containing Geiser's Elisp files.")
23 ;;;###autoload
24 (defconst geiser-scheme-dir
25 (let ((d (expand-file-name "./scheme/" geiser-elisp-dir)))
26 (if (file-directory-p d)
28 (expand-file-name "../scheme/" geiser-elisp-dir)))
29 "Directory containing Geiser's Scheme files.")
31 ;;;###autoload
32 (add-to-list 'load-path (directory-file-name geiser-elisp-dir))
35 ;;; Autoloads:
37 ;;;###autoload
38 (autoload 'geiser-version "geiser-version" "Echo Geiser's version." t)
40 ;;;###autoload
41 (autoload 'geiser-unload "geiser-reload" "Unload all Geiser code." t)
43 ;;;###autoload
44 (autoload 'geiser-reload "geiser-reload" "Reload Geiser code." t)
46 ;;;###autoload
47 (autoload 'geiser "geiser-repl"
48 "Start a Geiser REPL, or switch to a running one." t)
50 ;;;###autoload
51 (autoload 'run-geiser "geiser-repl" "Start a Geiser REPL." t)
53 ;;;###autoload
54 (autoload 'geiser-connect "geiser-repl"
55 "Start a Geiser REPL connected to a remote server." t)
57 ;;;###autoload
58 (autoload 'geiser-connect-local "geiser-repl"
59 "Start a Geiser REPL connected to a remote server over a Unix-domain socket."
62 ;;;###autoload
63 (autoload 'switch-to-geiser "geiser-repl"
64 "Switch to a running one Geiser REPL." t)
66 ;;;###autoload
67 (autoload 'run-chez "geiser-chez" "Start a Geiser Chez REPL." t)
69 ;;;###autoload
70 (autoload 'switch-to-chez "geiser-chez"
71 "Start a Geiser Chez REPL, or switch to a running one." t)
73 ;;;###autoload
74 (autoload 'run-guile "geiser-guile" "Start a Geiser Guile REPL." t)
76 ;;;###autoload
77 (autoload 'switch-to-guile "geiser-guile"
78 "Start a Geiser Guile REPL, or switch to a running one." t)
80 ;;;###autoload
81 (autoload 'connect-to-guile "geiser-guile"
82 "Connect to a remote Geiser Guile REPL." t)
84 ;;;###autoload
85 (autoload 'run-gambit "geiser-gambit" "Start a Geiser Gambit REPL." t)
87 ;;;###autoload
88 (autoload 'switch-to-gambit "geiser-gambit"
89 "Start a Geiser Gambit REPL, or switch to a running one." t)
91 ;;;###autoload
92 (autoload 'connect-to-gambit "geiser-gambit"
93 "Connect to a remote Geiser Gambit REPL." t)
95 ;;;###autoload
96 (autoload 'run-chicken "geiser-chicken" "Start a Geiser Chicken REPL." t)
98 ;;;###autoload
99 (autoload 'switch-to-chicken "geiser-chicken"
100 "Start a Geiser Chicken REPL, or switch to a running one." t)
102 ;;;###autoload
103 (autoload 'connect-to-chicken "geiser-chicken"
104 "Connect to a remote Geiser Chicken REPL." t)
106 ;;;###autoload
107 (autoload 'run-chibi "geiser-chibi" "Start a Geiser Chibi Scheme REPL." t)
109 ;;;###autoload
110 (autoload 'switch-to-chibi "geiser-chibi"
111 "Start a Geiser Chibi Scheme REPL, or switch to a running one." t)
113 ;;;###autoload
114 (autoload 'geiser-mode "geiser-mode"
115 "Minor mode adding Geiser REPL interaction to Scheme buffers." t)
117 ;;;###autoload
118 (autoload 'turn-on-geiser-mode "geiser-mode"
119 "Enable Geiser's mode (useful in Scheme buffers)." t)
121 ;;;###autoload
122 (autoload 'turn-off-geiser-mode "geiser-mode"
123 "Disable Geiser's mode (useful in Scheme buffers)." t)
125 ;;;###autoload
126 (autoload 'geiser-mode--maybe-activate "geiser-mode")
128 ;;;###autoload
129 (mapc (lambda (group)
130 (custom-add-load group (symbol-name group))
131 (custom-add-load 'geiser (symbol-name group)))
132 '(geiser
133 geiser-repl
134 geiser-autodoc
135 geiser-doc
136 geiser-debug
137 geiser-faces
138 geiser-mode
139 geiser-guile
140 geiser-gambit
141 geiser-image
142 geiser-chicken
143 geiser-chez
144 geiser-chibi
145 geiser-implementation
146 geiser-xref))
149 ;;; Setup:
151 ;;;###autoload
152 (add-hook 'scheme-mode-hook 'geiser-mode--maybe-activate)
154 (provide 'geiser)
156 ;;; geiser.el ends here