【发布时间】:2014-01-05 14:32:36
【问题描述】:
我一直在查看the available hooks,但是当您切换窗口时,它们似乎都没有触发。
我正在尝试为所选窗口激活次要模式:
(defvar active-window (frame-selected-window))
(defun active-window-switch (&rest _)
(when active-window
(with-selected-window active-window
(active-window-mode nil)))
(setq active-window (frame-selected-window))
(active-window-mode t))
(define-minor-mode active-window-mode
"Minor mode to distinguish the selected window."
:global nil :group 'active-window :init-value nil :lighter " Active")
(add-hook 'window-configuration-change-hook #'active-window-switch)
(provide 'active-window)
我可以使用什么钩子或函数来代替window-configuration-change-hook(仅在我创建或退出窗口时触发)?
【问题讨论】:
-
最终,我想解决这个问题:stackoverflow.com/q/1516830/352796
-
建议选择窗口有帮助吗? (defadvice select-window (在 select-window-and-do-stuff 激活后) (do-stuff))
-
@AlexVorobiev,谢谢,它成功了!您可以将其发布为答案吗?
-
如果我没记错的话,您的次要模式将附加到 缓冲区,而不是 窗口。这应该不是问题,除非同一个缓冲区被多次显示(在不同的窗口甚至帧中)