Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
i18n & l10n
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Mikhail Kashkin
May 20, 2015
Technology
120
0
Share
i18n & l10n
Интернационализация и локализация сайтов и приложений
Mikhail Kashkin
May 20, 2015
More Decks by Mikhail Kashkin
See All by Mikhail Kashkin
Python Blockchain Development
xen
1
67
Получение, обработка и визуализация открытых данных
xen
0
200
Data-driven marketing
xen
0
140
Flask API backend
xen
3
430
PechaKucha Днепропетровск
xen
0
60
Other Decks in Technology
See All in Technology
ルールルルルル私的函館観光ガイド── 函館の街はイクラでも楽しめる!
nomuson
0
180
仕様通り動くの先へ。Claude Codeで「使える」を検証する
gotalab555
9
3.3k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
5
14k
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」ご紹介資料
laysakura
0
1.7k
申請待ちゼロへ!AWS × Entra IDで実現した「権限付与」のセルフサービス化
mhrtech
2
290
Bluesky Meetup in Tokyo vol.4 - 2023to2026
shinoharata
0
180
BigQuery × dbtでコスト削減した話
rightcode
0
110
AIがコードを書く時代の ジェネレーティブプログラミング
polidog
PRO
3
720
ADOTで始めるサーバレスアーキテクチャのオブザーバビリティ
alchemy1115
3
280
建設的な現実逃避のしかた / How to practice constructive escapism
pauli
4
320
本番環境でPHPコードに触れずに「使われていないコード」を調べるにはどうしたらよいか?
egmc
2
290
聞き手の目線で考えるプロポーザル
takefumiyoshii
0
340
Featured
See All Featured
Speed Design
sergeychernyshev
33
1.6k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
680
Designing Powerful Visuals for Engaging Learning
tmiket
1
330
BBQ
matthewcrist
89
10k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Deep Space Network (abreviated)
tonyrice
0
110
Chasing Engaging Ingredients in Design
codingconduct
0
170
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
870
Tell your own story through comics
letsgokoyo
1
890
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
350
Transcript
i18n&l10n Mikhail Kashkin, 2015
Поддержка языков Для ПО, сайтов, интерфейсов
• i18n и l10n — нумеронимы • internationalization (i18n), процесс
подготовки ПО к возможности локализации • localisation (l10n), процесс адаптации к локальному рынку
Процесс подготовки • Разметка текста который будет переводиться • Использование
технологий • Работа с текстом • Адаптация ПО
Gettext • 20 лет назад люди уже знали об этой
проблеме • На текущий день это стандарт для *Nix систем • Вокруг .po и .pot файлов есть готовая инфраструктура
Форматы • .POT — Portable Object Template files. Главные шаблоны
• .PO — Portable Object files. Файлы переводов удобные для обработки • .MO — Machine Object files. Скомпилированные файлы переводов, финальная форма хранения • Domain — msgid объединенные в одну логическую группу
Разметка строк в Jinja2
Python
Работа с утилитами
.pot
Перевод https://gist.github.com/xen/3ce7d597f53515facaf1
Poedit
https://www.transifex.com/
ru/LC_MESSAGES/ messages.po
Особые случаи • Динамический контент • Множественные формы • Дата,
время, валюта • Базовый язык (fallback language) • Ленивые переводы (lazy translation)
Динамический контент
Множественные формы
Дата, время, валюта http://babel.pocoo.org/docs/api/dates/
Базовый язык
Lazy translation
Пример web проекта https://github.com/xen/flask-project-template
Собственный опыт • Сложно понять контекст • RTL повод пересмотреть
бюджеты на интерфейсы в 2 раза • Конечная стоимость всегда была выше чем планировалось • История Plone (если будет время)
Вопросы