GNU bug report logs - #587
23.0.60; To source or not to source (from help)

Previous Next

Package: emacs;

Reported by: "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>

Date: Mon, 21 Jul 2008 15:40:05 UTC

Severity: normal

Merged with 671, 672, 673, 674

Done: Chong Yidong <cyd <at> stupidchicken.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 587 in the body.
You can then email your comments to 587 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>:
New bug report received and forwarded. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>
To: emacs-pretest-bug <at> gnu.org
Subject: 23.0.60; To source or not to source (from help)
Date: Mon, 21 Jul 2008 17:32:57 +0200
If you do C-h v and look at a variable and click on the library link in 
the help buffer you will go to the file in your current Emacs tree. If 
you do C-h f to look at a function and do the same you will be taken to 
the cvs checkout file instead.


In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
 of 2008-07-16
Windowing system distributor `Microsoft Corp.', version 5.1.2600




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to martin rudalics <rudalics <at> gmx.at>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #10 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: 587 <at> debbugs.gnu.org
Cc: Bug-Gnu-Emacs <bug-gnu-emacs <at> gnu.org>,
        "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Fri, 08 Aug 2008 11:52:23 +0200
> If you do C-h v and look at a variable and click on the library link in
> the help buffer you will go to the file in your current Emacs tree. If
> you do C-h f to look at a function and do the same you will be taken to
> the cvs checkout file instead.

I suspect you compiled Emacs in the checkout directory and then copied
the Emacs tree to another directory.  In this case the following might
happen: As for C-h f `describe-function-1' will execute

      ;; See if lisp files are present where they where installed from.
      (if (not (eq file-name 'C-source))
	  (setq file-name (find-source-lisp-file file-name)))

which sets `file-name' to the ".el" file from the checkout directory
(because you did compile it there) and installs the corresponding
reference in the hyperlink.

As for C-h v `describe-variable' does _not_ care whether you compiled in
another directory and simply goes to the file supplied by `symbol-file'.
You could try inserting the snipped above in `describe-variable'
immediately before the line

	      (if file-name

and see whether it now jumps to the checkout directory instead.


Personally, I'd prefer something like the following in both cases:

      (unless (or (eq file-name 'C-source)
		  (file-exists-p file-name))
	(setq file-name (find-source-lisp-file file-name)))

martin





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #15 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 587 <at> debbugs.gnu.org, Bug-Gnu-Emacs <bug-gnu-emacs <at> gnu.org>
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Fri, 08 Aug 2008 13:09:10 +0200
martin rudalics wrote:
>  > If you do C-h v and look at a variable and click on the library link in
>  > the help buffer you will go to the file in your current Emacs tree. If
>  > you do C-h f to look at a function and do the same you will be taken to
>  > the cvs checkout file instead.
> 
> I suspect you compiled Emacs in the checkout directory and then copied
> the Emacs tree to another directory.

I use the normal

  make install INSTALL_DIR=...

> In this case the following might
> happen: As for C-h f `describe-function-1' will execute
> 
>       ;; See if lisp files are present where they where installed from.
>       (if (not (eq file-name 'C-source))
>       (setq file-name (find-source-lisp-file file-name)))
> 
> which sets `file-name' to the ".el" file from the checkout directory
> (because you did compile it there) and installs the corresponding
> reference in the hyperlink.
> 
> As for C-h v `describe-variable' does _not_ care whether you compiled in
> another directory and simply goes to the file supplied by `symbol-file'.
> You could try inserting the snipped above in `describe-variable'
> immediately before the line
> 
>           (if file-name
> 
> and see whether it now jumps to the checkout directory instead.

Yes, I guess that is correct.

> Personally, I'd prefer something like the following in both cases:
> 
>       (unless (or (eq file-name 'C-source)
>           (file-exists-p file-name))
>     (setq file-name (find-source-lisp-file file-name)))


Thanks martin. I think a variable (or an option) for which elisp to go 
to would be the best. Is there any reason not to have that?




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to martin rudalics <rudalics <at> gmx.at>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #20 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>
Cc: 587 <at> debbugs.gnu.org, Bug-Gnu-Emacs <bug-gnu-emacs <at> gnu.org>
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Fri, 08 Aug 2008 14:03:52 +0200
> I use the normal
>
>   make install INSTALL_DIR=...

I never use that.  Are the ".el" files copied as well in that case?

>> In this case the following might
>> happen: As for C-h f `describe-function-1' will execute
>>
>>       ;; See if lisp files are present where they where installed from.
>>       (if (not (eq file-name 'C-source))
>>       (setq file-name (find-source-lisp-file file-name)))
>>
>> which sets `file-name' to the ".el" file from the checkout directory
>> (because you did compile it there) and installs the corresponding
>> reference in the hyperlink.
>>
>> As for C-h v `describe-variable' does _not_ care whether you compiled in
>> another directory and simply goes to the file supplied by `symbol-file'.
>> You could try inserting the snipped above in `describe-variable'
>> immediately before the line
>>
>>           (if file-name
>>
>> and see whether it now jumps to the checkout directory instead.
>
>
> Yes, I guess that is correct.

Did you verify it?

>> Personally, I'd prefer something like the following in both cases:
>>
>>       (unless (or (eq file-name 'C-source)
>>           (file-exists-p file-name))
>>     (setq file-name (find-source-lisp-file file-name)))
>
> Thanks martin. I think a variable (or an option) for which elisp to go
> to would be the best. Is there any reason not to have that?

We'd have to do something similar for definitions in the C-sources too.
Do I suppose correctly that the C-sources are not copied automatically
when you explicitly specify the install directory?  I'm too lazy to look
into this ...

martin





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #25 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 587 <at> debbugs.gnu.org, Bug-Gnu-Emacs <bug-gnu-emacs <at> gnu.org>
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Fri, 08 Aug 2008 14:20:00 +0200
martin rudalics wrote:
>  > I use the normal
>  >
>  >   make install INSTALL_DIR=...
> 
> I never use that.  Are the ".el" files copied as well in that case?
> 
>  >> In this case the following might
>  >> happen: As for C-h f `describe-function-1' will execute
>  >>
>  >>       ;; See if lisp files are present where they where installed from.
>  >>       (if (not (eq file-name 'C-source))
>  >>       (setq file-name (find-source-lisp-file file-name)))
>  >>
>  >> which sets `file-name' to the ".el" file from the checkout directory
>  >> (because you did compile it there) and installs the corresponding
>  >> reference in the hyperlink.
>  >>
>  >> As for C-h v `describe-variable' does _not_ care whether you 
> compiled in
>  >> another directory and simply goes to the file supplied by 
> `symbol-file'.
>  >> You could try inserting the snipped above in `describe-variable'
>  >> immediately before the line
>  >>
>  >>           (if file-name
>  >>
>  >> and see whether it now jumps to the checkout directory instead.
>  >
>  >
>  > Yes, I guess that is correct.
> 
> Did you verify it?

I did not look at the details again since I did not have time to fix 
this. I notice that C-h v takes me to the Emacs install tree I am using 
and C-h f takes me to the CVS checkout tree where I compiled Emacs.

>  >> Personally, I'd prefer something like the following in both cases:
>  >>
>  >>       (unless (or (eq file-name 'C-source)
>  >>           (file-exists-p file-name))
>  >>     (setq file-name (find-source-lisp-file file-name)))
>  >
>  > Thanks martin. I think a variable (or an option) for which elisp to go
>  > to would be the best. Is there any reason not to have that?
> 
> We'd have to do something similar for definitions in the C-sources too.
> Do I suppose correctly that the C-sources are not copied automatically
> when you explicitly specify the install directory?  I'm too lazy to look
> into this ...

I have seen no problems with the C sources. I always get to the CVS 
checkout tree from C-h v,f.

I did not even know they could be copied when you do make install. How 
do you do that?




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to martin rudalics <rudalics <at> gmx.at>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #30 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>
Cc: 587 <at> debbugs.gnu.org
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Sat, 09 Aug 2008 14:37:18 +0200
> I did not look at the details again since I did not have time to fix
> this. I notice that C-h v takes me to the Emacs install tree I am using
> and C-h f takes me to the CVS checkout tree where I compiled Emacs.

We can consistently try to go to the compile directory or to the install
directory first, whatever people want.  A problem with the former
approach is that the definition might not be there any more, e.g., after
a fresh checkout.  That's why I would probably prefer the latter.

martin





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #35 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 587 <at> debbugs.gnu.org
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Sat, 09 Aug 2008 14:44:54 +0200
martin rudalics wrote:
>  > I did not look at the details again since I did not have time to fix
>  > this. I notice that C-h v takes me to the Emacs install tree I am using
>  > and C-h f takes me to the CVS checkout tree where I compiled Emacs.
> 
> We can consistently try to go to the compile directory or to the install
> directory first, whatever people want.  A problem with the former
> approach is that the definition might not be there any more, e.g., after
> a fresh checkout.  That's why I would probably prefer the latter.


I would suggest something like this:

- A variable to decide where to go
- Possibly there should be a separate variable for the src tree
- If not possible to go there:
  * If no other choice then give an error
  * Otherwise ask user wether to go to the other place
    (checkout/install)





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to martin rudalics <rudalics <at> gmx.at>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #40 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>
Cc: 587 <at> debbugs.gnu.org
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Sat, 09 Aug 2008 14:58:09 +0200
> I would suggest something like this:
>
> - A variable to decide where to go

An option, I suppose.

> - Possibly there should be a separate variable for the src tree

Rather not.

> - If not possible to go there:
>   * If no other choice then give an error
>   * Otherwise ask user wether to go to the other place
>     (checkout/install)

I think asking the user is some kind of overkill, we should make this
part of the option - always go to build dir, always go to install dir,
prefer build dir, prefer install dir.  In any case we have to make sure
first that implementing such an option won't violate the feature freeze.

martin





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #45 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 587 <at> debbugs.gnu.org
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Sat, 09 Aug 2008 15:02:36 +0200
martin rudalics wrote:
>  > I would suggest something like this:
>  >
>  > - A variable to decide where to go
> 
> An option, I suppose.

Yes.

>  > - Possibly there should be a separate variable for the src tree
> 
> Rather not.
> 
>  > - If not possible to go there:
>  >   * If no other choice then give an error
>  >   * Otherwise ask user wether to go to the other place
>  >     (checkout/install)
> 
> I think asking the user is some kind of overkill, we should make this
> part of the option - always go to build dir, always go to install dir,
> prefer build dir, prefer install dir.

Sounds good.

> In any case we have to make sure
> first that implementing such an option won't violate the feature freeze.

Currently there is a bug to fix and I believe implementing this might be 
the best way to fix the bug.




Merged 587 671 672 673 674. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Sun, 10 Aug 2008 00:00:06 GMT) Full text and rfc822 format available.

Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to Stefan Monnier <monnier <at> iro.umontreal.ca>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #52 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 671 <at> debbugs.gnu.org, 587 <at> debbugs.gnu.org,
        Bug-Gnu-Emacs <bug-gnu-emacs <at> gnu.org>
Subject: Re: bug#671: 23.0.60; To source or not to source (from help)
Date: Fri, 08 Aug 2008 14:43:03 -0400
> Personally, I'd prefer something like the following in both cases:

>       (unless (or (eq file-name 'C-source)
> 		  (file-exists-p file-name))
> 	(setq file-name (find-source-lisp-file file-name)))

I'd use file-readable-p, but otherwise, it sounds fine,


        Stefan







Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to Chong Yidong <cyd <at> stupidchicken.com>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #57 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Chong Yidong <cyd <at> stupidchicken.com>
To: "Lennart Borgman \(gmail\)" <lennart.borgman <at> gmail.com>
Cc: martin rudalics <rudalics <at> gmx.at>, 587 <at> debbugs.gnu.org
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Tue, 12 Aug 2008 15:10:16 -0400
> > We can consistently try to go to the compile directory or to the
> > install directory first, whatever people want.  A problem with the
> > former approach is that the definition might not be there any more,
> > e.g., after a fresh checkout.  That's why I would probably prefer
> > the latter.
>
> I would suggest something like this:
>
> - A variable to decide where to go
> - Possibly there should be a separate variable for the src tree
> - If not possible to go there:
>   * If no other choice then give an error
>   * Otherwise ask user wether to go to the other place
>     (checkout/install)

Let's not introduce any new variables at this point.  We can revisit
this issue after the release, but I'm not convinced that it's useful to
enough people to add variables for controlling this behavior.  People
who care enough about this can write their own advice.

Martin, could you change the trunk to do what you suggested
(i.e. checking the install directory first)?  Thanks.




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#587; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to Chong Yidong <cyd <at> stupidchicken.com>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #62 received at 587 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Chong Yidong <cyd <at> stupidchicken.com>
To: 587 <at> debbugs.gnu.org, 669 <at> debbugs.gnu.org,
        690 <at> debbugs.gnu.org
Subject: Re: 23.0.60; To source or not to source (from help)
Date: Mon, 01 Sep 2008 10:33:29 -0400
Martin Rudalics has checked in his fix (2008-09-01 checkin to trunk).
Now closing the bug.




bug closed, send any further explanations to "Lennart Borgman (gmail)" <lennart.borgman <at> gmail.com> Request was from Chong Yidong <cyd <at> stupidchicken.com> to control <at> emacsbugs.donarmstrong.com. (Mon, 01 Sep 2008 17:35:04 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <don <at> donarmstrong.com> to internal_control <at> emacsbugs.donarmstrong.com. (Tue, 30 Sep 2008 14:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 15 years and 243 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.