Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify multi-language support #725

Closed
MaxXor opened this issue May 7, 2018 · 14 comments
Closed

Simplify multi-language support #725

MaxXor opened this issue May 7, 2018 · 14 comments

Comments

@MaxXor
Copy link
Contributor

MaxXor commented May 7, 2018

The current multi-language support is hard to maintain and gets out of sync very fast. A good example how easy it can be implemented in Jekyll can be seen in bitcoinxt/website#51. I propose that we adapt this to make it less error-prone to update or add pages to the website.

They use jekyll-multiple-languages-plugin and have one layout for all languages which contain placeholders like {% t page.title %}. Beside that the language files are simple .yml-files which contain the translated strings.

This issue can be used to track progress on simplifying multi-language support.

@el00ruobuob
Copy link
Contributor

I'm totally in it.
But hasn't @rehrar tried to go this way already? And found a lot of issues / complications?

@MaxXor
Copy link
Contributor Author

MaxXor commented May 7, 2018

@el00ruobuob He mentioned it a while ago, I don't remember the exact details though... (maybe @rehrar could list the complications here for an overview) Well, I'm sure we can find solutions for it or at least live with trade-offs. It has to be simplified imho or no one wants to keep the website up-to-date sooner or later.

@rehrar
Copy link
Contributor

rehrar commented May 8, 2018

Yes, some things were broken at that time, but...some things are broken now. :P With jekyll there is no good way to do this, so if things will be broken no matter what, it's probably best to implement it the way you guys are suggesting.

Edit: The big issue is, not all languages are easy to work with. Heck, some read right to left. And with the ones we have there was already cases of things breaking. I'll have to do a full website audit and overhaul for resilience and to implement the new stuff. I'll get started on that this week.

@MaxXor
Copy link
Contributor Author

MaxXor commented May 9, 2018

@rehrar Nonetheless I think this is the right decision to do. I think we can fix the languages which read right-to-left later, maybe even with the plugin authors. Thanks for your work, I'll try to help where I can.

@rehrar
Copy link
Contributor

rehrar commented May 9, 2018

After looking at the site, the portions of the site that are not broken up into snippets (such as Guides) should remain as they are, as this will ultimately be the easier translating experience. All the other sectioned portions can be changed over to the new way.

@rehrar
Copy link
Contributor

rehrar commented May 9, 2018

It occurs to me that with this method, it becomes much more difficult to put the untranslated snippet in the pages. The website is actually quite complex with all of the things it has, and I'll need to think about how to do all of the little teeny things.

@MaxXor
Copy link
Contributor Author

MaxXor commented May 9, 2018

Untranslated snippets should have the value copied from the english translation. We can split up the work and everyone who wants to help does a few pages.

@rehrar
Copy link
Contributor

rehrar commented May 9, 2018

I meant the thing on the bottom of the untranslated pages that says 'This page is not yet translated blah blah blah'.

@MaxXor
Copy link
Contributor Author

MaxXor commented May 9, 2018

Maybe just remove it altogether and just display the page in english.

@rehrar
Copy link
Contributor

rehrar commented May 9, 2018

From a UX perspective it's pretty important. It can confuse a user who thinks they may have navigated to the wrong page by accident. I'll see if I can't make something work with the new way of doing things somehow.

@el00ruobuob
Copy link
Contributor

el00ruobuob commented May 18, 2018

@rehrar why not keeping/adding a localized page with only the snippet and an included content then?

{% include untranslated.html %}
{% include html-content.html %}

This md file will be just a bridge between html and localization to include the snippet.

@el00ruobuob
Copy link
Contributor

el00ruobuob commented May 18, 2018

Great minds think alike @rehrar.
I wonder if we should add a

translated: yes / no / partially

Statement in yml and use it with a {% if ... elseif ... %} to display (or not) the untranslated message, even a different message for partial translation, and moreover tell the world not to touch those md files, and only work on the yml.

@erciccione
Copy link
Contributor

This can be closed since #744 was merged

+resolved

@erciccione
Copy link
Contributor

I'm sorry @MaxXor i just noticed maybe you wanted to keep this open

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants