branch: externals/ruby-end commit afd0459b11794a85db5f9c920243602c85268d92 Author: Johan Andersson <johan.rej...@gmail.com> Commit: Johan Andersson <johan.rej...@gmail.com>
When not expanding, fall back instead of assuming that space inserts a blank. --- ruby-end.el | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/ruby-end.el b/ruby-end.el index a8fd51575d..416bcb9fb9 100644 --- a/ruby-end.el +++ b/ruby-end.el @@ -46,9 +46,12 @@ ;;; Code: +(defvar ruby-end-expand-key "SPC" + "Space key name.") + (defvar ruby-end-mode-map (let ((map (make-sparse-keymap))) - (define-key map (kbd "SPC") 'ruby-end-space) + (define-key map (kbd ruby-end-expand-key) 'ruby-end-space) map) "Keymap for `ruby-end-mode'.") @@ -59,9 +62,15 @@ (defun ruby-end-space () "Called when SPC-key is pressed." (interactive) - (when (ruby-end-expand-p) - (ruby-end-insert-end)) - (insert " ")) + (cond + ((ruby-end-expand-p) + (ruby-end-insert-end) + (insert " ")) + (t + (let ((ruby-end-mode nil)) + (call-interactively + (key-binding + (kbd ruby-end-expand-key))))))) (defun ruby-end-insert-end () "Closes block by inserting end."