emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: kill-buffer calls frame's buffer-predicate for all buffers even if t


From: Constantin Kulikov
Subject: Re: kill-buffer calls frame's buffer-predicate for all buffers even if the killed buffer was not shown in any window.
Date: Tue, 17 Jan 2017 01:21:14 +0300

Ok, here is my attempt to code this:
https://github.com/Bad-ptr/emacs/commit/cf6b0d9f08dbdc5dd685dbc6a5ef9ff18575e2b2
This seem to work for my example from the start of discussion(not tested it much for now).

> you didn't describe the use case where this issue got in your
way, so perhaps you should. 

If you set a 'heay' buffer-predicate like here
https://github.com/Bad-ptr/persp-mode.el/blob/master/persp-mode.el#L2793
(This package provide a way to switch between 'projects',
each project has a list of buffers, it is essential to set a buffer-predicate that
will constrain buffer switching to the current 'project' so it needs to check if a
buffer is a member of the current project list. There may be many buffers from
many projects)
And if you are the user of a package that overuse the with-temp-buffer(like helm
or if you run down the list of candidates of the company-mode) you can notice a
slowdown.
https://github.com/Bad-ptr/persp-mode.el/issues/35

And I just think that this behavior of the kill-buffer is wrong and could be fixed
quite easily and without introducing new functions or breaking user experience.
Maybe I'm wrong.
And I'm not saying that this is a critical bug or somehow urgent, just wanted to
discuss the idea.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]