[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Defadvice use
From: |
rgb |
Subject: |
Re: Defadvice use |
Date: |
18 Apr 2005 10:11:08 -0700 |
User-agent: |
G2/0.2 |
Matthias wrote:
> Hi,
>
> I have the following problem: How do I advice a function so that
> within that function, the function `read-minibuffer' (for example)
> calls the definition of another function, say `my-read-minibuffer'?
>
> I'm trying to use an advice around the function; the advice providing
> a binding of the symbol `read-minibuffer' to the definition of
> `my-read-minibuffer'. Like the following:
>
> (defadvice la-fonction
> (around la-fonction-extended enable compile)
> "Documentation"
> (let (f1)
> (fset 'f1 read-minibuffer)
> (fset 'read-minibuffer my-read-minibuffer)
> ad-do-it
> (fset 'read-minibuffer f1)))
>
> Any comment? Is it silly? Is there a better way? Any idea?
>
I asked the 'is there a better way' question not too long ago
concerning the problem below and got no response so this might
be as good as it gets. I do it slightly different from your
example. I think you really don't need f1 in your advice code.
; I don't like bookmark mouse-2 opening the file in another window.
; There doesn't seem to be any other way to fix the problem. The
; theory here is to temporarily re-define the function that the mouse
; handler does call giving it the definition of the function I wish it
; would call.
(defadvice bookmark-bmenu-other-window-with-mouse
(around my-fix first () activate) ;rgb 2004
"Changes behavior to open file in same window, not other-window."
(let (bookmark-bmenu-other-window)
(fset 'bookmark-bmenu-other-window
(symbol-function 'bookmark-bmenu-this-window))
ad-do-it))
- Defadvice use, Matthias, 2005/04/18
- Re: Defadvice use,
rgb <=
- Re: Defadvice use, Johan Bockgård, 2005/04/18
- Re: Defadvice use, rgb, 2005/04/18
- Re: Defadvice use, Stefan Monnier, 2005/04/18
- Re: Defadvice use, rgb, 2005/04/18
- Re: Defadvice use, Stefan Monnier, 2005/04/18
- Re: Mis-features of let (was Defadvice use), rgb, 2005/04/18
- Re: Mis-features of let, Stefan Monnier, 2005/04/19
- Re: Mis-features of let, rgb, 2005/04/19
- Re: Mis-features of let, Stefan Monnier, 2005/04/19
- Re: Mis-features of let, rgb, 2005/04/19