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

Add translation support #103

Closed
JackMorganNZ opened this issue Mar 12, 2017 · 1 comment
Closed

Add translation support #103

JackMorganNZ opened this issue Mar 12, 2017 · 1 comment
Assignees
Labels
backend Related to the software powering the website documentation internationalization Related to translating the website

Comments

@JackMorganNZ
Copy link
Member

JackMorganNZ commented Mar 12, 2017

Overview

The CS Unplugged website should handle translations (see Django guide on translation).

Details

Online system for community translations

I have already narrowed it down to two systems for easily managing translations:

Research will be required to pick the best system to use.

Types of content to translate

There is two types of text that needs to be translated:

  1. System strings: Text that is used in HTML templates, resources, etc. The translation files (.po and .mo) can be automatically generated and retrieved by Django.
  2. Content strings: Text found in files in the topics/content folder (within Markdown files).

The second type of text requires some thought on how to easily translate this material. Two possible solutions that are worth investigating (could be many more):

  1. Each language has it's own folder within the topics/content/ folder. This was our initial approach, and Add locale property to models, reading of translated data in load scripts, and retrieving of models based off locale #47 was to implement locale property on models, reading of translated data in load scripts, and retrieving of models based off locale. Downsides include:

    • Custom tracking of how updated a file is.

    • Translations would be inputted on two systems (Crowdin/Transifex and Github).

  2. Create script that creates message files from content files (see Django docs and Babel). This would allow all content to be translated in the one place. Would need to research if message files are generated before or after Verto translation. Downsides include:

    • May be difficult to parse translatable strings (this may need to be a feature within Verto).

Summary

This issue will require:

  • Decision on translation system.
  • Configuring of Django settings regarding internationalization.
  • Adding documentation.
  • Allowing manual changing of language on website.
@JackMorganNZ JackMorganNZ added backend Related to the software powering the website documentation internationalization Related to translating the website labels Mar 12, 2017
@JackMorganNZ JackMorganNZ changed the title Add easy content translation and supporting documentation Add translation support Jul 25, 2017
@jordangriffiths01
Copy link
Contributor

Translations are now supported, with most of the implementation occuring in #680. Any outstanding work still required is tracked in separate issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend Related to the software powering the website documentation internationalization Related to translating the website
Development

No branches or pull requests

2 participants