ace-window
ace-window copied to clipboard
ace-window-display-mode displays incorrect keys in mode line when a side window is present
When there is a window
for which (window-parameter window 'window-side)
is non-nil, M-x ace-window
works correctly, displaying the correct keys in the window
. However, ace-window-display-mode
does not display the correct keys in the mode line.
This can be reproduced by installing the treemacs
extension, invoking M-x split-window-horizontally
followed by M-x treemacs
when ace-window-display-mode
is on, and then attempting to navigate with M-x ace-window
.
Not sure why originally (aw-ignore-on)
and (aw-ignore-current)
were added, but can comment and override after loaded in your init:
(defun aw-update ()
"Update ace-window-path window parameter for all windows.
Ensure all windows are labeled so the user can select a specific
one, even from the set of windows typically ignored when making a
window list."
(let (;;(aw-ignore-on)
;;(aw-ignore-current)
(ignore-window-parameters t))
(avy-traverse
(avy-tree (aw-window-list) aw-keys)
(lambda (path leaf)
(set-window-parameter
leaf 'ace-window-path
(propertize
(apply #'string (reverse path))
'face 'aw-mode-line-face))))))
Looks like still that way in Emacs 29, which ace-window now part of Emacs so will need to file a bug on that version.