Subject: bug#16644: 24.3.50; Can't get Git Org mode info files before info files bundled with Emacs

From: "Sebastien Vauban" <[email-masked]>
Date: Fri, 07 Feb 2014 09:20:21 +0100

Eli Zaretskii wrote:
>> From: "Sebastien Vauban" <[email-masked]>
>> Cc: [email-masked],  [email-masked]
>> Date: Thu, 06 Feb 2014 23:10:14 +0100
>> 
>> 1. Setting `Info-additional-directory-list', such in this MWE (just that
>>    to launch Emacs with, nothing else [1]):
>> 
>> --8<---------------cut here---------------start------------->8---
>>    ;; Org-mode
>>    (add-to-list 'load-path "~/Public/Repositories/org-mode/lisp")
>>                                            ; modify the paths to suit your environment!
>> 
>>    (setq Info-additional-directory-list
>>          `(,(expand-file-name
>>              (concat (file-name-directory (locate-library "org")) "../doc/"))
>>            "c:/cygwin/usr/share/info/"))
>
> Any reasons why you use backticks here?

In fact, no. That comes from a copy/paste of what I did with
`Info-default-directory-list'. Useless indeed, but shouldn't matter.

>> --8<---------------cut here---------------end--------------->8---
>> 
>>    has NO IMPACT on Info-directory-list (C-h v following an initial C-h i).
>
> It shouldn't: Emacs does not modify Info-directory-list using
> Info-additional-directory-list, it uses them both when appropriate,
> and searches Info-directory-list first, followed by
> Info-additional-directory-list.  Like the doc string of
> Info-additional-directory-list says:
>
>   List of additional directories to search for Info documentation files.
>   These directories are searched after those in `Info-directory-list'.

OK, that's clear to me (now) for that one.

>> 2.  Setting `Info-default-directory-list', such in this MWE:
>> 
>> --8<---------------cut here---------------start------------->8---
>>    ;; Org-mode
>>    (add-to-list 'load-path "~/Public/Repositories/org-mode/lisp")
>>                                            ; modify the paths to suit your environment!
>> 
>>    (setq Info-default-directory-list
>>          `(,(expand-file-name
>>              (concat (file-name-directory (locate-library "org")) "../doc/"))
>>            "c:/cygwin/usr/share/info/"
>>            ,@Info-default-directory-list))
>> --8<---------------cut here---------------end--------------->8---
>> 
>>    DOES CHANGE the variable `Info-directory-list', but my path is put
>>    AFTERWARD:
>> 
>>    ╭────
>>    │ Its value is
>>    │ ("c:/Program Files (x86)/emacs-trunk/share/info/"
>>    │ "d:/Users/fni/Public/Repositories/org-mode/doc/"
>>    │ "c:/cygwin/usr/share/info/")
>>    ╰────
>> 
>> In both cases, I get the doc of Org mode 8.2.5c, the one built with the
>> Emacs from a couple of days ago.
>> 
>> Don't you get the same results as me if you try the above recipe?
>
> These results are expected, I think.  The doc string of
> Info-directory-list says, among other things:
>
>   If you want to override the order of directories in
>   `Info-default-directory-list', set INFOPATH in the environment.
>
> So I suggest to do just that.

I think I did, no!?

The docstring says:

- set `Info-default-directory-list', or
- set INFOPATH environment variable.

As I want to be able to easily use my Emacs in different machines, or
even different OSes, I chose to set the `Info-default-directory-list'
variable (one of the two choices adviced by the docstring), so that
everything is in my `.emacs' configuration file.

However, while I set the order of directories to be:

1. first the Info files from Org mode Git, then
2. from Cygwin tools, then
3. the ones built within Emacs,

I expect to just get that in `Info-directory-list'. It isn't the case.

So, is there a way to put my Info files before the ones from Emacs?

Best regards,
  Seb

-- 
Sebastien Vauban