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

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

Re: Emacs 26.1 on Windows is HUGE


From: Phillip Lord
Subject: Re: Emacs 26.1 on Windows is HUGE
Date: Tue, 30 Apr 2019 22:13:57 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux)

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Óscar Fuentes <ofv@wanadoo.es>
>> Date: Tue, 30 Apr 2019 17:35:45 +0200
>> 
>> Eli Zaretskii <eliz@gnu.org> writes:
>> 
>> >> I will have a poke around and see if I can find out where this is set
>> >> for msys.
>> >
>> > Regardless, I think this should be reported to MSYS, because they need
>> > to fix it.
>> 
>> https://github.com/msys2/MINGW-packages/issues/631
>
> Wow, 4 years!
>
> I think they should be told about the trailing colon feature, maybe
> that will help them fix the problem.  Or not.


Or not, am afraid.

The fix is very simple. INFOPATH is set in /etc/profile.

https://github.com/msys2/MSYS2-packages/blob/master/filesystem/profile

But, Emacs will ignore the final colon regardless. The code is
below. The problem is we match against path-separator which is ";" not
":", so we never do the `append'.

(defun info-initialize ()
  "Initialize `Info-directory-list', if that hasn't been done yet."
  (unless Info-directory-list
    (let ((path (getenv "INFOPATH"))
          (sep (regexp-quote path-separator)))
      (setq Info-directory-list
            (prune-directory-list
             (if path
                 (if (string-match-p (concat sep "\\'") path)
                     (append (split-string (substring path 0 -1) sep)
                             (Info-default-dirs))
                   (split-string path sep))
               (Info-default-dirs))))
   ......SNIP


This follows the info documentation which says:

  However you set INFOPATH, if its last character is a colon (on
  MS-DOS/MS-Windows systems, use a semicolon instead), this is replaced
  by the default (compiled-in) path. This gives you a way to augment the
  default path with new directories without having to list all the
  standard places.

Both Emacs and the Info documentation are wrong, I think, since they
assume the path seperator for environment variables on MS-Windows
systems in ";" which isn't true in general.

Phil



reply via email to

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