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
Mikhail Kashkin
May 20, 2015
Technology
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
i18n & l10n
Интернационализация и локализация сайтов и приложений
Mikhail Kashkin
May 20, 2015
More Decks by Mikhail Kashkin
See All by Mikhail Kashkin
Python Blockchain Development
xen
1
68
Получение, обработка и визуализация открытых данных
xen
0
210
Data-driven marketing
xen
0
150
Flask API backend
xen
3
430
PechaKucha Днепропетровск
xen
0
61
Other Decks in Technology
See All in Technology
コンテナ・K8s研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
1
280
そのドキュメント、自動化しませんか?
yuksew
1
450
現場との対話から始める “作る前に問い直す”業務改善
mochico50
2
310
Claude CodeとAmazon Bedrock AgentCoreでつくる、自分だけのAIアシスタント
ymae
0
110
2年前に削除したPHPクラスが、 ある日突然決済をエラーにした
ykagano
1
840
設計レビューとAIハーネスで向き合う AIが生み出した新しいボトルネックの対処法 / Design Reviews and AI Harnesses Against New Bottlenecks Created by AI
nstock
6
510
kaonavi Tech Night#1
kaonavi
0
180
AIコード生成×サプライチェーン攻撃 — PHPが直面する“二重の信頼問題
shinyasaita
0
490
CTOキーノート:AI時代の「つなぐ」を再定義 ― 真のIoTとリアルワールドAI【SORACOM Discovery 2026】
soracom
PRO
0
140
それでも、技術なブログを書く理由 #kichijojipm / Why I Still Write Tech Blogs Even Now
shinkufencer
0
960
StepFunctionsとGraphRAGを活用した暗黙知活用のためのRAG基盤
yakumo
0
180
事業成長とAI活用を止めないデータ基盤アーキテクチャの設計思想
hiracky16
0
730
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
310
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
350
Making Projects Easy
brettharned
120
6.7k
Navigating Team Friction
lara
192
16k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
How to make the Groovebox
asonas
2
2.3k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
640
Unsuck your backbone
ammeep
672
58k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
190
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
250
Scaling GitHub
holman
464
140k
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 (если будет время)
Вопросы