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

Internationalization / i18n / multilingual site #68

Open
benbalter opened this issue Jul 25, 2013 · 43 comments
Open

Internationalization / i18n / multilingual site #68

benbalter opened this issue Jul 25, 2013 · 43 comments

Comments

@benbalter
Copy link
Contributor

Would love to see about baking in I18N support to choosealicense.com proper. See #67 and #62

We already have the bulk of the strings in a single file (_config.yml), so it should just be a matter of abstracting out some of our variables, as far as I can tell.

Would love to take this on starting in August if there's interest. Would be a great exercise to set a standard for Jekyll L10N, and can iterate on some of the lessons learned form https://github.com/CMSgov/healthcare.gov.

@parkr any interest?
@dhcole any insight / words of wisdom?

This was referenced Jul 25, 2013
@liks79
Copy link

liks79 commented Jul 26, 2013

It's really good!
I hope 'choosealicense.com' support I18N.
It is very valuable work for open source beginner!

@weakish
Copy link
Contributor

weakish commented Jul 26, 2013

@parkr any interest?

@parkr was not interested in supporting i18N in Jekyll core.

@parkr
Copy link

parkr commented Jul 26, 2013

This looks like a great candidate for use of the _data directory proposed by @benbalter in jekyll/jekyll#1003.

@weakish
Copy link
Contributor

weakish commented Oct 29, 2013

Just using subdomain?

A quick and simple (maybe not very elegant approach) is just using subdomains (with separate repositories) .

For example:

  • Korean: http://ko.choosealicense.com
  • Chinese: http://zh.choosealicense.com

Thus, we only need to make sure that:

  • Translated sites and main site should link to each other.
  • github/{lang}.choosealicense.com has the proper CNAME file (and the related DNS Zone configurations)

Done.

And in future we can switch to a more elegant solution once Jekyll has better support of I18N.

@parkr
Copy link

parkr commented Oct 29, 2013

It'd be way easier to handle if everything were in one repo and simply to ship every translation under /LOCALE/ (e.g. /en/, /ko/) with pages for each. It's a lot of duplications, but right now it is the best option, given that Jekyll has no means of handling this.

@haacked
Copy link
Contributor

haacked commented Oct 29, 2013

@parkr Yeah, I'm kind of leaning towards that approach. @benbalter seem good to you?

@liks79
Copy link

liks79 commented Oct 30, 2013

How about using URI separation? (http://choosealicense.com/{lang})

Fo example :

  • Korean : http://choosealicense.com/ko
  • Chinese: http://choosealicense.com/zh

@parkr
Copy link

parkr commented Oct 30, 2013

@liks79 That's exactly what I was proposing. :)

@liks79
Copy link

liks79 commented Oct 30, 2013

@parkr Oh... I'm sorry ;) That's a good idea! Thanks!

@haacked
Copy link
Contributor

haacked commented Oct 30, 2013

Ok, just need someone to send a PR with at least one translated language. :)

@liks79
Copy link

liks79 commented Oct 30, 2013

@haacked

Ok, The die has been cast! =)

@weakish
Copy link
Contributor

weakish commented Oct 30, 2013

@liks79 It seems that some js files assumes resources are located in the root directory, thus simply moving all translated files to a sub directory will fail. I cannot speak javascript. If you've finished Korean translation, please @me, so I can just use your modifications.

@weakish
Copy link
Contributor

weakish commented Nov 16, 2013

@haacked @benbalter @parkr @liks79 I have made a base for translations, please review my pull request.

@liks79
Copy link

liks79 commented Nov 27, 2013

@weakish @haacked @parkr @benbalter

#131
It is a good reference implementation for I18N.
I'll try to apply it for translation for Korean.

But, I am afraid too that copying HTML files...

@kidchenko
Copy link

Hi, I would like to contribute to the implementation of I18N. You need help?

I am web developer from Brazil. Here not lot speak English for this reason many people have benefited from the translation.

I can start and send a PR?

@Vdragon
Copy link

Vdragon commented Mar 10, 2015

Hi,
I would like to contribute Traditional Chinese(Taiwan) version of this great site!

@ionas
Copy link

ionas commented Apr 9, 2016

  • The issue is not a technical one but one of keeping stuff up to date.
  • To have languages you will need tagged revisions of the page. Then you can link a revision (and available translation).
  • It will also slow down revisions. So I'd rather see the dust settle more around what the site should actually show.

@mlinksva
Copy link
Contributor

I'm very interested in making this happen but have yet to digest the various possible approaches. Self-assigning for now as a reminder to do that digesting.

@mlinksva mlinksva self-assigned this Apr 11, 2016
@mlinksva
Copy link
Contributor

mlinksva commented Apr 15, 2016

In https://github.com/github/choosealicense.com/network/members I noticed a couple translations through forks published on separate websites:

Glad people were motivated to do this and totally fine if they want to run their own sites, but probably a pain to keep up to date (if they want to do that).

@mlinksva
Copy link
Contributor

The Jekyll no-plugin i18n solution being worked on in github/opensource.guide#295 for a related site may eventually be applicable here. Watch that if you're interested.

@lqez
Copy link
Contributor

lqez commented Sep 12, 2017

@mlinksva any updates? I'm interested in this issue for translating into Korean.
If anyone can suggest a right way to make this I18N, we can do it together.

