Fixing guile 2.2 compatibility
[geiser.git] / elisp / geiser.el
blob476b4ec7a3abc376d951eeb493e56e94080887ce
1 ;;; geiser.el --- GNU Emacs and Scheme talk to each other
3 ;; Copyright (C) 2009, 2010, 2011, 2012, 2013, 2015 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.
13 ;;; Locations:
15 ;;;###autoload
16 (defconst geiser-elisp-dir (file-name-directory load-file-name)
17 "Directory containing Geiser's Elisp files.")
19 ;;;###autoload
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.")
27 ;;;###autoload
28 (when (not (member geiser-elisp-dir load-path))
29 (add-to-list 'load-path geiser-elisp-dir))
32 ;;; Autoloads:
34 ;;;###autoload
35 (autoload 'geiser-version "geiser-version" "Echo Geiser's version." t)
37 ;;;###autoload
38 (autoload 'geiser-unload "geiser-reload" "Unload all Geiser code." t)
40 ;;;###autoload
41 (autoload 'geiser-reload "geiser-reload" "Reload Geiser code." t)
43 ;;;###autoload
44 (autoload 'geiser "geiser-repl"
45 "Start a Geiser REPL, or switch to a running one." t)
47 ;;;###autoload
48 (autoload 'run-geiser "geiser-repl" "Start a Geiser REPL." t)
50 ;;;###autoload
51 (autoload 'geiser-connect "geiser-repl"
52 "Start a Geiser REPL connected to a remote server." t)
54 ;;;###autoload
55 (autoload 'geiser-connect-local "geiser-repl"
56 "Start a Geiser REPL connected to a remote server over a Unix-domain socket."
59 ;;;###autoload
60 (autoload 'switch-to-geiser "geiser-repl"
61 "Switch to a running one Geiser REPL." t)
63 ;;;###autoload
64 (autoload 'run-guile "geiser-guile" "Start a Geiser Guile REPL." t)
66 ;;;###autoload
67 (autoload 'switch-to-guile "geiser-guile"
68 "Start a Geiser Guile REPL, or switch to a running one." t)
70 ;;;###autoload
71 (autoload 'connect-to-guile "geiser-guile"
72 "Connect to a remote Geiser Guile REPL." t)
74 ;;;###autoload
75 (autoload 'run-racket "geiser-racket" "Start a Geiser Racket REPL." t)
77 ;;;###autoload
78 (autoload 'run-gracket "geiser-racket" "Start a Geiser GRacket REPL." t)
80 ;;;###autoload
81 (autoload 'switch-to-racket "geiser-racket"
82 "Start a Geiser Racket REPL, or switch to a running one." t)
84 ;;;###autoload
85 (autoload 'connect-to-racket "geiser-racket"
86 "Connect to a remote Geiser Racket REPL." t)
88 ;;;###autoload
89 (autoload 'run-chicken "geiser-chicken" "Start a Geiser Chicken REPL." t)
91 ;;;###autoload
92 (autoload 'switch-to-chicken "geiser-chicken"
93 "Start a Geiser Chicken REPL, or switch to a running one." t)
95 ;;;###autoload
96 (autoload 'connect-to-chicken "geiser-chicken"
97 "Connect to a remote Geiser Chicken REPL." t)
99 ;;;###autoload
100 (autoload 'geiser-mode "geiser-mode"
101 "Minor mode adding Geiser REPL interaction to Scheme buffers." t)
103 ;;;###autoload
104 (autoload 'turn-on-geiser-mode "geiser-mode"
105 "Enable Geiser's mode (useful in Scheme buffers)." t)
107 ;;;###autoload
108 (autoload 'turn-off-geiser-mode "geiser-mode"
109 "Disable Geiser's mode (useful in Scheme buffers)." t)
111 ;;;###autoload
112 (autoload 'geiser-mode--maybe-activate "geiser-mode")
114 ;;;###autoload
115 (mapc (lambda (group)
116 (custom-add-load group (symbol-name group))
117 (custom-add-load 'geiser (symbol-name group)))
118 '(geiser
119 geiser-repl
120 geiser-autodoc
121 geiser-doc
122 geiser-debug
123 geiser-faces
124 geiser-mode
125 geiser-guile
126 geiser-image
127 geiser-racket
128 geiser-chicken
129 geiser-implementation
130 geiser-xref))
133 ;;; Setup:
135 ;;;###autoload
136 (add-hook 'scheme-mode-hook 'geiser-mode--maybe-activate)
137 ;;;###autoload
138 (add-to-list 'auto-mode-alist '("\\.rkt\\'" . scheme-mode))
141 (provide 'geiser)
143 ;;; geiser.el ends here