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

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

Re: Get report on which files are loading


From: Harry Putnam
Subject: Re: Get report on which files are loading
Date: Sun, 18 May 2003 08:13:40 -0700
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux)

Harry Putnam <reader@newsguy.com> writes:


> ;; make loaded files give a message [from Kai]
>  (defadvice load (before debug-log activate)
>   (message "(Tip from Kai G): Now loading: %s" (ad-get-arg 0)))
>
> It reports on some files but not on others.
> For example it doesn't report when site-start.el is loaded even
> though the defadvice is loaded first (from the command line)
>   emacs -l ~/whats_loading.el
>
> I have this in site-start.el to see when it loads:
>  (message "finished loading => 
> /usr/local/share/emacs/site-lisp/site-start.el") (sit-for 1)
>
> I see in  *Messages* buffer, stuff that indicate what is loading like this:

[...]

> I'd like to put something in that message line that allows emacs to
> know what it has just read and from where.  Something like the `%s'
> operator in the defadvice.  So that if for some reason site-start.el
> is put somewhere else the accurate path and file name will still be
> reported in *Messages* buffer.  Something like:
>  (message "finished loading => SOMETHING TO REPORT PATH and FNAME") (sit-for 
> 1)
>
> I couldn't get it right as to where to put the `%s' or if it will even
> fit in this line of code.

kai.grossjohann@gmx.net (Kai Großjohann) writes:

> Harry Putnam <reader@newsguy.com> writes:
>
>>  (defadvice load (before debug-log activate)
>>   (message "(Tip from Kai G): Now loading: %s" (ad-get-arg 0)))
>
> Instead of (ad-get-arg 0), say (locate-library (ad-get-arg 0)).  That
> will give you the absolute filename.

 (defadvice load (before debug-log activate)
(message "(Tip from Kai G): Now loading: %s" (locate-library (ad-get-arg 0))))

Well, that gives absolute file names alright but I think I must have
confused the issue in my previous post.  The defadvice DOES NOT
report the loading of site-start.el even when the defadvice is
preloaded from the command line with
  emacs -l whats_loading.el

I don't understand why.  But to compensate for that lack of report I
put this at the end of site-start.el:

  (message "finished loading => 
/usr/local/share/emacs/site-lisp/site-start.el") (sit-for 1)

What I wanted to know was how to change that line so I don't have to
put the absolute filename manually.  In other words. How to make the
last `message' line above report absolute filename by itself
 (message "finished loading => "(SOMETHING HERE TO REPORT FILE NAME) (sit-for 
1))

I want this because the defadvice DOES NOT report when site-start.el
is loaded.

Observe:
 emacs -l /usr/share/emacs/site-lisp/whats_loading.el &

 (`whats_loading.el' contains the defadvice as modified and shown above)
Notice in the output of *Messages* that loading of site start el is
NOT reported by the defadvice.  The only indication is the message
line shown above at the end of site-start.el:

  emacs -l /usr/local/share/emacs/site-lisp/whats_loading.el &
*Messages*:

Loading disp-table...done
Loading encoded-kb...done
Loading tool-bar...done
Loading image...done
Loading tooltip...done
Loading whats_loading.el (source)...
Loading advice...done
Loading whats_loading.el (source)...done
Loading help-fns...done
(Tip from Kai G): Now loading: /home/reader/.emacs-custom
Loading ~/.emacs-custom...done
Loading skeleton...done
Loading executable...done
Loading regexp-opt...done
finished loading => /usr/local/share/emacs/site-lisp/site-start.el
(Tip from Kai G): Now loading: /home/reader/.emacs
Loading bbdb-gnus...
Loading easymenu...done
[...]





reply via email to

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