SlideShare a Scribd company logo
1 of 9
Download to read offline
https://lingohub.com MADE WITH BY LINGOHUB
INTERNATIONALIZATION FOR GETTEXT
GETTEXT i18n SYSTEM
GETTEXT i18n SYSTEM
− Gettext has implementation in almost any programming language
− “The grandfather” of all i18n resource files
− You’ll find a library for using gettext in your application for almost any programming language
− Gettext can be a great choice if you are forced to use different i18n systems and to replace it
with a pervasive solution
https://lingohub.com MADE WITH BY LINGOHUB
⟶ With a tool like LingoHub resource files and syntax won’t matter anymore. LingoHub
supports various resource files and their syntax.
GETTEXT i18n SYSTEM
Gettext offers features your standard system might be missing:
− Pluralization support
− Enumerations
− Different types of comments
− Different types of flags for every segment
https://lingohub.com MADE WITH BY LINGOHUB
GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n
PO (Portable Objects)
− .po files represent the central file format
for using gettext translation
− The files are human readable and
editable text files
− You can split up PO files for different
categorizations
https://lingohub.com MADE WITH BY LINGOHUB
Example PO file
⟶ Read a detailed format description about PHP
internationalization with gettext tutorial on LingoHub!
GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n
PO (Portable Objects)
− Using LingoHub you don’t have to pass your PO files on to your translator.
− Translators don’t have to edit the files. Your files need to be machine readable and follow
a strong syntax
− The file won’t be readable by the gettext system if the person editing the file forgets
about a quote or uses charactersnot allowed by the used character set.
https://lingohub.com MADE WITH BY LINGOHUB
⟶ LingoHub checksthe validity of files at import. Translators use the LingoHub editor for translations.
They no longer have to deal with the syntax of PO files. After finishing translationsyou can export
syntactically correct PO files.
GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n
POT (Portable Object Templates)
− POT have the same structure as PO files, they just contain the keys (“msgid”) of your
translatable content
− Use POT files if you have chosen the strategy that your keys hold texts of your source
language (instead of generic keys)
https://lingohub.com MADE WITH BY LINGOHUB
GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n
POT (Portable Object Templates)
Workflowusing POT files for translations
1. POT files are created by extracting translatable strings
form your source code or CMS.
2. You pass the POT files on to your translators.
3. Your translators import the files into their CAT tool.
4. After translations are finished, translators will create PO
files and send them back.
Workflowusing POT files with LingoHub
− LingoHub allows you to import POT files and export
corresponding PO files. That’s great for starting a
translation project.
− LingoHub offers a feature called Continuous Translation. If
you export-adapt-import your resource files, LingoHub will
detect changes automatically and keep the project in-sync
to your resource files.
https://lingohub.com MADE WITH BY LINGOHUB
GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n
MO (Machine Objects)
− MO files are machine readable representationsof PO files.
− They are smaller in size and valid after creation.
− Using an invalid PO file might break your application. You won’t be able to create an MO
file if the source PO file is incorrect.
− The easiest way to create a MO file is:
https://lingohub.com MADE WITH BY LINGOHUB
msgfmt en.po –o  en.mo
BROUGHT TO YOU BY LINGOHUB
ANJA OBERMÜLLER
BUSINESS DEVELOPMENT& MARKETING AT
LINGOHUB
anja.obermueller@lingohub.com
@LingoHub
@anjaobermueller
Read the whole article.
https://lingohub.com MADE WITH BY LINGOHUB

More Related Content

Viewers also liked

Mobile app localization - markets and opportunities
Mobile app localization - markets and opportunitiesMobile app localization - markets and opportunities
Mobile app localization - markets and opportunitiesLingoHub
 
Software Localization made easy
Software Localization made easySoftware Localization made easy
Software Localization made easyLingoHub
 
Fi levels 3 and 4 2016 to 17
Fi levels 3 and 4 2016 to 17Fi levels 3 and 4 2016 to 17
Fi levels 3 and 4 2016 to 17Diane Chamberlain
 
Tt 58 quy che dg_xl_12_12_2011
Tt 58 quy che  dg_xl_12_12_2011Tt 58 quy che  dg_xl_12_12_2011
Tt 58 quy che dg_xl_12_12_2011Heo Xinh
 
7 tips for going international with your website
7 tips for going international with your website7 tips for going international with your website
7 tips for going international with your websiteLingoHub
 
Prezentacja firmy Pro Progress
Prezentacja firmy Pro ProgressPrezentacja firmy Pro Progress
Prezentacja firmy Pro Progresspaciepny
 
