Контроль якості перекладу

Матеріал з docs.linux.org.ua — збірника документації з Unix/Linux українською мовою.

Перейти до: навігація, пошук
← Автоматичний переклад ↑ До основної сторінки ↑ Що робити з готовими перекладами? →

Зміст


Контроль засобами програм з графічним інтерфейсом

Загалом кажучи, всі програми для перекладу, окрім хіба Linguist, обладнано інструментами перевірки правопису.

Але для того, щоб ці інструменти працювали, їх має бути встановлено у вашій системі і належним чином налаштовано. Вам слід встановити бібліотеки aspell (чи hunspell у новітніх дистрибутивах) і правильно налаштувати локаль середовища. У KDE останню з дій можна виконати за допомогою сторінки «Країна/Регіон і мова» -> «Перевірка правопису» «Системних параметрів».

Однак не слід повністю покладатися на такий контроль:

Cujusvis hominis est errare; nullius, nisi insipientis in errore perseverare. (Цицерон)

Завжди користуйтеся подвійною або краще потрійною перевіркою. Скрипти вас не підведуть. ;)

Скрипти контролю якості

Pology

  • Цілий набір скриптів мовою Python надає у ваше розпорядження Pology. Звантажте комплекс скриптів командою
svn co svn://anonsvn.kde.org/home/kde/trunk/l10n-support/pology

Додайте відповідний шлях до змінної PATH

export PATH=$PWD/pology/scripts:$PATH
export PYTHONPATH=$PWD:$PYTHONPATH

Довідкові матеріали можна знайти у самих файлах скриптів (каталог /scripts). За допомогою цих скриптів ви зможете отримувати статистичні дані щодо перекладу проекту, контролювати точність і послідовність перекладу.

Перевірка правопису

Перевірка правопису у всіх файлах PO поточного каталогу:

#!/bin/bash 

for i in *.po
do
	sed "s/[_&]//g"<$i|sed "s/’/'/g"|aspell -l uk list|sort|uniq>${i%.*}.err
done

Pofilter

Контроль відповідності елементів початкового рядка та елементів перекладу доцільно здійснювати за допомогою програми pofilter з комплекту TranslateTolkit.

Фільтри

