:ui window-select

visually switch windows

1. Description

This module provides several methods for selecting windows without the use of the mouse or spatial navigation (e.g. C-w {h,j,k,l}).

The command other-window is remapped to either switch-window or ace-window, depending on which backend you’ve enabled. It is bound to C-x o (and C-w C-w for evil users).

It also provides numbered windows and selection with the winum package, if desired. Evil users can jump to window N in C-w <N> (where N is a number between 0 and 9). Non-evil users have C-x w <N> instead.

1.1. Maintainers

This module has no dedicated maintainers. Become a maintainer?

1.2. Module flags

+numbers
Enable numbered windows and window selection (using winum).
+switch-window
use the switch-window package as the backend, instead of ace-window (i.e. avy).

1.3. Packages

1.4. Hacks

No hacks documented for this module.

2. Prerequisites

This module has no external prerequisites.

3. TODO Usage

This module has no usage documentation yet. Write some?

4. Configuration

This module provides two backends, both providing the same functionality, but with different visual cues. They are ace-window and switch-window.

4.1. ace-window

The first character of the buffers changes to a highlighted, user-selectable character.

  • Pros: the content of the buffers are always visible.
  • Cons: The display characters are small and difficult to see (see below for a way to enlarge them).
4.1.0.1. Custom font-face example

This changes the ace-window display to show a white letter with a red background. The box attribute adds some padding. e.g.

(custom-set-faces!
  '(aw-leading-char-face
    :foreground "white" :background "red"
    :weight bold :height 2.5 :box (:line-width 10 :color "red")))

4.2. switch-window

Replaces the entire buffer with large letters.

  • Pros: The displayed characters are really easy to see.
  • Cons: You can’t see the contents of the buffers.

5. Troubleshooting

There are no known problems with this module. Report one?

6. TODO Appendix

This module has no appendix yet. Write one?