Comments (9)
As a linguist, I completely agree with you! I've changed the milestone.
from kiwix-js.
Maybe contact http://babelzilla.org/ ?
from kiwix-js.
I should start with https://developer.mozilla.org/en-US/Apps/Build/Localization/App_Localization_with_Transifex
from kiwix-js.
As the links above might be outdated, I found https://phraseapp.com/blog/posts/step-step-guide-javascript-localization/ that compares a few libraries (including jQuery.I18n, maintained by wikimedia)
from kiwix-js.
Thanks @mossroy . Very interesting. On a quick reading, I think jQuery.l18n
would make a lot of sense for us, since it's maintained by Wikimedia, so we can be sure it'll be around as long as Wikipedia is around ;-) ... More importantly, it doesn't look overly complicated.
I particularly like this syntax:
<li data-i18n="message-key">Fallback text</li>
So we could keep a readable HTML file (with the fallback text containing the current English-language strings), and provide variable names for the translation strings, which will be read from a fr.json
, es.json
, de.json
file depending on the language.
So, rather than offering different apps, we could give the user the chance to choose the app language at the outset (or in the options). Alternatively, different languages can be set as the default according to the part of the world being targeted. I imagine that initially we're talking about two or three languages other than English. But this seems perfectly scalable (of course, given the number of languages Wikipedia has).
from kiwix-js.
Just a cross-reference to #306 (RTL Support), as we should take the opportunity to ensure that any refactoring takes RTL into account.
from kiwix-js.
Kiwix translators works on translatewiki.net. What I propose is that the software is setup to deal with localisation files. Then we could have a look together how to synchronize this with translatewiki.
from kiwix-js.
I just had a quick look at the current offerings, and it seems jQuery.l18n has fallen into disrepair, replaced by https://github.com/wikimedia/banana-i18n . This is in line with the general move away from dependency on jQuery, now that babel does the job of providing needed polyfills. Banana-i18n has active and recent updates, and is a more modern version of jQuery.i18n.
from kiwix-js.
We are in general not really good with UI localization at Kiwix. This is bad. If the UI is translated with banana I could organize sync with Translatewiki. I would suggest to rethink the priority of this ticket.
from kiwix-js.
Related Issues (20)
- Reduce size of replayWorker by removing wombat and wombat workers
- Do some testing with Zimit 2.0 archives before releasing v4.0 HOT 1
- Deal with ZIM archives that declare a `minorVersion` of 2
- Rename "JQuery mode" to "safe mode"? HOT 5
- Add support for Zimit v2.0 archive types HOT 1
- When a Zimit-based article is opened in a separate tab, external links and PDFs are blocked
- Consider more reliable and stable detection methods for distinguishing zimit classic and zimit2 HOT 5
- Update actions/checkout@v3 to actions/checkout@v4 in GitHub runners
- Add an automated Selenium UI test for a small Zimit2 archive
- Fix URL handling for zimit2 ZIMs in jQuery mode
- When reading Zimit archives, images are inverted by dark theme HOT 3
- Add Table of Contents dropup like in Kiwix PWA HOT 5
- Remove unnecessary space below search bar when screen is narrow HOT 7
- Update info about file and directory picking to include File System Access persistent permissions
- Re-open previous archive if app has permission via persistent permissions, like with Firefox OS
- Use of FSA API and webkitdirectory stores unnecessary keys in localStorage and webkitdirectory fails to clear when new directory is loaded HOT 1
- When using persistent FSA permissions, go straight to article view without showing Config first HOT 1
- Work around the workaround: deal with querystrings in zimit2 ZIMs where the URL separators have been encoded HOT 1
- Possibly work around need to add final slash to root URLs when checking a link clicked by user
- Test if JQuery can be fully removed by upgrading Bootstrap HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kiwix-js.