Has there been a change in the way memrise treats commas?

@Hydroptere I would only hide the synonyms as alternatives if they were already there as a comma divided list - it would be an extra - I would hide them in that case as I wouldn’t want to see them twice. If I was doing them from scratch I would just itemise them individually as separate alternatives not hidden. I wouldn’t do the list version anymore with all the current problems.
I like the synonym column as an extra to the alternatives you can add to the main answer as you can then learn specific words without being told you are wrong when your knowledge is such that you know other possibilities.

1 Like

This can be fixed with a user script (along with the parenthesis bug), but note it only allows you type everything up to but not including the first comma, and will only accepted properly-accented letters (with umlauts etc.)

MEMRISE.garden.scoring.getTypingTestAccepted=function (e,t,n,i){var fa=MEMRISE.garden.scoring.getFullAccepted(e,t,n);
                                                                var punctRegExp=/[~`!@#$%^&\*\(\)\_\-\+=\{\[}\]\|\\:;"'<,>\.\?\/]/g
                                                                var r=fa.map(function(e){return MEMRISE.garden.scoring.sanitizeTypingTest(e,i)});
                                                                r.push(fa[0].replace(punctRegExp, "").toLowerCase());
                                                                r.push(fa[0].split(',')[0].replace(punctRegExp, "").toLowerCase());                                                              
                                                                return r;}

(For anyone interested, this bug-reintroduction was a server-side change. It previously used to send back the comma-separated components as “accepted answers”, now it doesn’t. So this is a client-side patch that splits up the first accepted answer from the server into comma-separated components and adds the first one as another accepted answer. It’s easy enough to change to produce other behaviors, including making it per-course which is actually what I want - for at least 2 of my courses all the answers are sentences, many of which have commas, and shouldn’t be split by comma. One way this might work is to only split by comma if the answer doesn’t end with . ? or !)

1 Like

I use the synonyms column myself, still, it is not ok. Why should we, the course creators/contributors, spend other weeks or even months working to compensate for programming-mistakes?

2 Likes

Wait me a bit

Does this code snippet work for your case?

MEMRISE.garden.scoring.createFullAccepted = function(n) {
    var i = t.garden.pools[n.pool_id];
    e.forEach(n.columns, function(t, u) {
        var l = i.columns[u],
            h = new r;
        if (h.add(t.val),
            t.alts.forEach(function(e) {
                var t = e.val;
                return h.add(t)
            }),
            (void 0 === l || !l.typing_strict) && (t.accepted.forEach(function(e) {
                    return h.add(e)
                }),
                "text" === t.kind)) {
            var d = t.val.split(a).map(function(e) {
                return e.trim()
            });

            if (d.length > 1) {
                d.forEach(function(e) {
                    return h.add(e);
                });
                c(d).map(function(e) {
                    return e.join(" ")
                }).forEach(function(e) {
                    return h.add(e)
                })
            }
        }
        t.full_accepted = {},
            e.forEach(n.columns, function(e, n) {
                t.typing_corrects[n] && (t.typing_corrects[n].forEach(function(e) {
                            return h.add(e)
                        }),
                        s(h).forEach(function(e) {
                            var t = o(e);
                            "" !== t && h.add(t)
                        })),
                    t.full_accepted[n] = s(h)
            })
    })
}

Use this script when your start your session to get back your old behavior. However, this only a temporary solution, sorry for any convenience. Please tag me in when you have any problem. I know this is painful, but we currently change the behavior for comma.

I will try to reply to the problem as much as I can

one should use this as an “userscript”, this is what you mean?

you change the “behaviour” for the comma in what sense???

how memrise treated the comma for years, that was perfectly fine…

2 Likes

2 Likes

Ah @Hydroptere, I know but I let me find a solution for you then. We will have an official document soon for all the new behaviors (I am sorry for any inconvenience). I re-added the comma behavior week ago, but now I have to remove it for the reason that it causes us many trouble in our Memrise courses. Hope that you understand. In the mean time, this is what we support.

period and slash (; and /) will use to separate different segments.

Seriously, what the hell Memrise. The problem cropped up again with hyphens (/) no less. Stop breaking the freaking site!

1 Like

Im using Firefox… should I add that using “Webkonsole” for each typing course i’m taking, or is it ok if i’m adding that on my main memrise page? would not be easier for a non-IT person such as myself to add it as userscript in/ with stylish for firefox?

many thanks

Ah @Hydroptere, you only need to add in whenever, you start a session (it could be learning session, review session, …)

I hope that this chart will explain.

3 Likes

We haven’t deployed it yet @kotodama. Sorry, I just implement the new behavior today. Will let all of you know when it is deployed.

It does not matter. You can type it with and without the comma

1 Like

So this means all existing courses that are using the comma the way it used to be will be broken forever?

1 Like

This makes no sense. Memrise supported commas for separating alternative answers for YEARS until just two months ago. Many many courses have been made using commas. You cannot expect all the course creators to go back to all of those courses and fix many thousands of items in their database to change to some new system. Especially since a) Memrise has driven away many of our best course creators, and they’re not here anymore to fix their courses, and b) you don’t provide the tools to make large database edits like this easy to do. It would be tedious work taking a very long time.

Are you seriously saying you are intentionally breaking hundreds of user-created courses, permanently, and deliberately?

7 Likes

Thanks for the quick response. Is there any way you guys could roll out these behaviors without always breaking things? Or perhaps maybe have a banner warning on top of the dashboard and forum saying something like from “0 to 3 GMT we’re doing maintenance blah blah blah” Also perhaps telegraphing that there will be changes on the blog or again via a banner notification a couple days in advanced. It wouldn’t be as bad, if it wasn’t always an utter surprise.

1 Like