@mlinksva
Copy link
Contributor

@lqez thanks for the ping! I was waiting to see a completed and deployed translation of github/open-source-guide to dig into how that is done and see whether it is the best way forward here. Looks like there's one that is close.

If you're super eager to get started and don't mind maybe reorganizing things later, feel free to fork the repo and translate everything in place like a couple others have done (fr and pt-BR) mentioned above.

@JafarAkhondali
Copy link

@mlinksva @benbalter
Hi, thanks for you amazing job. We wanted to do the exact thing you have done in Persian until i saw your website so we planned to do the localization only and get a domain (thanks to you). As you know the problem is the lacking of translation files and making the forked repository update, So is it possible for you to give us a more accurate deadline for adding support for I18n?
Thanks in advance 👍

@mlinksva
Copy link
Contributor

@JafarAkhondali thanks, really appreciate your interest. 🎉 Unfortunately, the most accurate statement about a deadline is that there isn't one. I do promise to look into whether we can copy the mechanism being used for opensource.guide translations once a completed one is deployed.

Another way to help now, other than forking and translating in place, which I admit isn't ideal, would be to do an advance evaluation of the mechanism described at github/opensource.guide#295

@JafarAkhondali
Copy link

@mlinksva Sorry for late response, I've read your provided link, They use Crowdin to sync GitHub with Crowdin using a CLI script but we don't that anymore since crowding created Integration with GitHub.
I've also found another reference for multilangugae website in Github pages with Jekyll. So using these two i almost created a multi language page but lack of experience in Ruby & Jekyll turned me down. Here is what i did:

Before beginning, I think(not sure) it's better ta rename all translateable files from file.extension to file-en.extension

  1. Create a project in crowdin
  2. Integrate project with Github
  3. Choose branch, and config files to translate, here is a sample config for this project(It's not accurate, just for the test)
    screenshot_20171010_033833
  4. Translate a file, then go to Integration tabs and press Sync now to sync project with github. It'll create a PR for translation files. With crowdin all translators can help translations easily.
  5. Use this guide to configure a multi language website.

@mlinksva mlinksva mentioned this issue Oct 31, 2017
@mlinksva
Copy link
Contributor

mlinksva commented Dec 6, 2017

Ran across recent Spanish translation not in forks network: https://github.com/Eligelicencia/eligeUnaLicencia

@bluemix
Copy link

bluemix commented Jan 14, 2018

any updates?

@mlinksva
Copy link
Contributor

Micro-update: @bkeepers pointed out https://github.com/electron/electron-i18n (internationalization for another GitHub-maintained site) to me ... I haven't gotten around to see what it would take to set up that arrangement for this project yet, but it's on my list to evaluate. Thoughts and hints welcome.

@mlinksva
Copy link
Contributor

Another micro-update: some translations of opensource.guide are now live (scroll to the bottom at that link for a chooser) using a simpler approach than referred to above http://mikemcquaid.com/2018/02/14/translations-with-rails-and-jekyll/ is a personal blog post about how it was done and why.

I hope to see whether this approach will work for choosealicense.com soon, but as usual any thoughts welcome.

@katrinleinweber
Copy link

Hello! I can't speak to the technical details, but once the "gates open" so to speak, I'd be happy to start the German version :-)

@lqez
Copy link
Contributor

lqez commented Oct 1, 2018

It looks like https://github.com/github/opensource.guide could be a good example of how Jekyll page translated.

@mlinksva
Copy link
Contributor

mlinksva commented Oct 1, 2018

@lqez yes there's a start on that in #586 ... I haven't had a chance to look at it since August but hope to come back to it soon.

@wizardbyron
Copy link

Come on, this discussion has taken for years. Let's close it and make it work first Please!
BTW, The Chinese translation isn't available any more.
Is there anything I can help ?

@mlinksva
Copy link
Contributor

Apologies, I simply haven't gotten back to #586 yet, but aim to.

It looks like the Chinese content is still in #72 but that was from 2013; I imagine lots of strings have changed since then.

@wizardbyron
Copy link

Apologies, I simply haven't gotten back to #586 yet, but aim to.

It looks like the Chinese content is still in #72 but that was from 2013; I imagine lots of strings have changed since then.

Thanks for reply, I found the Chinese content is hosting on http://choosealicense.online/

@victorwestmann
Copy link

Just found out that the Brazilian Portuguese version of it already exists and it is available in the address http://escolhaumalicenca.com.br/ 💚💛

@mlinksva mlinksva changed the title I18N Internationalization / i18n / multilingual site Mar 12, 2021
@faloi
Copy link

faloi commented Jul 3, 2021

Any updates on this one? I'd like to contribute with the Spanish translation. 😄 🇦🇷

@LoganTann
Copy link

Any update in this issue ? It's opened since 2013, and I'd love to see a french translation of this website !

@mlinksva
Copy link
Contributor

mlinksva commented Oct 9, 2021

Thanks for the ping @LoganTann. Nothing concrete, though totally coincidentally a couple days ago a colleague and I discussed pairing on this, so please continue to watch this issue and thanks for your patience.

@samusz
Copy link

samusz commented Mar 8, 2022

So how should go about starting a translation, eg for the French language ?

Licence issues need to get wider audience ; I believe l10n of this project is a good way to
start this process.

@tinhbao789
Copy link

Good

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

No branches or pull requests