unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Character folding in the pretest
@ 2016-02-03  0:31 Per Starbäck
  2016-02-03  6:34 ` Adrian.B.Robert
                   ` (3 more replies)
  0 siblings, 4 replies; 102+ messages in thread
From: Per Starbäck @ 2016-02-03  0:31 UTC (permalink / raw)
  To: emacs-devel@gnu.org

I brought up earlier that the new character fold feature that still
hasn't been in any released version of Emacs shouldn't be turned on by
default when it debuts.

Now I've tested the first prerelease of Emacs 25, and seen that it is
still turned on by default, so I'll revisit this and argue why this is
important. Probably what I say here is all I have to say.

=== There was a lot of agreement ===

RMS wrote that there ought to be a poll about the default. Eli wrote
that

> Such a poll could only work if the behavior intended to become the
> default is already available in released versions of Emacs, so users
> could turn it on and try it.  This is not the case with character
> folding, which is only available in development snapshots, and
> actually is still in flux: it changes in non-trivial ways almost every
> day.
>
> If we are afraid users will hate this default, we can turn it off in
> v25.1 and consider making it the default later.

RMS commented:
> That seems like the right approach.

Artur Malabarba wrote:
> I don't mind leaving this OFF by default in Emacs 25. So long as the
> eventual goal is to have it ON by default (preferably in 26).

Drew liked the feature and thought it should be turned off initially:
> My expectation, if we turn it off by default, is that users will
> try it, like it, and possibly ask for it to become the default
> behavior.  There is no reason to jump the gun on this.

Eli thought that it should remain turned on in the pretest to get more
testing:
> The entire time interval between Nov 15 this year and until we release
> Emacs 25.1 (which will take a few months, probably more than 6,
> judging by past experience) is supposed to provide that feedback.  All
> it takes to turn this off by default is changing the default value of
> a single variable (and change a couple of places in the User Manual to
> reflect that).  Once we decide to do that, it can be done very quickly
> and easily.  We can do that a day before the release, if we want to.
>
> OTOH, turning it off today means that it will get much less testing,
> and therefore bugs related to it (like the one reported just today in
> http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22090) will most probably
> remain hidden for who knows how long.

It's time to make that decision now.

=== Why ===

Because this is a big change that have repercussions that haven't had
all the major wrinkles ironed out yet. Some software throws big
changes like that in the face of the users, and more or less force
them to get the kinks out or find out how to turn it off, but that is
usually not the Emacs way. Here usually the big kinks are already
taken care of when something is introduced to users who haven't
specifically asked for it. That's a good thing.

Eli argued against me that Emacs sometimes does that, for example with
bidi which he argued was a much bigger change. In some ways it was,
but still, for people who don't use RTL languages all of that has been
more of less invisible, and for those who do it was obviously better
than without it.

I know how the current character fold version is *just wrong* for
Swedes and other Scandinavians when handling their native languages.

There was a flurry of messages then which I couldn't keep up with, and
where I thought most of it took up issues I already had answered
anyway, but I'm getting back to this now. One answer was that problems
for Scandinavians wasn't relevant, because I had to show that it was
"_wrong_ in _most_ situations" to be relevant. I don't agree with
that, but even if you do, I think my Scandinavian example is only an
example, and that there probably are several similar in different
locales.

=== What was that Swedish example now again? ===

A and Ä.

In classical Latin U and V was the same letter. Not until Late Middle
Ages were there these two forms and they weren't differentiated one as
a consonant and one as a vowel until the 16th century.

In spite their historical equivalness they are clearly different
letters in for example English. Having a character fold feature where
a search for U found V would be *just wrong*. Since everyone on this
list knows English everyone knows that.

What we get now for Swedish is very similar to that. Everyone who
knows Swedish knows that. Here ÅÄÖ are separate letters in all ways
from A and O, in spite of their historic origin tying them together.
That is just history. "Ä" has its own key on a keyboard, its own name
and its own position in the alphabet.

For a Swede to have a search for "varpa" in a Swedish text find
"värpa" or "varpå" would be *just wrong*. It would give a strong
impression of this being an American program not meant to be used for
Swedish.

