Improve readability of bidi pseudolocale
Categories
(Core :: Internationalization, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox84 | --- | fixed |
People
(Reporter: dminor, Assigned: dminor)
References
(Blocks 1 open bug)
Details
Attachments
(9 files)
262.02 KB,
image/png
|
Details | |
229.34 KB,
image/png
|
Details | |
257.16 KB,
image/png
|
Details | |
290.60 KB,
image/png
|
Details | |
293.32 KB,
image/png
|
Details | |
259.01 KB,
image/png
|
Details | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
In Bug 1673054, I'm planning to remove the intl.uidirection pref and only support intl.l10n.pseudo = "bidi" in the future. We've had some discussions on element that the current bidi mode is not very readable, especially for people for whom English is not their first language. We should improve the readability of the bidi pseudo-locale before we remove intl.uidirection.
Assignee | ||
Comment 1•4 years ago
|
||
This builds on the work in Bug 1491866 to only transform every other character. It reduces the number of flipped characters. This should improve readability while still allowing for non-localized strings to be identified.
Assignee | ||
Comment 2•4 years ago
|
||
Zibi asked me to also put together a prototype of reversing the strings without changing the characters, so they read right to left. I've started doing so, but have noticed some things that don't look correct. I'm going to test with a RTL locale to see if I've done something wrong, of if I've hit some actual problems with the interfaces I'm testing.
Updated•4 years ago
|
Assignee | ||
Comment 3•4 years ago
|
||
A screenshot of about:preferences in the Arabic locale.
Assignee | ||
Comment 4•4 years ago
|
||
For comparison, here is a screenshot with the bidi pseudolocale set to reverse text strings. To me, this seems more readable than the current approach of using flipped characters.
If you look at the Always check if Nightly is your default browser
pref, things seem a bit strange. We're localizing Nightly
, but it is not localized in the screenshot from the Arabic locale I just attached. We're missing spaces around the word Nightly
, and the parts of the sentence are the wrong order for reading RTL. According to Google Translate, the sentence is in the correct order in Arabic. The flipped character version also messed this up a bit (the A
is in the wrong location), so this might just be a limitation of the pseudo-locale approach.
Assignee | ||
Comment 5•4 years ago
|
||
For comparison, this is what the bidi
pseudolocale looks like without any modifications on my system.
Assignee | ||
Comment 6•4 years ago
|
||
Assignee | ||
Comment 7•4 years ago
|
||
Assignee | ||
Comment 8•4 years ago
|
||
Discussed with Itiel on #i18n, looks like Comment 6 is the best option, so I'll go ahead with that.
Assignee | ||
Comment 9•4 years ago
|
||
Assignee | ||
Comment 10•4 years ago
|
||
Depends on D96853
Assignee | ||
Comment 11•4 years ago
|
||
This switches to using accented characters without elongation for the bidi
pseudo-locale to improve readability. We received feedback that the
flipped characters were too difficult to read.
Depends on D96854
Comment 12•4 years ago
|
||
Pushed by dminor@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/dcd4e0412d54 Update fluent-pseudo to 0.2.3; r=zbraniecki https://hg.mozilla.org/integration/autoland/rev/0e0fe4161436 Run vendor rust; r=zbraniecki https://hg.mozilla.org/integration/autoland/rev/96add4c0a255 Do not used flipped characters for bidi pseudo-locale; r=zbraniecki
Comment 13•4 years ago
|
||
Backout by btara@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/36d64f1d9d3d Backed out 3 changesets for test_pseudo.js failures CLOSED TREE
Comment 14•4 years ago
|
||
Backed out 3 changesets (bug 1675789) for test_pseudo.js failures.
Backout link: https://hg.mozilla.org/integration/autoland/rev/36d64f1d9d3dff687e2a5dc8871a5e3cb858a7ff
Failure log: https://treeherder.mozilla.org/logviewer?job_id=321647929&repo=autoland&lineNumber=2780
[task 2020-11-13T01:40:55.959Z] 01:40:55 INFO - TEST-START | intl/l10n/test/test_pseudo.js
[task 2020-11-13T01:40:56.177Z] 01:40:56 WARNING - TEST-UNEXPECTED-FAIL | intl/l10n/test/test_pseudo.js | xpcshell return code: 0
[task 2020-11-13T01:40:56.177Z] 01:40:56 INFO - TEST-INFO took 213ms
[task 2020-11-13T01:40:56.178Z] 01:40:56 INFO - >>>>>>>
[task 2020-11-13T01:40:56.178Z] 01:40:56 INFO - PID 12947 | Couldn't convert chrome URL: chrome://branding/locale/brand.properties
[task 2020-11-13T01:40:56.178Z] 01:40:56 INFO - PID 12947 | [12947, Main Thread] WARNING: Couldn't get the user appdata directory. Crash events may not be produced.: file /builds/worker/checkouts/gecko/toolkit/crashreporter/nsExceptionHandler.cpp:2949
[task 2020-11-13T01:40:56.178Z] 01:40:56 INFO - (xpcshell/head.js) | test MAIN run_test pending (1)
[task 2020-11-13T01:40:56.179Z] 01:40:56 INFO - (xpcshell/head.js) | test run_next_test 0 pending (2)
[task 2020-11-13T01:40:56.180Z] 01:40:56 INFO - (xpcshell/head.js) | test MAIN run_test finished (2)
[task 2020-11-13T01:40:56.181Z] 01:40:56 INFO - running event loop
[task 2020-11-13T01:40:56.181Z] 01:40:56 INFO - PID 12947 | [12947, Main Thread] WARNING: Could not get the program name for a cubeb stream.: 'NS_SUCCEEDED(rv)', file /builds/worker/checkouts/gecko/dom/media/CubebUtils.cpp:380
[task 2020-11-13T01:40:56.181Z] 01:40:56 INFO - intl/l10n/test/test_pseudo.js | Starting test_accented_works
[task 2020-11-13T01:40:56.181Z] 01:40:56 INFO - (xpcshell/head.js) | test test_accented_works pending (2)
[task 2020-11-13T01:40:56.181Z] 01:40:56 INFO - (xpcshell/head.js) | test run_next_test 0 finished (2)
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - TEST-PASS | intl/l10n/test/test_pseudo.js | test_accented_works - [test_accented_works : 59] true == true
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - TEST-PASS | intl/l10n/test/test_pseudo.js | test_accented_works - [test_accented_works : 61] true == true
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - TEST-PASS | intl/l10n/test/test_pseudo.js | test_accented_works - [test_accented_works : 63] "f" == "f"
[task 2020-11-13T01:40:56.182Z] 01:40:56 WARNING - TEST-UNEXPECTED-FAIL | intl/l10n/test/test_pseudo.js | test_accented_works - [test_accented_works : 72] false == true
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - /builds/worker/workspace/build/tests/xpcshell/tests/intl/l10n/test/test_pseudo.js:test_accented_works:72
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - /builds/worker/workspace/build/tests/xpcshell/head.js:_do_main:239
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - /builds/worker/workspace/build/tests/xpcshell/head.js:_execute_test:568
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - -e:null:1
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - exiting test
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - Unexpected exception NS_ERROR_ABORT:
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - _abort_failed_test@/builds/worker/workspace/build/tests/xpcshell/head.js:824:20
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - do_report_result@/builds/worker/workspace/build/tests/xpcshell/head.js:925:5
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - Assert<@/builds/worker/workspace/build/tests/xpcshell/head.js:73:21
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - proto.report@resource://testing-common/Assert.jsm:233:10
[task 2020-11-13T01:40:56.182Z] 01:40:56 INFO - proto.ok@resource://testing-common/Assert.jsm:259:10
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - test_accented_works@/builds/worker/workspace/build/tests/xpcshell/tests/intl/l10n/test/test_pseudo.js:72:7
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - _do_main@/builds/worker/workspace/build/tests/xpcshell/head.js:239:6
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - _execute_test@/builds/worker/workspace/build/tests/xpcshell/head.js:568:5
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - @-e:1:1
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - exiting test
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - PID 12947 | [12947, Main Thread] WARNING: Extra shutdown CC: 'i < NORMAL_SHUTDOWN_COLLECTIONS', file /builds/worker/checkouts/gecko/xpcom/base/nsCycleCollector.cpp:3359
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - PID 12947 | [12947, Main Thread] WARNING: OOPDeinit() without successful OOPInit(): file /builds/worker/checkouts/gecko/toolkit/crashreporter/nsExceptionHandler.cpp:3394
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - PID 12947 | [12947, Main Thread] WARNING: NS_ENSURE_TRUE(Preferences::InitStaticMembers()) failed: file /builds/worker/checkouts/gecko/modules/libpref/Preferences.cpp:4287
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - PID 12947 | [12947, Main Thread] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /builds/worker/checkouts/gecko/xpcom/base/nsTraceRefcnt.cpp:202
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - PID 12947 | [12947, Main Thread] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /builds/worker/checkouts/gecko/xpcom/base/nsTraceRefcnt.cpp:202
[task 2020-11-13T01:40:56.183Z] 01:40:56 INFO - <<<<<<<
Assignee | ||
Comment 15•4 years ago
|
||
Looks like my mach try auto
run did not pick up these tests.
Assignee | ||
Comment 16•4 years ago
|
||
Comment 17•4 years ago
|
||
Pushed by dminor@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/510b2f8cad21 Update fluent-pseudo to 0.2.3; r=zbraniecki https://hg.mozilla.org/integration/autoland/rev/be21f663170e Run vendor rust; r=zbraniecki https://hg.mozilla.org/integration/autoland/rev/cbbbb752784d Do not used flipped characters for bidi pseudo-locale; r=zbraniecki
Comment 18•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/510b2f8cad21
https://hg.mozilla.org/mozilla-central/rev/be21f663170e
https://hg.mozilla.org/mozilla-central/rev/cbbbb752784d
Description
•