Ruby i18n - internationalization for ruby
Ruby i18n - internationalization for rubyRuby i18n - internationalization for ruby
Ruby i18n - internationalization for rubyLingoHub
 
7 Ways to Promote Your Online Store
7 Ways to Promote Your Online Store7 Ways to Promote Your Online Store
7 Ways to Promote Your Online StoreTrade Only Inc.
 
SEO for multilingual websites
SEO for multilingual websitesSEO for multilingual websites
SEO for multilingual websitesLingoHub
 
Maniobras de muñeca mano y cadera
Maniobras de muñeca mano y caderaManiobras de muñeca mano y cadera
Maniobras de muñeca mano y caderaheadgear45
 
Quemaduras quimicas
Quemaduras quimicasQuemaduras quimicas
Quemaduras quimicasheadgear45
 
Fi levels 5 & AP 2016 to 17 even years
Fi levels 5 & AP 2016 to 17 even yearsFi levels 5 & AP 2016 to 17 even years
Fi levels 5 & AP 2016 to 17 even yearsDiane Chamberlain
 
Fi levels 3 and 4 2016 to 17
Fi levels 3 and 4 2016 to 17Fi levels 3 and 4 2016 to 17
Fi levels 3 and 4 2016 to 17Diane Chamberlain
 
Stripe subscription and VAT handling
Stripe subscription and VAT handlingStripe subscription and VAT handling
Stripe subscription and VAT handlingLingoHub
 
Lean translation management for better results
Lean translation management for better resultsLean translation management for better results
Lean translation management for better resultsLingoHub
 
Preparación (for embedded readings Puedo Ir al bano)
Preparación (for embedded readings Puedo Ir al bano)Preparación (for embedded readings Puedo Ir al bano)
Preparación (for embedded readings Puedo Ir al bano)Diane Chamberlain
 

Viewers also liked (17)

Mobile app localization - markets and opportunities
Mobile app localization - markets and opportunitiesMobile app localization - markets and opportunities
Mobile app localization - markets and opportunities
 
Software Localization made easy
Software Localization made easySoftware Localization made easy
Software Localization made easy
 
Fi levels 3 and 4 2016 to 17
Fi levels 3 and 4 2016 to 17Fi levels 3 and 4 2016 to 17
Fi levels 3 and 4 2016 to 17
 
Tt 58 quy che dg_xl_12_12_2011
Tt 58 quy che  dg_xl_12_12_2011Tt 58 quy che  dg_xl_12_12_2011
Tt 58 quy che dg_xl_12_12_2011
 
7 tips for going international with your website
7 tips for going international with your website7 tips for going international with your website
7 tips for going international with your website
 
Prezentacja firmy Pro Progress
Prezentacja firmy Pro ProgressPrezentacja firmy Pro Progress
Prezentacja firmy Pro Progress
 
Ruby i18n - internationalization for ruby
Ruby i18n - internationalization for rubyRuby i18n - internationalization for ruby
Ruby i18n - internationalization for ruby
 
7 Ways to Promote Your Online Store
7 Ways to Promote Your Online Store7 Ways to Promote Your Online Store
7 Ways to Promote Your Online Store
 
SEO for multilingual websites
SEO for multilingual websitesSEO for multilingual websites
SEO for multilingual websites
 
Sod 14 ppp_27
Sod 14 ppp_27Sod 14 ppp_27
Sod 14 ppp_27
 
Maniobras de muñeca mano y cadera
Maniobras de muñeca mano y caderaManiobras de muñeca mano y cadera
Maniobras de muñeca mano y cadera
 
Quemaduras quimicas
Quemaduras quimicasQuemaduras quimicas
Quemaduras quimicas
 
Fi levels 5 & AP 2016 to 17 even years
Fi levels 5 & AP 2016 to 17 even yearsFi levels 5 & AP 2016 to 17 even years
Fi levels 5 & AP 2016 to 17 even years
 
Fi levels 3 and 4 2016 to 17
Fi levels 3 and 4 2016 to 17Fi levels 3 and 4 2016 to 17
Fi levels 3 and 4 2016 to 17
 
Stripe subscription and VAT handling
Stripe subscription and VAT handlingStripe subscription and VAT handling
Stripe subscription and VAT handling
 
Lean translation management for better results
Lean translation management for better resultsLean translation management for better results
Lean translation management for better results
 
Preparación (for embedded readings Puedo Ir al bano)
Preparación (for embedded readings Puedo Ir al bano)Preparación (for embedded readings Puedo Ir al bano)
Preparación (for embedded readings Puedo Ir al bano)
 

