bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#1806: dired-pop-to-buffer in wrong place


From: Stefan Monnier
Subject: bug#1806: dired-pop-to-buffer in wrong place
Date: Thu, 30 Apr 2009 14:29:06 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.92 (gnu/linux)

>> Why would it override it?  It would of course bind
>> split-window-preferred-function to a function that selects the right
>> window and then calls the previous value.

> Maybe you can come up with some advanced technique to do that but here I
> would have to define a variable to save the current (user provided)
> `split-window-preferred-function' and call the function I save there
> within the body of the function provided by dired.

I'd use something like

  (lexical-let ((oldfun split-window-preferred-function))
    (let ((split-window-preferred-function
           (lambda () (with-selected-window TOTO (funcall oldfun)))))
      BLABLA))

> Hence an extra variable would be needed anyway and I suppose it's
> easier to define that in window.el rather than in all packages that
> want to change the window to split (IIRC Calendar was one of these).

The above coding should be close to "standard practice" for locally
rebinding a *-function variable.  The "extra variable" doesn't matter,
it's not like we count variables.

Maybe what you're getting at is that we should make a hook to influence
the window-choice.  Maybe so.  But it doesn't seem urgent.


        Stefan






reply via email to

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