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

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

Re: debugging Emacs LISP functions


From: John Valente
Subject: Re: debugging Emacs LISP functions
Date: Wed, 1 Mar 2017 17:33:31 +0000 (UTC)

The blurring between "user" and "developer", in this case, has nothing to do 
with free software.  Emacs is many things, including an elisp complier and 
interpreter.  So the problem you're having is absolutely appropriate for a 
user-level mailing list.
As far as Lisp goes, it's very common and canonical to have a function that can 
return either a string or a list of strings.
I see someone else has already responded with some help about using the 
debugger, and about evaluating source-code functions.  One other thing you 
might try is quit emacs, and move or delete all the .elc files, and start it up 
again.  I don't know how much that will work, because there might be code 
around that notices the lack of .elc files and recompiles the source.  But I 
don't think the core files do that.  As far as I recall, emacs is more than 
happy to work with interpreted code.  It's just a little bit slower. 
- John

      From: hector <address@hidden>
 To: address@hidden 
 Sent: Wednesday, March 1, 2017 4:14 AM
 Subject: debugging Emacs LISP functions
   
I have a problem with Emacs. Basically it doesn't do what I want it to do :-)
Or put it another way, it doesn't behave as I expect it to behave.

I tried debugging the offending function (dir-locals-find-file)
and then I found another problem.

Perhaps I just don't get acquainted to the LISP typing system.
This function can return a string or a list. Is this good coding style?
But that's another question. Perhaps this mail should go to the
emacs-devel mailing list. I don't know. With free software you just
loose the difference between a "user" and a "developer". Anyway I see
some developers read this list every now and then.

When I try to debug LISP code that is part of Emacs I see with some functions
I get the source code and with others I just get "byte-code". In the latter
case I can't debug it because the debugger just skips the whole function.

How can I know what functions appear as "byte-code" in the debugger?
And how can I debug them?



   

reply via email to

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