emacs-devel
[Top][All Lists]
Advanced

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

Re: Suggestion for C-h f, describe-function


From: David Kastrup
Subject: Re: Suggestion for C-h f, describe-function
Date: Sat, 01 Jul 2006 16:58:56 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

Richard Stallman <address@hidden> writes:

>     Hi, when using C-h f describe-function RET on a function defined in C,
>     the hyperlink with the source file name takes me to the Emacs source
>     code tree, which is very convenient.
>
>     Doing the same on a Lisp function will instead take me to the actually
>     loaded file in the installed tree which is quite less convenient since
>
> I don't understand the distinction -- could you explain?

ignore is an interactive compiled Lisp function in `subr.el'.
It is bound to <mouse-movement>.
(ignore &rest IGNORE)

Do nothing and return nil.
This function accepts any number of arguments, but ignores them.

[back]


If I use the hyperlink on `subr.el', it takes me to

/usr/local/share/emacs/22.0.50/lisp/subr.el.gz

which is the installed tree.  Editing here is useless.  Instead

/usr/local/src/emacs/lisp/subr.el

would have been more useful.


In contrast:

integerp is a built-in function in `C source code'.
(integerp OBJECT)

Return t if OBJECT is an integer.

[back]


Clicking on the `C source code' hyperlink takes me to

/usr/local/src/emacs/src/data.c

instead which is right in file under CVS control.

> Are you talking about which directory is used?

I tried to, yes.

> We could make it try source-directory first, for Lisp files.
> In case it works.

The problem is with stuff compiled in another machine or another
directory: if some user has an installed Emacs and uses the C source
code link, the worst that can happen is that he gets landed in a
nonsensical place instead of no place at all, since there is no C
source code in the installed Emacs tree.

With the Lisp code, there _is_ useful code for a user to jump to, so
we don't have the situation "could as well do something wrong rather
than nothing at all" here, and should be more careful about trying
source-directory first when we don't know whether it points somewhere
useful.

In addition, there might be various external packages in their own CVS
source trees (like AUCTeX).  This can't happen in C, as Emacs has no C
level module interface, but it would be nice if one could set one's
Emacs up at least manually to have it know just where to find the
source trees of stuff.

Another possibility would be to have an option that would embed the
source tree info into files that are byte-compiled.  Then one could
set this option in the Makefiles for "make install" when one knew that
one was just using Emacs on one's own machine and not handing the
binaries around.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum




reply via email to

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