Similar to Gettext i18n system - internationalization for gettext

Easy contributable internationalization process with Sphinx @ pyconsg2015
Easy contributable internationalization process with Sphinx @ pyconsg2015Easy contributable internationalization process with Sphinx @ pyconsg2015
Easy contributable internationalization process with Sphinx @ pyconsg2015Takayuki Shimizukawa
 
Beyond 49x Transformers: Don't be afraid of (the) Python!
Beyond 49x Transformers: Don't be afraid of (the) Python!Beyond 49x Transformers: Don't be afraid of (the) Python!
Beyond 49x Transformers: Don't be afraid of (the) Python!Safe Software
 
Python quick guide1
Python quick guide1Python quick guide1
Python quick guide1Kanchilug
 
I18n design approach for global enterprise platforms
I18n design approach for global enterprise platformsI18n design approach for global enterprise platforms
I18n design approach for global enterprise platformsReddappa Gowd Bandi
 
introduction of python in data science
introduction of python in data scienceintroduction of python in data science
introduction of python in data sciencebhavesh lande
 
Introduction to Python Programming
Introduction to Python ProgrammingIntroduction to Python Programming
Introduction to Python ProgrammingAkhil Kaushik
 
Easy contributable internationalization process with Sphinx @ PyCon APAC 2016
Easy contributable internationalization process with Sphinx @ PyCon APAC 2016Easy contributable internationalization process with Sphinx @ PyCon APAC 2016
Easy contributable internationalization process with Sphinx @ PyCon APAC 2016Takayuki Shimizukawa
 
Interactive Python PPT with animations
Interactive Python PPT with animationsInteractive Python PPT with animations
Interactive Python PPT with animationsShauryaChawla4
 
LingPy : A Python Library for Historical Linguistics
LingPy : A Python Library for Historical LinguisticsLingPy : A Python Library for Historical Linguistics
LingPy : A Python Library for Historical LinguisticsDr. Amit Kumar Jha
 
Introduction to python
Introduction to pythonIntroduction to python
Introduction to pythonMohammed Rafi
 
Mx trans pack_instructions
Mx trans pack_instructionsMx trans pack_instructions
Mx trans pack_instructionsMX Community
 
Internationalizing and localizing wordpress theme
Internationalizing and localizing  wordpress themeInternationalizing and localizing  wordpress theme
Internationalizing and localizing wordpress themeSanjip Shah
 
Sanjip Shah: Internationalizing and Localizing WordPress Themes
Sanjip Shah: Internationalizing and Localizing  WordPress ThemesSanjip Shah: Internationalizing and Localizing  WordPress Themes
Sanjip Shah: Internationalizing and Localizing WordPress Themeswpnepal
 

Similar to Gettext i18n system - internationalization for gettext (20)

Easy contributable internationalization process with Sphinx @ pyconsg2015
Easy contributable internationalization process with Sphinx @ pyconsg2015Easy contributable internationalization process with Sphinx @ pyconsg2015
Easy contributable internationalization process with Sphinx @ pyconsg2015
 
Python Course In Chandigarh
Python Course In ChandigarhPython Course In Chandigarh
Python Course In Chandigarh
 
Beyond 49x Transformers: Don't be afraid of (the) Python!
Beyond 49x Transformers: Don't be afraid of (the) Python!Beyond 49x Transformers: Don't be afraid of (the) Python!
Beyond 49x Transformers: Don't be afraid of (the) Python!
 
Python quick guide1
Python quick guide1Python quick guide1
Python quick guide1
 
Introduction to Python
Introduction to PythonIntroduction to Python
Introduction to Python
 
I18n design approach for global enterprise platforms
I18n design approach for global enterprise platformsI18n design approach for global enterprise platforms
I18n design approach for global enterprise platforms
 
What is python
What is pythonWhat is python
What is python
 
introduction of python in data science
introduction of python in data scienceintroduction of python in data science
introduction of python in data science
 
Introduction to Python Programming
Introduction to Python ProgrammingIntroduction to Python Programming
Introduction to Python Programming
 
Easy contributable internationalization process with Sphinx @ PyCon APAC 2016
Easy contributable internationalization process with Sphinx @ PyCon APAC 2016Easy contributable internationalization process with Sphinx @ PyCon APAC 2016
Easy contributable internationalization process with Sphinx @ PyCon APAC 2016
 
Interactive Python PPT with animations
Interactive Python PPT with animationsInteractive Python PPT with animations
Interactive Python PPT with animations
 
Python
PythonPython
Python
 
