繁体   English   中英

杀死缓冲区有时会将焦点切换到新树窗口

[英]kill-buffer switches focus to neotree window sometimes

而且我不想要这种行为。 实际上,并非每次都切换焦点。 例如, *Help**Message*类的缓冲区不具有此行为,该有害功能仅在关闭常规文件缓冲区时才处于活动状态。

如何完全禁用此功能?

对于这个问题,我的解决方案是简单地编写自己的处理程序以消除缓冲区。 希望以后能对某人有所帮助。

(global-set-key (kbd "C-w")
                (lambda ()
                  (interactive)
                  (if (string= (substring (buffer-name) 0 2) " *")
                      (progn
                        (message "You can not kill protected BUFFER"))
                    (progn
                      (if (string= (substring (buffer-name) 0 1) "*")
                          (progn
                            (call-interactively 'kill-buffer))
                        (progn
                          (call-interactively 'kill-buffer)
                          (run-at-time "0.5 sec" nil
                                       (lambda ()
                                         (call-interactively 'windmove-right)))))))))

您需要为windmove-right安装ace-window软件包,该功能具有受保护的缓冲区与此答案无关,因此您可以自由地删除它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM