emacs-devel
[Top][All Lists]
Advanced

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

Re: Merging Finder into package mechanism


From: Juri Linkov
Subject: Re: Merging Finder into package mechanism
Date: Sun, 29 Aug 2010 00:38:10 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (x86_64-pc-linux-gnu)

> package.el has a variable `package--builtins-base' which defines
> packages built into Emacs.  This is similar, but not identical, to the
> Finder conception of a package.  I would like to remove the discrepancy.

I think Keywords should be additional package attribute
along with Name, Version, Brief description, Long description.

> As part of this, I also want to eliminate some of the useless entries
> that currently show up in Finder.  For instance, Finder gives cc-vars.el
> a separate entry from cc-mode.el, which is not very useful.  All the
> cc-*.el files should get a single entry, under the "cc-mode" package.

The problem is that currently files in the Emacs source tree are not
grouped into packages.  It would be good to define built-in packages
explicitly where Keywords will be defined once for every multi-file package.

> Eventually, finder-by-keyword should allow searching for elpa packages
> as well as built-in packages.

Finder scans local files to collect package information,
so it could also connect to elpa.gnu.org, but this requires
Internet access during `make finder-data'.

> The proposed technical steps are as follows.  First, merge
> `finder-package-info' and `package--builtins-base' into a single
> variable.  This is a backward-incompatible change, but I think that's
> acceptable, since third-party code is unlikely to make use of
> `finder-package-info'.

Does this mean that `list-packages' will list all Emacs built-in packages
(in addition to elpa packages)?  Maybe not bad, after all.

> Second, alter `finder-compile-keywords' to recognize files that are part
> of multi-file built-in packages.  I propose to do this by adding an
> optional "Package:" file header, which says that the file is part of a
> multi-file package.  For instance, cc-vars.el can have the header
> "Package: cc-mode".  Files that we want to omit from Finder can have the
> header "Package: emacs".

This looks like a good thing since some package sub-files already do
something like that, e.g. files in the cc-mode package refer to the
main file as ";; Version: See cc-mode.el".



reply via email to

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