github-education-resources / classroom

GitHub Classroom automates repository creation and access control, making it easy for teachers to distribute starter code and collect assignments on GitHub.
https://classroom.github.com
1.34k stars 565 forks source link

Internationalization roadmap #662

Closed ghost closed 7 years ago

ghost commented 8 years ago

As discussed in #308, this issue provides a roadmap to the project internationalization at all. Before add any new language inside classroom, the strings will be fully replaced by I18n keys. Each of the following changes needs to generate one pull request, this atomicity will make easier the code review, testing, tracking and collaboration on it.

Milestone 1: String to key replacing at views

In this milestone, we'll replace the strings on all classroom views, including the staff tools area.

In this milestone, we'll replace the strings that are located on controllers flash messages.

ghost commented 8 years ago

@tarebyte I made a draft about the internationalization roadmap. I'm still concerned of any text generated by a external library that could be prompted at the screen. Could you take a look on it?

tarebyte commented 8 years ago

I'm still concerned of any text generated by a external library that could be prompted at the screen. Could you take a look on it?

@fabriciojr I think the best course of action here would be to crowd source the translations and avoid using a gem.

I think this guide http://guides.rubyonrails.org/i18n.html should give us a good starting place.

ghost commented 8 years ago

@tarebyte I think you misunderstood it, I wasn't thinking about using a gem, there's no good reason for it. My concern was about any text coming from external gems or JS libraries. Did you get it?

tarebyte commented 8 years ago

@fabriciojr oh I understand what you're saying. There is only once place where external next would come from and that is the repository auto completer.

For the most part we wrap the errors ourselves from the GitHub API.

ghost commented 8 years ago

@tarebyte Thanks for the two cents. I'll keep working on it. Can you assign this issue to me?

tarebyte commented 8 years ago

@fabriciojr unfortunately I can't because you aren't apart of the Education organization nor are you an outside collaborator. Sorry about that.

ghost commented 8 years ago

@tarebyte No problem, I'm going to start coding here. 😄

CGA1123 commented 8 years ago

Is there any work being done on this?

I'd be happy to start picking off some of these objectives.

jiteshjha commented 8 years ago

Hi! I've worked on I18n in Google Summer of Code this year and I would love to help in the internationalization process! :smile:

tarebyte commented 8 years ago

@jiteshjha @CGA1123 feel free! Pull Requests are always welcomed 😄

CGA1123 commented 8 years ago

What file structure should be used for holding the translation strings?

|-views
|---shared
|-----en.yml
|---pages
|-----en.yml

(similar structure as mentioned here) Does something along those lines look reasonable?

Sticking with a single en.yml in config/locales doesn't seem like the best approach.

tarebyte commented 8 years ago

@CGA1123 I want to stick to the Rails convention to reduce the overhead for other people who work on this later.

Reference: http://guides.rubyonrails.org/i18n.html

stale[bot] commented 7 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

nwoodthorpe commented 7 years ago

Shoo probot

stale[bot] commented 7 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.