Note that this is not me saying that we Swedes don't like character
folding. It's a perfectly good feature to have a search for "entre"
find "entré" or a search for "crepe" find "crêpe" because "é" and "ê"
are accented variants of "e". But "ä" in Swedish is in no way an
accented letter.

At this point several people usually reply "then just turn it off".
But the point is that by having it work like this out of the box it
sends a message to some new users that Emacs is not usable at all.
If they instead have some problems with a feature they have explicitly
turned on that's something else. Those who have turned it on know how
to turn it off. Others don't necessarily know that.

=== Are there other examples? ===

I won't say something certain about a language I'm not a native
speaker of, but I think there are similar situations. I suspect for
example that Russian и and й is a similar pair, where it is *just
wrong* that a search for "и" (CYRILLIC SMALL LETTER I) also finds "й"
(CYRILLIC SMALL LETTER SHORT I).

All in all I see the need for a feature to adjust individual entries
of the character folding before it ought to be turned on by default.

=== Are users expecting this? ===

Has Emacs been late implementing character folding? Is everyone
expecting that now and it's important to turn it on to now seem to be
out of the loop?

It doesn't seem so. Eli wrote first that character folding was
introduced in Emacs to give users "what the other text-editing and
word-processing environments provide, what they therefore are expected
to expect". I answered that for example Gedit and Firefox didn't have
this feature, and then Eli wrote that I should "try more serious
editing environments" like MS Word. Since then I have had opportunity
to try MS Word 2013 and I couldn't find such a feature.

Maybe there was such a feature I couldn't find. Maybe it had been
turned off by the system administrators at my university. I don't
know, but on a random web source,
http://wordribbon.tips.net/T010627_Ignoring_Accented_Characters_in_Searches.html
I find it stated that MS Word (2007, 2010, and 2013) doesn't have such
a feature.

I don't think this is something users expect, but something that will
be an example of how Emacs does things better for those who can turn
it off for good results already and for the rest of us when it has
become slightly more featureful.

=== Option menu ===

Also, please please add a checkbox for character folding just above or
below the one for case folding in the Options menu!!



^ permalink raw reply	[flat|nested] 102+ messages in thread

end of thread, other threads:[~2016-02-09 15:26 UTC | newest]

Thread overview: 102+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-03  0:31 Character folding in the pretest Per Starbäck
2016-02-03  6:34 ` Adrian.B.Robert
2016-02-03  8:00 ` Paul Eggert
2016-02-03 10:54   ` Yuri Khan
2016-02-03 15:57     ` Filipp Gunbin
2016-02-03 16:24       ` Drew Adams
2016-02-03 16:46         ` Clément Pit--Claudel
2016-02-03 17:28           ` Drew Adams
2016-02-03 18:10             ` Clément Pit--Claudel
2016-02-03 18:24           ` Clément Pit--Claudel
2016-02-03 18:31             ` Drew Adams
2016-02-03 16:52       ` Yuri Khan
2016-02-03 11:08 ` Artur Malabarba
2016-02-03 13:24   ` Stefan Monnier
2016-02-03 13:35     ` Nicolas Petton
2016-02-03 15:06       ` Drew Adams
2016-02-03 15:41       ` Eli Zaretskii
2016-02-03 15:55         ` Teemu Likonen
2016-02-03 16:16           ` Eli Zaretskii
2016-02-06 13:41             ` Teemu Likonen
2016-02-06 14:33               ` Eli Zaretskii
2016-02-06 15:09                 ` Teemu Likonen
2016-02-06 18:38                   ` Artur Malabarba
2016-02-06 19:08                     ` Eli Zaretskii
2016-02-07  1:06                       ` Artur Malabarba
2016-02-03 16:54         ` Clément Pit--Claudel
2016-02-03 17:01           ` John Wiegley
2016-02-03 21:08             ` Óscar Fuentes
2016-02-03 22:32               ` John Wiegley
2016-02-03 22:52                 ` Clément Pit--Claudel
2016-02-03 23:50                 ` Sacha Chua
2016-02-04  5:49               ` Ivan Andrus
2016-02-04 21:30                 ` Richard Stallman
2016-02-04  8:40               ` Elias Mårtenson
2016-02-04 11:57                 ` Dirk-Jan C. Binnema
2016-02-04 15:18                   ` Drew Adams
2016-02-04 15:59                     ` Óscar Fuentes
2016-02-04 16:36                       ` Clément Pit--Claudel
2016-02-04 16:47                         ` Óscar Fuentes
2016-02-04 17:05                           ` Werner LEMBERG
2016-02-05  5:09                             ` Elias Mårtenson
2016-02-05  6:01                               ` Werner LEMBERG
2016-02-05  6:36                                 ` Elias Mårtenson
2016-02-05  7:15                                   ` Werner LEMBERG
2016-02-05  7:22                                     ` Elias Mårtenson
2016-02-06 15:43                                       ` Rasmus
2016-02-06 15:51                                         ` Eli Zaretskii
2016-02-05  7:52                                   ` Eli Zaretskii
2016-02-05 15:09                                     ` Filipp Gunbin
2016-02-05 19:21                                       ` Eli Zaretskii
2016-02-05 21:12                                         ` Óscar Fuentes
2016-02-05 22:20                                           ` Eli Zaretskii
2016-02-06 19:49                                           ` Richard Stallman
2016-02-06 19:49                                         ` Richard Stallman
2016-02-08 14:05                                 ` Marcin Borkowski
2016-02-08 17:48                                   ` Eli Zaretskii
2016-02-08 17:57                                     ` Werner LEMBERG
2016-02-08 19:18                                     ` Marcin Borkowski
2016-02-08 19:37                                       ` Eli Zaretskii
     [not found]                                       ` <<83oabrouwj.fsf@gnu.org>
2016-02-09  0:04                                         ` Drew Adams
2016-02-09 12:15                                       ` Richard Stallman
     [not found]                                       ` <<E1aT7CM-0005LM-9f@fencepost.gnu.org>
