On Jul 20, 9:22 pm, Tassilo Horn <[EMAIL PROTECTED]> wrote:
>
> The problem with that no-vc-approach is, that users who extend
> anything.el to fit their needs will have to redefine a bunch of
> variables, e.g.
>
>   (setq anything-sources '((...)))
>   (setq anything-type-actions '((...)))
>
> and so forth.

Yep, and this is the recommended way. Any serious user of anything
should radically redefine these and other variables. The provided
defaults are not really practical, they are there only to show off
anything features.

For example, why should be completions from Complex Command History
delayed? No real practical reason, I added the delay attribute only to
test and demonstrate this feature.

That's why I don't use the defaults either, and neither should others.
People's needs are so different, that it's unlikely there could be
sensible defaults which would appeal to most people.

> If you now add a bugfix or little change to the original
> definition, that won't propagate to the users. So I'd recommend to use a
> distributed vc system nevertheless. Then any hackish user could use
> their own branches and sync painlessly to incorporate the changes you
> made.

This is the hackish way and I'd rather like a clear separation between
anything the platform and predefined anything configurations.
Regardless of the version control issue.

For that purpose, I created anything-config.el and moved the two
existing predefined sources to it, and buffer actions as an example.

Predefined anything configurations should be collected there, so that
users can use those what they prefer. In addition to predefined
sources and actions people can even publish alternative anything-
source configurations there.

I don't plan to touch anything.el itself in the future for changes in
the default configuration, except if a new feature is added and it
should be demonstrated with the example sources, but I don't expect it
to happen very often.

> To make anything.el better suited for extending it on the user side I'd
> recommend to clean it up a bit, e.g. the example sources in
> `anything-sources' should all be defined with `anything-source-FOO'
> variables and the same for `anything-type-actions'.

These should be added to anything-config.el instead. The
configurations in anything.el are to show off features, they are
examples. Their proper, practical versions should be maintained in
anything-config.el.

> Since you don't have "too much time" I volunteer to create a repository
> for you and to make those little cleanups during this weekend.
>
> How does that sound? C'mon, that's a offer you cannot decline. :-)

Unlike how it seems I do appreciate your offer. :) I prefer version
control systems myself. The thing is I have used different operating
systems and different computers while hacking on anything and the
simplicity of emacs wiki was very convenient, because there was no
need to set up additional tools, besides emacs.

Here's what I think: I hereby authorize you and others to hack on
anything-config.el uploaded to Emacs wiki. :) Add your command
completion source, actions and stuff, and you can even put it under
version control if you wish. It will change much more often than
anything.el itself, I think.

For the time being, anything.el should be left on Emacs Wiki. Let's
see how it goes with anything-config.el first and if there is a need
at all to put anything.el too under version control (no more ad-hoc
changes in the default configuration).

I expect most of the changes will be in the configurations and the
base platform won't be touched that often.

Now, how's THAT sound? ;)

_______________________________________________
gnu-emacs-sources mailing list
gnu-emacs-sources@gnu.org
http://lists.gnu.org/mailman/listinfo/gnu-emacs-sources

Reply via email to