emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] [RFC] Change some defcustoms into defcont


From: Carsten Dominik
Subject: Re: [O] [RFC] Change some defcustoms into defcont
Date: Sun, 20 Oct 2013 20:23:37 +0200

Hi Nicolas,

I think this change breaks user setups.  I don't know how many
people do change these keywords, but I know some do, if
only for localization purposes.  I myself have modified the
archive keyword in some cases, if I use this feature for a
different purpose.

You probably want to do this to make Org syntax less fragile.  A good
goal.  However, I think it can also be achieved by leaving these
as defcustom and discouraging changes in the docstring with a
standard sentence about about deprecation.

Your most important argument to me seems about efficiency of cashing.
We can fix this by providing :set methods for the customize entries
that will trigger global cache erasing, so that you do not need to
programmatically check this all the time.

Regards

- Carsten

On 20.10.2013, at 10:47, Nicolas Goaziou <address@hidden> wrote:

> Hello,
> 
> I'd like to suggest changing the following defcustom variables into
> defconst:
> 
>  - org-deadline-string
>  - org-scheduled-string
>  - org-closed-string
>  - org-clock-string
>  - org-comment-string
>  - org-quote-string
>  - org-effort-property
>  - org-archive-tag
> 
> There's no fundamental reason to change these, as they belong to Org
> syntax, much like star character for headlines and ":END:" closing
> string for drawers.
> 
> They can also introduce bugs in code when modified (e.g. modifying
> `org-effort-property' breaks `ox-taskjuggler'). Of course, this can be
> avoided with careful checks, but this puts an extra burden on developers
> for a tiny benefit for the user.
> 
> Eventually, they can be costly, since changing any of them implies that
> cache in every Org buffer must be erased.
> 
> Allowing customization is generally good, but I think Org syntax should
> never be a moving target.
> 
> Note that this shouldn't introduce much backward incompatibility (unless
> user changes them through customize interface) since a defconst can
> still be setq'ed and variables will still be used in code base.
> 
> Opinions?
> 
> 
> Regards,
> 
> -- 
> Nicolas Goaziou
> 




reply via email to

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