怎么可以做到执行 C-x 1 时不关闭 imenu-list
buffer
自己写了一个可用的
(require 'dash)
(defun delete-other-windows-exclude-imenu-list ()
(interactive)
(->> (window-list)
(-filter
(lambda (win)
(and
(not (equal "*Ilist*" (buffer-name (window-buffer win))))
(not (eq (selected-window) win))
)
)
)
(-map
(lambda (bekill-win)
(delete-window bekill-win)
)
)
)
)
(global-set-key (kbd "C-x 1") 'delete-other-windows-exclude-imenu-list)
1 个赞
把imenu-list 的window属性改为(dedicated . t)是不是可以保留不关?
更新:试了一下,(dedicated . t) 无法保留。
修改 display-buffer-alist
里 imenu-list buffer 相关的 window-parameters
(add-to-list 'display-buffer-alist
'("\\*Ilist\\*"
(imenu-list-display-buffer)
(window-parameters . ((no-delete-other-windows . t)))))
2 个赞