First of all, thanks for taking the time to help with this, Juri.

I'm of the opinion that we should avoid over thinking this feature for the first release. And I'm also of the opinion that complicated custom-vars (like alists of alists) are less helpful than simple custom vars. So I'd strongly prefer if we don't turn this variable into something more complicated.

Also (although I'm perfectly in favor of a variable for ad-hoc foldings), I wouldn't mind it if this bug was removed from the release blocking list. It's a feature request, not a proper bug, so the release wouldn't be flawed without it.


On Tue, 17 May 2016 6:55 pm Drew Adams, <drew.adams@oracle.com> wrote:
> > Another consideration (for me, at least): I think (and hope) that
> > eventually users will be able to have multiple such lists (sets)
> > of char mappings that they can choose (and mix and match - sets of
> > such sets, for different purposes/contexts).  IOW, I don't see just
> > a single set of ad-hoc char mappings.  But this is anyway for the
> > future.
>
> Yes, we have to take into consideration that in addition to the
> plain customizable list we are adding to the next release,
> in later versions we might also add more customizable lists,
> e.g. with categories and other character groups.

One possibility is to (now), instead of having an option with a single list of ad-hoc mappings as value, have an option with an alist of such lists as its value, where the car of an alist entry names the particular ad-hoc mapping.

See my suggestion in an earlier mail in this thread.

> >> Another thing we need to do is to allow customization to remove
> >> default mappings.  Maybe this is possible by using the same
> >> defcustom with a rule like: remove default mappings when a char
> >> is mapped to an empty list, e.g.
> >>
> >> - adding more mappings for ‘`’:
> >>   (defcustom char-fold-ad-hoc '((?` "❛" "‘" "‛" "󠀢" "❮" "‹"))
> >>
> >> - removing default mappings for ‘`’:
> >>   (defcustom char-fold-ad-hoc '((?`))
> >
> > Yes, I would think that would work (already).  But I could be wrong.
> >
> > Thanks for taking a look at this.
>
> After long-planned terminology improvements, I'd wait for sync between
> branches to avoid merge conflicts, and then I'll submit a patch taking
> into account all opinions about the default value for users who will
> enable this feature in the next release.

Sounds good. Thx.