SlideShare une entreprise Scribd logo
1  sur  26
Télécharger pour lire hors ligne
Bring Drupal 8 to all in
their native languages
SebCorbin
Gábor Hojtsy
Drupal.org session track
First of all...
The main purpose of this talk:
translating the interface of Drupal and
its modules.
➔ Present the current
infrastructure/process
➔ Where we are for D8 support
➔ Make the work of the translators
easier, and more recognized
Localization aka l10n
This is about translating the content of
your Drupal site. Don’t worry, if you
mixed up the subjects, this
presentation may still be useful ;)
Multilingual will happen at 14:15
today, room 117
Internationalization aka i18n
≠
How does it work?
It all started with the t() function
These source strings are extracted from Drupal and its modules
using Potx and are grouped into *.po source files.
$text = t(
"@name's blog",
array('@name' => format_username($account)),
array('context' => 'Verb')
);
Then translate as any open source project does...
These .po source files can be translated with any Translation editor
(e.g. POEdit or https://localise.biz/free/poeditor) and imported back in your
Drupal site to be stored in locale_sources and locale_target tables.
Another option is to use the l10n_client module to directly edit the
translations on your site.
But we are a community, so we have localize.d.o
This site executes Potx on every release that is made on Drupal.org, and offers
a tool far more performant and flexible than a single editor:
● cross releases translations
● cross projects translations
● multiple translation groups handling
● translations reviews
● automatic downloads of translation on your site using the l10n_update
module or Drupal 8 core (yay!)
You and your site
drupal.org
localize.drupal.org
l10n_server connector
ftp.drupal.org
releases.tsv
l10n_packager
l10n_update or D8 core
.po files
The community
potx
l10n_community
+
l10n_groups (og)
l10n_client
l10n_remote
l10n_client
.po files
Great news!
Issue created 01-02-2012
localize.drupal.org is now D7-powered!
Site ported 11-08-2015
Thanks a lot to Gabor Hojtsy, SebCorbin, dashoxa, droplet, hass, Balu Ertl,
podarok, frederickjh, s_leu, laurentchardin
Thank also the Drupal Association: japerry, drumm, basic, opdavies
2nd great news!
Drupal 8 core now ships with automatic
downloads of core and contrib translations
(even during install)
Thanks to Gabor Hojtsy, herom, Sutharsan, miro_dietiker, ksenzee, duaelfr
Some numbers...
Current statistics
■ 112 translation groups
■ 6040 contributors
■ 1 187 443 translations recorded
■ 593 431 strings to translate
■ 364 669 suggestions awaiting approval
■ 1 359 969 files scanned
Developer statistics
■ 8 531 144 lines to match
file/line/type/project/release (1 237 MB)
■ 1 991 389 translated strings input by users
(suggestions or translations)
■ Overall database size: 6 GB
■ l10n_*-related tables : ~3 GB
Our current status
Drupal 8 compatibility is nearly done, 3 issues remaining:
2 criticals:
- Support for Drupal 8 shipped configuration translatables with
external dependencies (affects contrib)
- D8: TranslationWrapper class renamed to TranslatableString
A “minor”:
- Use a more sensible format for Yaml translation pattern
definition.
Potx
All good, now in Drupal 8 core.
The interface of Drupal 8 has been backported to a new 7.x-2.x
branch
l10_update
8.x-1.x : New UX based on Tour module
Main issues:
- Is far off in terms of D8 API
- Won’t highlight variable-based string (wut has fallback)
- Doesn’t actually save/send anything right now
Your help is needed!
l10_client
6.x-3.x: now discontinued, but has a lot of interesting remaining
issues that could get ported
7.x-1.x: now powering localize.d.o, can accept features requests
l10_server
How to improve?
On the Drupal site side, it’s gettings better (l10n_update), but:
■ Localization community needs more recognition
We need gamification by statistics, badges, ...
■ Infrastructure handling more and more strings
Need to archive old data, be able to identify old strings, improve search performance
■ Translation interface needs a revamp
Why not translate in apps like l10n_client?
■ The community aspects needs a push
Activity streams, glossary handling
An example: Transifex
■ Dead-simple interface (AJAX)
■ Fast, visual search
■ Suggestions, history, glossary,
comments on strings
■ Mass review, search & replace
■ Activity stream, announcements
Glossary
■ Currently an external French site
■ Votes on glossary suggestions
■ Exported via JSON
■ Displayed on localize.drupal.org
https://docs.google.
com/spreadsheets/d/1AvuH8HfBxSx1SPmFIGs6Ue1hmDoVbMWKs
cWi_qY6_yE/edit#gid=0
Questions?
Reactions?
Sprint: Friday
https://www.flickr.
com/photos/amazeelabs/9965814443/in/fav
es-38914559@N03/
Sprint with the Community on Friday.
We have tasks for every skillset.
Mentors are available for new contributors.
An optional Friday morning workshop for
first-time sprinters will help you get set up.
Follow @drupalmentoring.
Bring drupal 8 to all in their native languages

Contenu connexe

En vedette

Query Store and live Query Statistics
Query Store and live Query StatisticsQuery Store and live Query Statistics
Query Store and live Query StatisticsSolidQ
 
تعليم الخبرات
 تعليم الخبرات تعليم الخبرات
تعليم الخبراتOsama Madbooly
 
Implementing Mobile Reports in SQL Sserver 2016 Reporting Services
Implementing Mobile Reports in SQL Sserver 2016 Reporting ServicesImplementing Mobile Reports in SQL Sserver 2016 Reporting Services
Implementing Mobile Reports in SQL Sserver 2016 Reporting ServicesAntonios Chatzipavlis
 
Dynamic data masking sql server 2016
Dynamic data masking sql server 2016Dynamic data masking sql server 2016
Dynamic data masking sql server 2016Antonios Chatzipavlis
 
Performance appraisal
Performance appraisalPerformance appraisal
Performance appraisalVishy Vincent
 

En vedette (9)

Query Store and live Query Statistics
Query Store and live Query StatisticsQuery Store and live Query Statistics
Query Store and live Query Statistics
 
EXPERIENCED MANPOWER SOLUTION
EXPERIENCED MANPOWER SOLUTIONEXPERIENCED MANPOWER SOLUTION
EXPERIENCED MANPOWER SOLUTION
 
تعليم الخبرات
 تعليم الخبرات تعليم الخبرات
تعليم الخبرات
 
Accent Chairs
Accent ChairsAccent Chairs
Accent Chairs
 
Implementing Mobile Reports in SQL Sserver 2016 Reporting Services
Implementing Mobile Reports in SQL Sserver 2016 Reporting ServicesImplementing Mobile Reports in SQL Sserver 2016 Reporting Services
Implementing Mobile Reports in SQL Sserver 2016 Reporting Services
 
Dynamic data masking sql server 2016
Dynamic data masking sql server 2016Dynamic data masking sql server 2016
Dynamic data masking sql server 2016
 
Performance appraisal
Performance appraisalPerformance appraisal
Performance appraisal
 
Food Label Reading
Food Label ReadingFood Label Reading
Food Label Reading
 
Exploring sql server 2016
Exploring sql server 2016Exploring sql server 2016
Exploring sql server 2016
 

Similaire à Bring drupal 8 to all in their native languages

Drupal 8 preview_slideshow
Drupal 8 preview_slideshowDrupal 8 preview_slideshow
Drupal 8 preview_slideshowTee Malapela
 
Drupal for Higher Education and Virtual Learning
Drupal for Higher Education and Virtual LearningDrupal for Higher Education and Virtual Learning
Drupal for Higher Education and Virtual LearningGabriel Dragomir
 
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?Wong Hoi Sing Edison
 
Drupal 8 Initiatives
Drupal 8 InitiativesDrupal 8 Initiatives
Drupal 8 InitiativesAngela Byron
 
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...Eric Sembrat
 
Stuff we do with OSS in libraries (Bergen, 2009)
Stuff we do with OSS in libraries (Bergen, 2009)Stuff we do with OSS in libraries (Bergen, 2009)
Stuff we do with OSS in libraries (Bergen, 2009)Nicolas Morin
 
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Chipway
 
Drupal 7 Release Party - Yogyakarta
Drupal 7 Release Party - YogyakartaDrupal 7 Release Party - Yogyakarta
Drupal 7 Release Party - YogyakartaRoy Gunawan
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Acquia
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Angela Byron
 
Ask Us Anything: Dries Buytaert and Team Tell All on Drupal 8
Ask Us Anything: Dries Buytaert and Team Tell All on Drupal 8Ask Us Anything: Dries Buytaert and Team Tell All on Drupal 8
Ask Us Anything: Dries Buytaert and Team Tell All on Drupal 8Acquia
 
Drupal 8 - Build Week Update
Drupal 8 - Build Week UpdateDrupal 8 - Build Week Update
Drupal 8 - Build Week UpdateAngela Byron
 
PPPA D8 presentation Drupal For Gov_0
PPPA D8 presentation Drupal For Gov_0PPPA D8 presentation Drupal For Gov_0
PPPA D8 presentation Drupal For Gov_0Stan Ascher
 
A Quick Look at Drupal
A Quick Look at DrupalA Quick Look at Drupal
A Quick Look at Drupalsheenadonnelly
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Jay Epstein
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Jay Epstein
 
Decoupled drupal DcRuhr
Decoupled drupal DcRuhrDecoupled drupal DcRuhr
Decoupled drupal DcRuhrAhmad Hassan
 
Lazy Coder Camp Edition 1
Lazy Coder Camp Edition 1Lazy Coder Camp Edition 1
Lazy Coder Camp Edition 1phpfactory
 
[drupalday2017] - Decoupled frontend con Drupal 8 e OpenUI 5
[drupalday2017] - Decoupled frontend con Drupal 8 e OpenUI 5[drupalday2017] - Decoupled frontend con Drupal 8 e OpenUI 5
[drupalday2017] - Decoupled frontend con Drupal 8 e OpenUI 5DrupalDay
 

Similaire à Bring drupal 8 to all in their native languages (20)

Drupal7 multilingual
Drupal7 multilingualDrupal7 multilingual
Drupal7 multilingual
 
Drupal 8 preview_slideshow
Drupal 8 preview_slideshowDrupal 8 preview_slideshow
Drupal 8 preview_slideshow
 
Drupal for Higher Education and Virtual Learning
Drupal for Higher Education and Virtual LearningDrupal for Higher Education and Virtual Learning
Drupal for Higher Education and Virtual Learning
 
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
 
Drupal 8 Initiatives
Drupal 8 InitiativesDrupal 8 Initiatives
Drupal 8 Initiatives
 
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
 
Stuff we do with OSS in libraries (Bergen, 2009)
Stuff we do with OSS in libraries (Bergen, 2009)Stuff we do with OSS in libraries (Bergen, 2009)
Stuff we do with OSS in libraries (Bergen, 2009)
 
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
 
Drupal 7 Release Party - Yogyakarta
Drupal 7 Release Party - YogyakartaDrupal 7 Release Party - Yogyakarta
Drupal 7 Release Party - Yogyakarta
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8
 
Ask Us Anything: Dries Buytaert and Team Tell All on Drupal 8
Ask Us Anything: Dries Buytaert and Team Tell All on Drupal 8Ask Us Anything: Dries Buytaert and Team Tell All on Drupal 8
Ask Us Anything: Dries Buytaert and Team Tell All on Drupal 8
 
Drupal 8 - Build Week Update
Drupal 8 - Build Week UpdateDrupal 8 - Build Week Update
Drupal 8 - Build Week Update
 
PPPA D8 presentation Drupal For Gov_0
PPPA D8 presentation Drupal For Gov_0PPPA D8 presentation Drupal For Gov_0
PPPA D8 presentation Drupal For Gov_0
 
A Quick Look at Drupal
A Quick Look at DrupalA Quick Look at Drupal
A Quick Look at Drupal
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7
 
Decoupled drupal DcRuhr
Decoupled drupal DcRuhrDecoupled drupal DcRuhr
Decoupled drupal DcRuhr
 
Lazy Coder Camp Edition 1
Lazy Coder Camp Edition 1Lazy Coder Camp Edition 1
Lazy Coder Camp Edition 1
 
[drupalday2017] - Decoupled frontend con Drupal 8 e OpenUI 5
[drupalday2017] - Decoupled frontend con Drupal 8 e OpenUI 5[drupalday2017] - Decoupled frontend con Drupal 8 e OpenUI 5
[drupalday2017] - Decoupled frontend con Drupal 8 e OpenUI 5
 

Dernier

Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm Systemirfanmechengr
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxsiddharthjain2303
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHC Sai Kiran
 
National Level Hackathon Participation Certificate.pdf
National Level Hackathon Participation Certificate.pdfNational Level Hackathon Participation Certificate.pdf
National Level Hackathon Participation Certificate.pdfRajuKanojiya4
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating SystemRashmi Bhat
 
Internet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxInternet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxVelmuruganTECE
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleAlluxio, Inc.
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfAsst.prof M.Gokilavani
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating SystemRashmi Bhat
 
The SRE Report 2024 - Great Findings for the teams
The SRE Report 2024 - Great Findings for the teamsThe SRE Report 2024 - Great Findings for the teams
The SRE Report 2024 - Great Findings for the teamsDILIPKUMARMONDAL6
 
Vishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documentsVishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documentsSachinPawar510423
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Transport layer issues and challenges - Guide
Transport layer issues and challenges - GuideTransport layer issues and challenges - Guide
Transport layer issues and challenges - GuideGOPINATHS437943
 
Indian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptIndian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptMadan Karki
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxRomil Mishra
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...VICTOR MAESTRE RAMIREZ
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substationstephanwindworld
 

Dernier (20)

Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm System
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptx
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECH
 
National Level Hackathon Participation Certificate.pdf
National Level Hackathon Participation Certificate.pdfNational Level Hackathon Participation Certificate.pdf
National Level Hackathon Participation Certificate.pdf
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating System
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
Internet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxInternet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptx
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at Scale
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating System
 
The SRE Report 2024 - Great Findings for the teams
The SRE Report 2024 - Great Findings for the teamsThe SRE Report 2024 - Great Findings for the teams
The SRE Report 2024 - Great Findings for the teams
 
Vishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documentsVishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documents
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Transport layer issues and challenges - Guide
Transport layer issues and challenges - GuideTransport layer issues and challenges - Guide
Transport layer issues and challenges - Guide
 
POWER SYSTEMS-1 Complete notes examples
POWER SYSTEMS-1 Complete notes  examplesPOWER SYSTEMS-1 Complete notes  examples
POWER SYSTEMS-1 Complete notes examples
 
Indian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptIndian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.ppt
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptx
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substation
 

Bring drupal 8 to all in their native languages

  • 1.
  • 2. Bring Drupal 8 to all in their native languages SebCorbin Gábor Hojtsy Drupal.org session track
  • 3. First of all... The main purpose of this talk: translating the interface of Drupal and its modules. ➔ Present the current infrastructure/process ➔ Where we are for D8 support ➔ Make the work of the translators easier, and more recognized Localization aka l10n This is about translating the content of your Drupal site. Don’t worry, if you mixed up the subjects, this presentation may still be useful ;) Multilingual will happen at 14:15 today, room 117 Internationalization aka i18n ≠
  • 4. How does it work?
  • 5. It all started with the t() function These source strings are extracted from Drupal and its modules using Potx and are grouped into *.po source files. $text = t( "@name's blog", array('@name' => format_username($account)), array('context' => 'Verb') );
  • 6. Then translate as any open source project does... These .po source files can be translated with any Translation editor (e.g. POEdit or https://localise.biz/free/poeditor) and imported back in your Drupal site to be stored in locale_sources and locale_target tables. Another option is to use the l10n_client module to directly edit the translations on your site.
  • 7. But we are a community, so we have localize.d.o This site executes Potx on every release that is made on Drupal.org, and offers a tool far more performant and flexible than a single editor: ● cross releases translations ● cross projects translations ● multiple translation groups handling ● translations reviews ● automatic downloads of translation on your site using the l10n_update module or Drupal 8 core (yay!)
  • 8. You and your site drupal.org localize.drupal.org l10n_server connector ftp.drupal.org releases.tsv l10n_packager l10n_update or D8 core .po files The community potx l10n_community + l10n_groups (og) l10n_client l10n_remote l10n_client .po files
  • 9. Great news! Issue created 01-02-2012 localize.drupal.org is now D7-powered! Site ported 11-08-2015 Thanks a lot to Gabor Hojtsy, SebCorbin, dashoxa, droplet, hass, Balu Ertl, podarok, frederickjh, s_leu, laurentchardin Thank also the Drupal Association: japerry, drumm, basic, opdavies
  • 10. 2nd great news! Drupal 8 core now ships with automatic downloads of core and contrib translations (even during install) Thanks to Gabor Hojtsy, herom, Sutharsan, miro_dietiker, ksenzee, duaelfr
  • 12. Current statistics ■ 112 translation groups ■ 6040 contributors ■ 1 187 443 translations recorded ■ 593 431 strings to translate ■ 364 669 suggestions awaiting approval ■ 1 359 969 files scanned
  • 13. Developer statistics ■ 8 531 144 lines to match file/line/type/project/release (1 237 MB) ■ 1 991 389 translated strings input by users (suggestions or translations) ■ Overall database size: 6 GB ■ l10n_*-related tables : ~3 GB
  • 15. Drupal 8 compatibility is nearly done, 3 issues remaining: 2 criticals: - Support for Drupal 8 shipped configuration translatables with external dependencies (affects contrib) - D8: TranslationWrapper class renamed to TranslatableString A “minor”: - Use a more sensible format for Yaml translation pattern definition. Potx
  • 16. All good, now in Drupal 8 core. The interface of Drupal 8 has been backported to a new 7.x-2.x branch l10_update
  • 17. 8.x-1.x : New UX based on Tour module Main issues: - Is far off in terms of D8 API - Won’t highlight variable-based string (wut has fallback) - Doesn’t actually save/send anything right now Your help is needed! l10_client
  • 18. 6.x-3.x: now discontinued, but has a lot of interesting remaining issues that could get ported 7.x-1.x: now powering localize.d.o, can accept features requests l10_server
  • 20. On the Drupal site side, it’s gettings better (l10n_update), but: ■ Localization community needs more recognition We need gamification by statistics, badges, ... ■ Infrastructure handling more and more strings Need to archive old data, be able to identify old strings, improve search performance ■ Translation interface needs a revamp Why not translate in apps like l10n_client? ■ The community aspects needs a push Activity streams, glossary handling
  • 21. An example: Transifex ■ Dead-simple interface (AJAX) ■ Fast, visual search ■ Suggestions, history, glossary, comments on strings ■ Mass review, search & replace ■ Activity stream, announcements
  • 22. Glossary ■ Currently an external French site ■ Votes on glossary suggestions ■ Exported via JSON ■ Displayed on localize.drupal.org
  • 25. Sprint: Friday https://www.flickr. com/photos/amazeelabs/9965814443/in/fav es-38914559@N03/ Sprint with the Community on Friday. We have tasks for every skillset. Mentors are available for new contributors. An optional Friday morning workshop for first-time sprinters will help you get set up. Follow @drupalmentoring.