Процес перекладу

Yii перекладається на багато різних мов, щоб бути корисним для міжнародних додатків та розробників. Основними двома областями, де вітається співпраця є документація та повідомлення фреймворку.

Повідомлення фреймворку

Фреймворк має два типи повідомлень: виключення, які призначені для розробників й ніколи не перекладаються, та повідомлення видимі кінцевому користувачу, такі як помилки перевірки.

Щоб розпочати переклад повідомлень необхідно:

  1. Перейти до директорії framework та виконати команду ./yii message/extract messages/config.php.
  2. Перекласти повідомлення у файлі framework/messages/uk/yii.php. Зберегти файл у кодуванні UTF-8.
  3. Відправити "pull request".

Для підтримання перекладу в актуальному стані можна знову використовувати команду ./yii message/extract messages/config.php. Це автоматично здобуде нові повідомлення, зберігаючи при цьому вже перекладені.

У файлі перекладу кожний ключ елементу масиву представляє повідомлення, а значення елементу масиву представляє переклад. Якщо значення порожнє, повідомлення вважається не перекладеним. Переклади повідомлень, які вже не потребують перекладу, замкнуті між парами знаків '@@'. Текст перекладу може містити формат кількох форм множини. Ознайомтесь з розділом посібника Інтернаціоналізація для більш детальної інформації.

Документація

Переклад документації знаходиться у docs/<original>-uk, де <original> відповідає оригінальній директорії, наприклад guide або internals.

Після завершення розпочатої роботи можна отримати звіт про стан перекладу за допомогою виклику спеціальної команди з директорії build:

php build translation "../docs/guide" "../docs/guide-uk" "Ukrainian guide translation report" > report_guide_uk.html

У разі необхідності встановіть Composer в кореневій директорії вашого локального репозиторію.

Список документів

Перелік документів, що потребують перекладу, можна знайти за нижченаведеними посиланнями:

Перед тим, як розпочати переклад, переконайтесь, що їм ніхто не займається, та запишіть себе у списку документів.

В залежності від прогресу оберіть відповідний статус перекладу: - В роботі — переклад готується перекладачем до відправлення "pull request"; - Ревізія — відправлений переклад перевіряється ревізором; - Перекладено — переклад прийнято до головної (master) гілки проекту.

За додатковою інформацією можете звертатись до учасників української команди перекладачів.

Переклад зображень

Зображення до документації знаходяться у вкладеній директорії images. Усі вони створенні програмою yED. При необхідності перекладу оригінальний файл копіюється в директорію images перекладу, перекладається та зберігається у форматі png.

Перелік зображень, що потребують перекладу, можна знайти за нижченаведеним посиланням:

Переклад спеціальних повідомлень

  • Tip → Підказка
  • Note → Примітка
  • Info → Інформація
  • Warning → Попередження

Список термінів

  • action — дія;
  • active record — (не перекладається);
  • Advanced/Basic Project Template — Розширений/Базовий шаблон проекту;
  • alias — псевдонім;
  • alphanumeric — буквено-цифровий;
  • (Web) application — (веб-)додаток;
  • assignment — призначення;
  • attach handler — приєднати обробник;
  • attribute of the model — атрибут моделі;
  • authentication — аутентифікація / установлення справжності;
  • authorization — авторизація/уповноваження;
  • autoloader — автозавантажувач;
  • back-end — (не перекладається);
  • bootstrap, bootstrapping — початкове завантаження;
  • branch — гілка;
  • browser — браузер;
  • (asset) bundle — колекція (ресурсів);
  • cache — кеш;
  • camel case — (не перекладається);
  • case-sensitive — регістр-залежний;
  • column — колонка;
  • commit — комміт;
  • concatenation — конкатенація;
  • configuration — конфігурація;
  • content — вміст;
  • contributor — учасник;
  • cookies — кукі;
  • customization — (тонке) налаштування;
  • debug mode — режим налагодження (див. production mode);
  • debugger — відладчик;
  • (function) declaration — оголошення (функції);
  • definition — визначення;
  • design pattern — шаблон проектування;
  • development mode — режим розробки;
  • (root) directory — (коренева) директорія;
  • eager loading — жадібне завантаження (див. lazy loading);
  • email address — адреса e-mail;
  • environment — середовище;
  • exception — виключення;
  • existing — наявний/присутній; // перекладати як "існуючий" не вірно
  • (PHP) extension — розширення (PHP);
  • Facebook — Фейсбук;
  • field (of the table) — поле/атрибут (таблиці);
  • fixture — фікстура;
  • folder — папка/каталог;
  • footer — футер;
  • fork — форк;
  • formatter — форматтер;
  • framework — фреймворк;
  • front-controller — фронт-контролер;
  • front-end — (не перекладається);
  • getter — геттер;
  • (event) handler — обробник (події);
  • hash — хеш;
  • help — довідка;
  • helper — хелпер;
  • id — ідентифікатор;
  • image — зображення;
  • initialize — ініціалізувати/встановлювати;
  • to initiate — ініціювати/розпочинати;
  • instance — екземпляр;
  • instantiate — створювати екземпляр;
  • issue — питання/проблема; // в залежності від контексту
  • layout — макет;
  • lazy loading — відкладене завантаження;
  • log, logging — журнал, журналювання;
  • markdown — (не перекладається);
  • method — метод (обʼєкта/класу);
  • merge — поєднання;
  • Model-View-Controller (MVC) — Модель-Представлення-Контролер (MVC);
  • namespace — простір імен;
  • package — пакунок;
  • pagination — розділення на сторінки;
  • parameter — параметр;
  • to parse — обробляти;
  • placeholder — заповнювач;
  • plugin — плагін;
  • postprocessing — після-обробка;
  • predefined — попередньо визначений;
  • production mode — робочий режим (див. debug mode);
  • property — властивість (обʼєкта);
  • pull request — (не перекладається);
  • query builder — конструктор запитів;
  • refactoring — рефакторинг;
  • to render, rendering — формувати, формування;
  • related, relation — повʼязаний, звʼязок;
  • release — реліз;
  • repo, repository — репозиторій;
  • resolve request — попередня обробка запиту;
  • route, routing — маршрут, маршрутизація;
  • row (of the table) — рядок (таблиці);
  • Service Locator — Локатор служб;
  • setter — сеттер;
  • shared hosting — віртуальний хостинг;
  • (call) stack — стек (викликів);
  • staging area — буферна зона;
  • standalone — автономний;
  • string — текстовий рядок;
  • sub-directory — під-директорія;
  • substitution — підставлення/заміщення;
  • tabular input — табличний ввід;
  • template engine — шаблонізатор;
  • theming — темізація;
  • third party — сторонній;
  • thumbnail — мініатюра;
  • trait — трейт;
  • Twitter — Твіттер;
  • Unicode — (не перекладається);
  • unit tests — модульні тести;
  • to validate — перевіряти;
  • valid — коректний;
  • validator — валідатор;
  • validation — перевірка;
  • validator class — клас валідатора;
  • versioning — версіонування;
  • widget — віджет.