|
|
(не показана одна промежуточная версия этого же участника) |
Строка 1: |
Строка 1: |
− | == Зачем? ==
| + | Статья переехала: https://community.kde.org/RU/Работа_с_исходным_кодом_в_Lokalize |
− | Автоматически созданные комментарии к строкам в шаблонах переводов не всегда дают полную информацию о строке, а иногда и вовсе отсутствуют. Поэтому при отсутствии уверенности в переводе строки рекомендуется обращаться к исходному коду переводимой программы.
| + | |
| | | |
− | == Настройка Lokalize ==
| + | [[Категория:KDE-перенаправления]] |
− | Для того чтобы использовать какой-либо сценарий в Lokalize, в файле l10n-kde4/ru/lokalize-scripts/scripts.rc должна присутствовать ссылка на этот сценарий (в случае, если вы работаете с проектом l10n-kde4/ru/index.lokalize).
| + | |
− | | + | |
− | В стандартном scripts.rc находится ссылка на сценарий ../../scripts/lokalize/opensrc.py, поэтому '''нужно просто извлечь из репозитория SVN каталог l10n-kde4/scripts/lokalize'''.
| + | |
− | | + | |
− | == Где ищутся исходники ==
| + | |
− | Сценарий opensrc сначала пытается найти каталог исходного кода по заранее подготовленной таблице (файл opensrc_list.py). '''Файл opensrc_list.py, находящийся в репозитории SVN, содержит информацию о расположении исходных кодов всех программ из koffice, extragear, playground и KDE. Для работы с этими исходниками достаточно извлечь их из SVN в соответствующий каталог (так, чтобы сохранялась структура каталогов как в SVN).'''
| + | |
− | | + | |
− | Конечно, в случае отсутствия исходников в стандартном каталоге, Lokalize пытается найти их при помощи утилиты locate. Однако, locate работает относительно медленно, и он может найти не тот файл, который вам нужен.
| + | |
− | | + | |
− | Для работы с исходниками других программ, а также если вы не хотите придерживаться структуры каталогов, сложившейся в репозитории, вам нужно отредактировать файл l10n-kde4/scripts/lokalize/opensrc_list.py и перезапустить Lokalize. Можно редактировать этот файл вручную, а можно зайти в каталог l10n-kde4/scripts/lokalize и запустить сценарий opensrc_generate_list.rb , который найдёт файлы Messages.sh в каталогах исходного кода и по ним составит файл opensrc_list.py .
| + | |
− | | + | |
− | === Сценарий opensrc_generate_list ===
| + | |
− | * По умолчанию, сценарий opensrc_generate_list.rb будет сканировать каталог trunk (точнее, каталог на 3 уровня выше от каталога, в котором находится opensrc_generate_list.rb).
| + | |
− | * Если вы хотите просканировать весь каталог /home при помощи locate, нужно запустить
| + | |
− | ./opensrc_generate_list.rb global-home
| + | |
− | * Если у вас есть исходники из trunk и другие исходники, разбросанные про /home, то рекомендуется запустить
| + | |
− | ./opensrc_generate_list.rb kde-trunk global-home
| + | |
− | тогда каталог trunk будет иметь приоритет перед другими каталогами.
| + | |
− | | + | |
− | == Как читать исходный код ==
| + | |
− | По исходному коду часто бывает проще узнать контекст, в котором та или иная строка появляется в интерфейсе программы, чем если бы вы устанавливали, запускали программу и вручную искали меню или диалоговое окно с интересующей строкой.
| + | |
− | | + | |
− | Среди всех переводимых строк можно выделить несколько категорий:
| + | |
− | * '''Заголовки окон'''. Строка является заголовком диалогового окна, в частности, если она передаётся в вызов одной из следующих функций: '''KInputDialog::getText''' (''как первый аргумент''), '''setCaption''', '''setWindowTitle'''. Иногда к строке, являющейся заголовком окна, разработчики добавляют контекстную строку "@title:window".
| + | |
− | * '''Всплывающие подсказки'''. Строка является заголовком диалогового окна, в частности, если она передаётся в вызов функции '''setToolTip'''.
| + | |
− | | + | |
− | [[Категория:KDE]] | + | |