Subject: bug#52394: 27.2; Isearch with char folding enabled doesn’t match equivalent strings

From: Juri Linkov <[email-masked]>
Date: Sun, 12 Dec 2021 10:37:04 +0200

> What about the option for resetting the default character
> equivalence sets and rebuilding them from zero? A variable
> that would allow me to write something like
>
>   (setq char-fold-user-list '((?'  "‘" "’")
>                               (?\" "“" "”")))
>
> to have only quotes be considered equivalent. (When
> ‘char-fold-user-table’ is non-nil it overrides the
> default table.)
>
> Do you think it’s a good idea?

We already have a variable ‘char-fold-include’ that adds equivalence sets,
so maybe it would be sufficient to add just a new boolean variable,
maybe with a name e.g. ‘char-fold-override’.  When customized to non-nil,
it will prevent from filling ‘char-fold-table’ with default equivalence sets.
Thus it will build equivalence sets from zero using ‘char-fold-include’ only,
like you need to do.