>> diff --git a/lisp/repeat.el b/lisp/repeat.el >> index 84a613da0c..4be4f766ef 100644 >> --- a/lisp/repeat.el >> +++ b/lisp/repeat.el >> @@ -398,7 +398,7 @@ repeat-post-hook >> (when repeat-exit-key >> (define-key map repeat-exit-key 'ignore)) >> - (set-transient-map map))))))) >> + (set-transient-map map t))))))) > > So there is no help message “[Repeat with o, O, ...]” displayed when use 'C-x o O’. Also I noticed another problem with using `t' for KEEP-PRED in set-transient-map: it doesn't handle `repeat-exit-key' after every command. So `t' can't be used. > Maybe we can wrap all commands in `repeat-map’ and show the help > message first, then invoke the bound function? The problem is that currently we get `repeat-map' only from command symbol: (get this-command 'repeat-map) But maybe we could allow the command to set its next repeat-map explicitly: (define-key map "O" (lambda () (interactive) (setq repeat-map 'other-window-repeat-map) (other-window -1))) with such patch: