diff --git a/src/ext/frame-multiplexer.lisp b/src/ext/frame-multiplexer.lisp index cf071237f..5ff5e683b 100644 --- a/src/ext/frame-multiplexer.lisp +++ b/src/ext/frame-multiplexer.lisp @@ -11,6 +11,16 @@ :frame-multiplexer-next :frame-multiplexer-prev :frame-multiplexer-switch + :frame-multiplexer-switch-0 + :frame-multiplexer-switch-1 + :frame-multiplexer-switch-2 + :frame-multiplexer-switch-3 + :frame-multiplexer-switch-4 + :frame-multiplexer-switch-5 + :frame-multiplexer-switch-6 + :frame-multiplexer-switch-7 + :frame-multiplexer-switch-8 + :frame-multiplexer-switch-9 :frame-multiplexer-create-with-new-buffer-list :frame-multiplexer-delete :frame-multiplexer-recent @@ -430,6 +440,21 @@ The prefix argument ID defaults to 1." (switch-current-frame vf (frame-table-entry-frame entry)) (editor-error "No frame with ID ~a" id)))) +(macrolet ((def (command-name n) + `(define-command (,command-name (:advice-classes frame-multiplexer-advice)) + () () + (frame-multiplexer-switch ,n)))) + (def frame-multiplexer-switch-0 0) + (def frame-multiplexer-switch-1 1) + (def frame-multiplexer-switch-2 2) + (def frame-multiplexer-switch-3 3) + (def frame-multiplexer-switch-4 4) + (def frame-multiplexer-switch-5 5) + (def frame-multiplexer-switch-6 6) + (def frame-multiplexer-switch-7 7) + (def frame-multiplexer-switch-8 8) + (def frame-multiplexer-switch-9 9)) + (define-command (frame-multiplexer-recent (:advice-classes frame-multiplexer-advice)) (&optional (n 1)) (:universal) "Switch to the Nth most recent frame selected.