LingPy : A Python Library for Historical Linguistics
LingPy : A Python Library for Historical LinguisticsLingPy : A Python Library for Historical Linguistics
LingPy : A Python Library for Historical Linguistics
 
Introduction to python
Introduction to pythonIntroduction to python
Introduction to python
 
Mx trans pack_instructions
Mx trans pack_instructionsMx trans pack_instructions
Mx trans pack_instructions
 
Internationalizing and localizing wordpress theme
Internationalizing and localizing  wordpress themeInternationalizing and localizing  wordpress theme
Internationalizing and localizing wordpress theme
 
Summer Training Project.pdf
Summer Training Project.pdfSummer Training Project.pdf
Summer Training Project.pdf
 
Sanjip Shah: Internationalizing and Localizing WordPress Themes
Sanjip Shah: Internationalizing and Localizing  WordPress ThemesSanjip Shah: Internationalizing and Localizing  WordPress Themes
Sanjip Shah: Internationalizing and Localizing WordPress Themes
 
Php packages
Php packagesPhp packages
Php packages
 
Python Programming.pptx
Python Programming.pptxPython Programming.pptx
Python Programming.pptx
 

Recently uploaded

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 

Recently uploaded (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 

Gettext i18n system - internationalization for gettext

  • 1. https://lingohub.com MADE WITH BY LINGOHUB INTERNATIONALIZATION FOR GETTEXT GETTEXT i18n SYSTEM
  • 2. GETTEXT i18n SYSTEM − Gettext has implementation in almost any programming language − “The grandfather” of all i18n resource files − You’ll find a library for using gettext in your application for almost any programming language − Gettext can be a great choice if you are forced to use different i18n systems and to replace it with a pervasive solution https://lingohub.com MADE WITH BY LINGOHUB ⟶ With a tool like LingoHub resource files and syntax won’t matter anymore. LingoHub supports various resource files and their syntax.
  • 3. GETTEXT i18n SYSTEM Gettext offers features your standard system might be missing: − Pluralization support − Enumerations − Different types of comments − Different types of flags for every segment https://lingohub.com MADE WITH BY LINGOHUB
  • 4. GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n PO (Portable Objects) − .po files represent the central file format for using gettext translation − The files are human readable and editable text files − You can split up PO files for different categorizations https://lingohub.com MADE WITH BY LINGOHUB Example PO file ⟶ Read a detailed format description about PHP internationalization with gettext tutorial on LingoHub!
  • 5. GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n PO (Portable Objects) − Using LingoHub you don’t have to pass your PO files on to your translator. − Translators don’t have to edit the files. Your files need to be machine readable and follow a strong syntax − The file won’t be readable by the gettext system if the person editing the file forgets about a quote or uses charactersnot allowed by the used character set. https://lingohub.com MADE WITH BY LINGOHUB ⟶ LingoHub checksthe validity of files at import. Translators use the LingoHub editor for translations. They no longer have to deal with the syntax of PO files. After finishing translationsyou can export syntactically correct PO files.
  • 6. GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n POT (Portable Object Templates) − POT have the same structure as PO files, they just contain the keys (“msgid”) of your translatable content − Use POT files if you have chosen the strategy that your keys hold texts of your source language (instead of generic keys) https://lingohub.com MADE WITH BY LINGOHUB
  • 7. GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n POT (Portable Object Templates) Workflowusing POT files for translations 1. POT files are created by extracting translatable strings form your source code or CMS. 2. You pass the POT files on to your translators. 3. Your translators import the files into their CAT tool. 4. After translations are finished, translators will create PO files and send them back. Workflowusing POT files with LingoHub − LingoHub allows you to import POT files and export corresponding PO files. That’s great for starting a translation project. − LingoHub offers a feature called Continuous Translation. If you export-adapt-import your resource files, LingoHub will detect changes automatically and keep the project in-sync to your resource files. https://lingohub.com MADE WITH BY LINGOHUB
  • 8. GETTEXT RESOURCE FILE FORMATS AND GETTEXT i18n MO (Machine Objects) − MO files are machine readable representationsof PO files. − They are smaller in size and valid after creation. − Using an invalid PO file might break your application. You won’t be able to create an MO file if the source PO file is incorrect. − The easiest way to create a MO file is: https://lingohub.com MADE WITH BY LINGOHUB msgfmt en.po –o  en.mo
  • 9. BROUGHT TO YOU BY LINGOHUB ANJA OBERMÜLLER BUSINESS DEVELOPMENT& MARKETING AT LINGOHUB anja.obermueller@lingohub.com @LingoHub @anjaobermueller Read the whole article. https://lingohub.com MADE WITH BY LINGOHUB