[slime-devel] Recent patches binding C-M-a, C-M-e in the SLIME REPL

Matthias Koeppe mkoeppe+slime at mail.math.uni-magdeburg.de
Mon Aug 6 03:57:21 UTC 2007


Hi Tobias, 

here's a comment on one of your recent changes.

2007-06-16  Tobias C. Rittweiler <tcr at freebits.de>

	* slime.el: Pressing `C-M-a' (beginning-of-defun) in midst of the
	last REPL prompt directs the cursor to the beginning of the
	prompt. Pressing it again, would do nothing; now it moves the
	cursor to the start of the previous prompt (as it's consistent
	with the behaviour when the cursor was placed midst one of the old
	prompts.)

	Likewise for `C-M-e' (end-of-defun)

	(slime-keys): New bindings for `C-M-a' and `C-M-e' to
	SLIME-BEGINNING-OF-DEFUN and SLIME-END-OF-DEFUN respectively.
	(slime-repl-mode-map): Removed bindings for `C-M-a' and `C-M-e',
	as they're now inherited from SLIME-KEYS.
	(slime-repl-beginning-of-defun, slime-repl-end-of-defun): Jump to
	the previous (next) prompt if called twice in a row.

In general overriding C-M-a and C-M-e is not necessary since the
variables `beginnning-of-defun-function' and `end-of-defun-function'
can be given buffer-local values.  (Also note that just overriding
C-M-a and C-M-e is not enough, since there is another binding for
these functions on C-M-home and C-M-end.)

Such a `beginnning-of-defun-function' and `end-of-defun-function' are
actually already defined in SLIME REPL mode, invoking
`slime-repl-previous-prompt', `slime-repl-next-prompt'.

I suspect your code is just working around a bug in
`slime-repl-previous-prompt', `slime-repl-next-prompt', which should
be fixed instead.  Would you like to work on this?
 
Regards,
Matthias
-- 
Matthias Koeppe -- http://www.math.uni-magdeburg.de/~mkoeppe
(currently @math.ucdavis.edu)




More information about the slime-devel mailing list