1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
|
* Version 0.31.1 (September 1, 2024)
- Code cleanups
* Version 0.31 (May 23, 2024)
- New custom variable geiser-insert-actual-lambda
- Non-existent geiser-version function removed from autoloads
- New customization group: geiser-edit
- Debug logging improvements
* Version 0.30 (December 15, 2023)
- New geiser-repl-superparen-mode
- Fix: better message for symbol not found error
- Fix: better detection of whitespace in REPL
- Compilation warnings and all libraries using lexical binding
* Version 0.29.1 (August 6 2023)
- Minimum Emacs version upped to 27.1
* Version 0.29 (July 14 2023)
- Autoeval mode for REPL (thanks to Antero Mejr)
- Fixes for jumping and starting new REPLs
- Better tramp support (thanks to Brian Cully)
* Version 0.28.1 (November 27 2022)
- Bug fix: ensure geiser-activate-implementation is autoloaded.
- Bug fix: don't require transient, it's not used anymore by geiser core.
* Version 0.28 (November 4 2022)
- Last-result local jumps and autodoc (without using imenu).
- Simplifications to the debugging support.
- Clean-ups and more libs under lexical binding.
* Version 0.27 (October 13 2022)
- Fallback to imenu for jumping to symbol definition, as a last resort.
- Bug fixes: and-go commands, docsig for completions (now controlled
by the new geiser-autodoc-docsig flag).
* Version 0.26.1 (September 6 2022)
- Improve default names for per-project REPLs.
- Recover missing, obsoleted alias run-geiser
* Version 0.26 (August 25 2022)
- Ask interactively for REPL startup on C-c C-k as needed.
- New public command geiser-repl-maybe-send.
- ~switch-to-geiser~ and ~switch-to-geiser-module~ obsoleted in favour of
~geiser-repl-switch~ and geiser-~repl-switch-to-module~. For implementations,
geiser-IMPL-switch is defined, obsoleting swith-to-IMPL.
- ~run-geiser~ obsoleted, just use =M-x geiser=. For implementations,
geiser-IMPL is defined, obsoleting run-IMPL.
* Version 0.25.1 (August 21 2022)
- Fixes for compilation errors.
* Version 0.25 (August 21 2022)
- New customizable variables: geiser-repl-startup-hook and
geiser-repl-startup-forms.
- Fix: support for .dir-locals.el in REPL buffers.
- Fix: geiser-restart-repl: don't start a REPL to just restart it.
- Fix: respect user-defined completion-at-point-functions.
* Version 0.24 (May 7 2022)
- Support for #{...}# extended symbol syntax
- Removed explicit company backend: use CAPF instead.
* Version 0.23.1 (March 23 2022)
- Bug fix for debug buffer fontification
* Version 0.23 (March 9 2022)
- Set REPL's default directory to project's root.
- Depend on ELPA's project 0.8.1 to ensure compatibility
with emacs < 28.
- Harmonize buffer names (follow ~*Geiser ...*~ format)
* Version 0.22.2 (February 3 2022)
- Bug fixes (byte-compiler warnings, corfu compatibility).
* Version 0.22.1 (January 23 2022)
- Fix for C-u C-x C-e (in-buffer printing of evaluated expression)
- Fix for project functions other than project-current
* Version 0.22 (December 29 2021)
- New functions geiser-wait-eval and geiser-eval-region/wait for
synchronous clients like ob-scheme.
* Version 0.21 (December 22 2021)
- Asynchronous, interruptible evaluation and compilation
* Version 0.20 (December 20 2021)
- Improved support for debugging sessions (for implementations
supporting them, as usual).
- New option to add current project's root to load path or any of
its subdirectories, ~geiser-repl-add-project-paths~.
- Defaulting ~geiser-repl-current-project-function~ to ~project-current~
in emacsen having it available, and using the new
~geiser-repl-per-project-p~ to decide whether to use it.
* Version 0.19 (December 4 2021)
- Bug fixes
* Version 0.18 (October 3 2021)
- Documentation fix
* Version 0.17 (August 8 2021)
- Package available in NonGNU ELPA (doc update)
- Linting and minor fixes
* Version 0.16 (April 21 2021)
- Bug fix: display of evaluation outputs in schemes with no special
error display handler.
* Versions 0.14 and 0.15 (April 16 2021)
- Fixes for autoloads in some distributions
* Version 0.13 (April 4 2021)
- Split into per-scheme projects
* Version 0.12 (July 14 2020)
- New project.el and projectile support (Andrew Whatson)
- Improved Chez support (Jay Xu, Aaron Marks, Julian Herrera)
- Improved Chicken support (Ricardo G. Herdt, Noam Postavsky)
- Bug fixes (Philip K, spellcard199)
- Linting and clean ups (Jonas Bernoulli)
- Documentation updates
* Version 0.11.2 (February 25 2020)
- Bug fixes
* Version 0.11.1 (February 23 2020)
- Bug fixes
* Version 0.11 (February 4 2020)
- Bug fixes for all supported implementations
- New support for Gambit
* Version 0.10 (March 14 2018)
- Better support for Guile 2.2
- Better support for Chicken (Dan Leslie, John Whitbeck)
- Better support for Chez (Chaos Eternal)
- Bug fixes (Peter Wang, Diog F. S. Ramos, Mario Rodas, Jordan Brown)
- Documentation fixes (Jonas Bernoulli, Andrew Sackville-West, Ziyi
Yan, James C. De Ricco, George D. Plymale II)
* Version 0.9 (Oct 6 2016)
- Chicken: improvements by Dan Leslie.
- Guile: support for Guile 2.2 (with help from Raffik Naccache and
David Thompson).
- Preliminary support for GNU/MIT, Chibi and Chez by Peter Feigl.
- Lots of bug fixes.
* Version 0.8.1 (Oct 13 2015)
Bug fix: font-lock-ensure is from the future.
* Version 0.8 (Oct 12 2015)
Improved features:
- Lots of improvements to Chicken support, by Dan Leslie.
- Better interoperability with xscheme.
- Much better performance for long lists of completions or
evaluated values.
- Better highlighting and indentation rules, by Alex Kost and Dan
Leslie.
- Make completion work for quoted symbols.
Bug fixes:
- geiser-connect-local working again.
* Version 0.7 "Freija" (Feb 21 2015)
This release is dedicated to Dan's three-months-old daughter Freija,
who shared her dad's lap with his laptop while he was hacking on the
new Chicken scheme support for Geiser.
New features:
- Chicken support, by Dan Leslie.
Improved features:
- `company-mode' support completed with a method for `doc-buffer'.
- Support for multiple image display in Racket, including image
objects embedded in structured values (thanks to Greg Hendershott).
* Version 0.6 (Aug 9 2014)
New features:
- New customizable variables `geiser-debug-jump-to-debug-p` and
`geiser-debug-show-debug-p`.
- Better fontification of some scheme keywords (thanks to Diogo
F. S. Ramos).
Bug fixes:
- Better support for Typed Racket: (re)definitions now work for
typed/racket modules (thanks to Sam Tobin-Hochstadt).
- Better behaviour for geiser-eval-buffer in racket
buffers that contain a #lang directive. But you'd better use C-c
C-k instead.
- Better behaviour of C-c C-c when interrupting looping functions
in the REPL.
- Fixes for Makefile target html-am (as in now it works).
* Version 0.5 (Dec 9 2013)
New features:
- Geiser is now available from MELPA, with the help of Steve Purcell.
- Racket: new commands geiser-racket-{show, hide, toggle}-submodules,
for folding submodule forms in code buffers.
- Racket: interaction with submodules (entering them and evaluation
within their scope).
- New commands geiser-eval-buffer (C-c C-b) and
geiser-eval-buffer-and-go (C-c M-b), by Nick Parker.
- Pressing return on a previous expression in the REPL will resend
it, by Darren Hoo.
- Improvements to syntax highlighting (define/match in racket).
- Version checks for the underlying Scheme process, thanks to an
idea of B Batsov.
Bug fixes:
- Autodoc for Guile 2.0.9+'s subr fixed, thanks to Ludovic Courtès.
- Fixed problem when saving REPL history that contained non-ASCII
chars: all UTF-8 characters should be fair game now.
- Fixed problems with geiser-doc's history being handled by
session.el (by not letting the latter handle it).
- Paths in `geiser-load-path' are now also added to
`%load-compiled-path'. Ditto for paths added via
`geiser-add-to-load-path`.
- Compatibility fixes for Emacs snapshots.
* Version 0.4 (May 2 2013)
New features:
- New command geiser-insert-lambda, bound to C-c \ in Scheme
buffers (thanks to Ray Racine).
- Configurable case-sensitivity when highlighting keywords (thanks
to Diogo F.S. Ramos), via geiser-guile-case-sensitive-p and
geiser-racket-case-sensitive-pp
- C-u C-x C-e to insert evaluation result in buffer (thanks to
Diogo).
- New flag geiser-repl-query-on-kill-p to control whether emacs
will ask for confirmation before killing a buffer with a live
REPL process.
- New flag geiser-mode-start-repl-p to tell Geiser to start a new
REPL if one isn't active when geiser-mode is activated.
Bug fixes:
- Filename completion should also work in emacs 23.2 now.
- Racket filenames with spaces no longer break Geiser when entering
them (thanks to Diogo).
- The REPL no longer hangs when company-mode is active (thanks to
Aleix Conchillo).
- Help manual lookup in Racket fixed for #lang racket/base modules.
* Version 0.3 (Jan 19 2013)
New features:
- TAB in a string context in the REPL and Scheme buffers triggers
filename completion.
- User manual lookup command (C-c C-d i) available also in the
REPL.
- New REPL command, geiser-repl-clear-buffer (C-c M-o), to remove
all scheme output (thanks to Jonas Rodrigues).
- Indentation of scheme forms improved..
Bug fixes:
- Racket: fixes for problems entering modules sans main.rkt.
- Racket: image support in Windows fixed.
* Version 0.2.2 (Sep 30 2012)
- ELPA support. We have now ELPA packages. Thanks to Grant Rettke
and Daniel Hackney.
* Version 0.2.1 (Sep 15 2012)
Bug fixes:
- Racket: correctly reloading modules that contain submodules (this
one was breaking for instance code based on plai-typed).
- Racket: correctly jumping to symbols defined in files with .ss
extension.
New features:
- Racket: autodoc now displays argument names for constructors
defined by define-type (from either plai or plai-type).
- Racket: the included geiser-racket.sh script takes a new switch,
-n, to specify the network interface to listen to.
* Version 0.2 (Sep 3 2012)
New features:
- Support for images in Racket, both in the REPL and during
evaluations. Thanks to Michael Wilber for code, discussion and
testing.
- Support for Racket 5.3. Older Rackets not actively supported.
- ,cd command in Racket's REPL.
- New customizable variable, geiser-guile-manual-lookup-nodes, to
specify the name of Guile's info nodes, if need be.
Bug fixes:
- We don't deactivate autodoc in the REPL unless requested.
- Indentation for syntax-id-rules and for/hash.
- Highlighting of [else forms in scheme buffers.
- Indentation for all 'for' forms in Racket.
- Correctly buttonizing paths with leading spaces in DBG buffers
- Autodoc was being deactivated in REPLs.
* Version 0.1.4 (Nov 26 2011)
New features:
- Indentation for Racket's splicing-let and friends.
- Customizable prompt waiting time (geiser-repl-startup-time).
- New customizable faces: geiser-font-lock-repl-prompt and
geiser-font-lock-repl-input.
Bug fixes:
- C-c C-r and friends won't send unbalanced sexps to Scheme.
- C-c C-z works after run-geiser in a Scheme buffer.
- REPL: TAB indenting around whitespace.
- Racket: correct display of output to standard error (such as
rackunit's).
- Guile: ditto.
- Elisp: compatibility problems with filladapt fixed.
- Racket: autodoc in R5RS modules.
* Version 0.1.3 (Jun 24 2011)
Bug fixes:
- The REPL doesn't break when one calls read (fixes bug #33090).
- In Guile buffers, C-c C-a (a.k.a C-u C-c C-z) recognizes the
current module even before the define-module form (fixes bug
#33497).
- Racket can now use the GUI libraries (see bug #32844).
- Texinfo formatting fixes.
* Version 0.1.2 (Mar 9 2011)
New features:
- New C-c C-e C-l (or C-c C-r in REPL) to add a directory to
Scheme's load path.
- Guile 2.0 as lowest Guile version supported.
- New custom variable, geiser-guile-load-init-file-p, to allow
loading of ~/.guile.
Bug fixes:
- We no longer ignore geiser-repl-use-other-window.
- Company mode integration fixes (including #32231).
- M-x geiser-edit-module in REPL buffers fixed.
- We now respect user customizations of geiser-implementations-alist.
- Interaction with Guile's debugger fixed.
- "Clickable" paths in warnings buffer also for Guile 2.0.
- Fix for errors when entering r5rs modules in Racket.
* Version 0.1.1 (Jan 24 2011)
New features:
- "Manual autodoc" command; C-c C-d s.
- Autodoc retrieval is now asynchronous, for better behaviour in
remote connections.
- New C-c C-a to switch to REPL and enter module (C-c C-Z was broken).
- Racket: ',enter "foo"' as a synonym of ',enter (file "foo")'.
- Documentation typos, and grammar and layout fixes.
Bug fixes:
- Avoiding *spurious* buffers in case of communication errors.
- REPL: fixed problem with input history navigation in Racket.
- Autodoc no longer skips non-alphanumeric identifiers.
- Autodoc messages no longer interfere with active minibuffer.
- Fix for module name completion in Guile.
- Quack compatibility: avoiding problems with #f &c.
* Version 0.1 (Dec 20 2010)
Initial release.
|