Prompt for multiple windows and return the list of selected windows. Windows are highlighted (see flash-window) as they are selected. The returned list can be used to un-highlight the windows: (let ((winlist (select-window-group))) (for-each (lambda (w) (unflash-window w)) winlist))