Como @kuanyui diz em um comentário, next-buffere previous-buffersão muito rápidos, se você tiver apenas alguns buffers para circular entre. (Para mais de alguns e para mais recursos de seleção de buffer, eu uso icicle-buffer.)
No entanto, por padrão, next-buffere previous-bufferestão em uma chave de prefixoC-x ,.
Isso significa que eles não são repetíveis : você não pode simplesmente bater C-x <right> <right> <right>.... Em vez disso, você deve vincular esses comandos a chaves diferentes e repetíveis, ou deve usar C-x <right> C-x <right> C-x <right>..., o que não é muito rápido.
Para versões repetíveis desses comandos, carregue a biblioteca misc-cmds.ele remapeie as versões irrepetíveis e vanilla, para as repetíveis definidas lá:
(global-set-key [remap previous-buffer] 'previous-buffer-repeat)
(global-set-key [remap next-buffer] 'next-buffer-repeat)
(Da mesma forma, na mesma biblioteca, você encontrará uma versão undorepetível mesmo quando estiver em uma tecla de prefixo:. undo-repeat)
BTW, você pode tornar praticamente qualquer comando repetível (mesmo em uma tecla de prefixo), usando a função repeat-command(from misc-cmds.el). Isso é tudo o que foi necessário para definir a versão repetível de next-buffer:
(defun previous-buffer-repeat ()
"Switch to the previous buffer in the selected window.
You can repeat this by hitting the last key again..."
(interactive)
(require 'repeat nil t) ; Library `repeat.el' is in Emacs 22.1 and later
(repeat-command 'next-buffer))