2016-02-09 15:26                                         ` Drew Adams
2016-02-06 12:58                               ` Rasmus
2016-02-04 17:12                           ` Eli Zaretskii
2016-02-04 19:35                             ` Óscar Fuentes
2016-02-04 19:52                               ` Clément Pit--Claudel
2016-02-04 20:05                               ` Eli Zaretskii
2016-02-04 17:27                           ` Clément Pit--Claudel
2016-02-04 17:34                             ` Eli Zaretskii
2016-02-04 18:18                             ` Yuri Khan
2016-02-04 19:46                             ` Óscar Fuentes
2016-02-04 20:06                               ` Clément Pit--Claudel
2016-02-04 20:40                                 ` Óscar Fuentes
2016-02-04 20:56                                   ` Clément Pit--Claudel
2016-02-04 21:16                                     ` Óscar Fuentes
2016-02-04 20:07                               ` Eli Zaretskii
2016-02-04 20:52                                 ` Óscar Fuentes
2016-02-04 20:59                                   ` Clément Pit--Claudel
2016-02-04 21:08                                   ` Eli Zaretskii
2016-02-04 20:23                         ` John Wiegley
2016-02-04 17:07                       ` Eli Zaretskii
2016-02-04 17:31                         ` Clément Pit--Claudel
2016-02-04 23:05                     ` Artur Malabarba
2016-02-06  9:37                       ` Per Starbäck
2016-02-06 10:41                         ` Eli Zaretskii
2016-02-06 12:52                           ` Rasmus
2016-02-06 14:31                             ` Eli Zaretskii
2016-02-06 14:24                           ` Ken Brown
2016-02-06 15:07                             ` Eli Zaretskii
2016-02-04 16:54                   ` Eli Zaretskii
2016-02-04 17:36                     ` Paul Eggert
2016-02-04 17:45                       ` Eli Zaretskii
2016-02-04 19:25                         ` Paul Eggert
2016-02-04 19:36                           ` Eli Zaretskii
2016-02-04 17:26                   ` Teemu Likonen
2016-02-05  8:08                     ` Adrian.B.Robert
2016-02-04 21:32                 ` Richard Stallman
2016-02-08 14:12                   ` Marcin Borkowski
2016-02-03 17:02           ` Eli Zaretskii
2016-02-03 15:38   ` Eli Zaretskii
2016-02-03 22:53   ` Richard Stallman
2016-02-03 15:39 ` Eli Zaretskii

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).