Note <2019-03-18 Mon 18:00>: There is a nice ELPA package called [[https://github.com/clemera/buffer-expose][expose]] that provides similar functionality.
This package provides a macOS mission-control-like way to switch between buffers.
mission control:
=mcon-swith= to open preview panel, use number to select buffer to switch to.
[[./mcon.gif][./mcon.gif]]
C TAB:
Press mcon-c-tab (C-S-tab on terminal) (=mcon-c-tab-graphic=) to open preview panel, mcon-c-tab (C-S-tab) to loop through them. After =mcon-c-tab-timeout= seconds of idle buffer will switch to the selected one.
[[./c-tab.gif][./c-tab.gif]]
Install
(require 'mission-control) ;; to use mcon-c-tab (mcon-c-tab-setup-binding)
Functions
mcon-switch :: switch between buffers
mcon-c-tab-graphic :: switch between buffers. You can't directly call this function though. Configure =mcon-c-tab-key-list= and call =mcon-c-tab-setup-binding= to bind keys.
mcon-c-tab-setup-binding :: Bing keys in =mcon-c-tab-key-list=.
Customizations
mcon-black-list-regexp :: Buffers that match regexps inside this list are note included in mission control.
mcon-number-face :: Face of numbers on the modeline on each window.
mcon-thumbnail-font :: Font of each preview window.
mcon-c-tab-timeout :: Idle time before switch to selected buffer.
mcon-c-tab-max-buffer :: Maximum number of buffers that mcon-c-tab will show.
mcon-c-tab-height-ratio :: Ratio of height of preview frame to original frame.
mcon-c-tab-number-face :: Face of numbers on the modeline on each window.
mcon-c-tab-thumbnail-font :: Font of each preview window.
mcon-c-tab-key-list :: A list of key sequences to invoke mcon-c-tab functions.
mcon-c-tab-initial-selection-off-set :: 0 means select original buffer, 1 means select the second one, etc.
mcon-c-tab shares =mcon-black-list-regexp=