accelerators    перевірити відповідність акселераторів у рядках     
acronyms        перевірити, чи не змінено абревіатури    
blank           перевірити, чи не складається «переклад» лише з пробілів
brackets        перевірити, чи збігається кількість дужок у початковому рядку та у перекладі
compendiumconflicts     перевірити наявність конфліктів з резюме Gettext (#-#-#-#-#)
credits         перевірити, чи містяться у рядках дані щодо перекладачів замість звичайних (неправильних перекладів).
doublequoting   перевірити парність лапок у обох рядках
doublespacing   перевірити наявність зайвих подвійних пробілів, порівняно з початковим рядком
doublewords     перевірити наявність повторів слів у перекладах
emails          перевірити, чи не перекладено адреси електронної пошти
endpunc         перевірити, чи збігається пунктуація наприкінці рядків
endwhitespace   перевірити, чи немає зайвих пробілів наприкінці рядків
escapes         перевірити правильність екранування керівних послідовностей
filepaths       перевірити, чи не перекладено адреси файлів
functions       перевірити, чи не перекладено назви функцій
hassuggestion   знайти модулі з пропозиціями перекладу
isfuzzy         знайти модулі модуль, які перекладений неточно
isreview        знайти модулі, позначені для коригування
kdecomments     перевірити, чи не залишилося у перекладах коментарів KDE (застаріло)
long            перевірити, чи не є переклад значно довшим за початковий рядок
musttranslatewords      перевірити, чи перекладено слова, спеціально позначені для перекладу
newlines        перевірити, чи збігаються позначки розривів рядків
notranslatewords        перевірити, чи наявні у перекладах слова, позначені як такі, які не можна перекладати
nplurals        перевірити, чи правильною є кількість форм множини
numbers         перевірити, чи відповідають числа у початковому рядку та рядку перекладу
options         перевірити, чи не перекладено назви параметрів
printf          перевірити, чи збігаються рядки форматування printf
puncspacing     перевірити, чи належним чином розставлено пробіли після знаків пунктуації
purepunc        перевірити, чи не змінено рядки, що складаються лише зі знаків пунктуації
sentencecount   перевірити, чи збігається кількість речень у початковому рядку та рядку перекладу
short           перевірити, чи не є переклад набагато коротшим за оригінал
simplecaps      перевірити, чи не є регістр літер значно розбіжним
simpleplurals   знайти для редагування форми множини
singlequoting   перевірити відповідність одинарних лапок у рядках
spellcheck      знайти слова, що не відповідають правилам правопису
startcaps       перевірити, чи використано великі літери на початку речення
startpunc       перевірити, чи збігається пунктуація на початку рядків
startwhitespace перевірити, чи збігається кількість пробілів на початку рядків
tabs            перевірити, чи збігається табуляція у обох рядках
unchanged       знайти «переклади», які збігаються з початковими рядками
untranslated    знайти рядки, які не перекладено
urls            перевірити, чи не перекладено адреси URL
validchars      перевірити, чи у перекладі використано лише коректні символи
variables       перевірити, чи у перекладі віикористано відповідні форми змінних
xmltags         перевірити, чи не перекладено теґи XML/HTML

Параметри програми

--version 	показати версію і завершити роботу  
-h, --help 	показати довідку з програми 
--manpage 	створити сторінку довідки на основі параметра -h
--progress=ПОСТУП 	показати поступ за допомогою: dots (крапок), none (не показувати), bar (смужка), names (назви), verbose (докладно)
--errorlevel=РІВЕНЬ 	показувати помилки: none (не показувати), message (повідомлення), exception (виключення), traceback (зворотне трасування) 
-iINPUT, --input=INPUT 	читати дані з INPUT у форматах pot, po, xlf, tmx 
-xEXCLUDE, --exclude=EXCLUDE 	виключити файли з назвами, що відповідають шаблону EXCLUDE з пошуку
-oOUTPUT, --output=OUTPUT 	записати виведені дані до OUTPUT у форматах po, pot, xlf, tmx 
--psyco=РЕЖИМ 	використати psyco для пришвидшення дії 
-l, --listfilters 	показати список фільтрів (наведено вище)
--review 	включити елементи, позначені для коригування (типова поведінка)
--noreview 	виключити елементи, позначені для коригування 
--fuzzy 	включити елементи, позначені як перекладені неточно (типова поведінка
--nofuzzy 	виключити елементи, позначені як перекладені неточно 
--header 	включити до виведених даних заголовок PO 
--nonotes 	не додавати нотаток щодо помилок
--autocorrect 	за можливості, автоматично виправляти помилки
--language=МОВА 	вказати мову перекладу (наприклад, uk_UA) [потрібно для перевірки правопису]
--openoffice 	використати стандартні перевірки для перекладів OpenOffice 
--mozilla 	використати стандартні перевірки для перекладів Mozilla 
--drupal 	використати стандартні перевірки для перекладів Drupal
--gnome 	використати стандартні перевірки для перекладів Gnome
--kde 	        використати стандартні перевірки для перекладів KDE
--wx 	        використати стандартні перевірки для перекладів wxWidgets (те саме, що і --kde)
--excludefilter=ФІЛЬТР 	не використовувати ФІЛЬТР
-tФІЛЬТР, --test=ФІЛЬТР 	використати лише вказаний ФІЛЬТР
--notranslatefile=ФАЙЛ 	прочитати список слів, які не слід перекладати, з ФАЙЛа
--musttranslatefile=ФАЙЛ 	прочитати список слів, які слід перекласти, з ФАЙЛа
--validcharsfile=ФАЙЛ 	прочитати список всіх можливих символів з ФАЙЛа (має бути у кодуванні UTF-8)

Приклади

pofilter --openoffice uk uk-check

Використати типові параметри перевірки для OpenOffice.org. Перевірити всі PO-файли у каталозі uk і вивести всі повідомлення про помилки до каталогу uk-check (створити каталог, якщо його не існує).

pofilter -t isfuzzy -t untranslated uk uk-check

Виконати лише перевірки isfuzzy і untranslated. Програма створити файли з повідомленнями, які або було позначено, як перекладені неточно, або не було перекладено.

pofilter --excludefilter=simplecaps --nofuzzy uk uk-check

Виконати фільтрування за всіма фільтрами, окрім simplecaps. Крім того, перевірку буде виконано лише для повідомлень, які не було позначено, як перекладені неточно.

pofilter --language=uk dir dir-check

Перевірити за допомогою pofilter українські переклади з врахуванням правил мови (пунктуації, пробілів, лапок тощо). Деякі з фільтрів буде вимкнено.

pofilter --excludefilter=untranslated

Наказати pofilter пропустити неперекладені повідомлення.

Контроль відповідності мовним правилам

Завданням хорошого перекладача програм є не лише простий переклад інтерфейсу чи довідки до програми, але і певне виховання культури користування програмою.

Таке виховання неможливе без чіткого дотримання мовленнєвої культури. Звичайно ж, дуже добре, якщо ви сам письменник чи поет, читач класичної літератури тощо. Але що робити, якщо це не зовсім так? Очевидно, скористатися настановами відомих знавців мови. У цьому вам допоможуть книги, у яких висвітлюються питання культури мовлення:

Корисно також дослухатися до порад, які надає радіожурнал «Слово» (Перший канал радіо у неділю о 10 годині).

← Автоматичний переклад ↑ До основної сторінки ↑ Що робити з готовими перекладами? →
Особисті інструменти