Обновление языковых файлов форума SMF2.1 RC3

:writer: Скоро или нет выйдет SMF2.1RC3, но в новой версии форума добавились языковые ресурсы. Переводить
  1. Оффлайн

    Автор темы

    WYLEK

    Звание: Легенда

    Админ

    Сообщений: 2195

    Создано тем: 317

    Рейтинг: 10

    Репа: (245|245|0)

    Баллы: 3580

    Был: 2024-11-18 08:59

    Лайков: 202



    writer Скоро или нет выйдет SMF2.1RC3, но в новой версии форума добавились языковые ресурсы. Переводить в блокноте это же дедовский способ, да и искать различия даже с помощью Araxis Merge ну никак мне не нравится mad

    Начал рыть ресурсы, после пару дней все получилось friday

    Итак что для этого надо...
    Инструменты.

    Notepad++ - текстовый редактор
    Radialix 3 64 бита - шаблонный редактор
    Araxis Merge - лучшая программа для сравнения файлов
    TotalCommander - ну, он и в Африке командер  1tooth
    Бестолковка - ну, как же без нее pray2



    Так как опыт с языковыми ресурсами SMF уже был, то дело шло веселее. Файлы форума с расширением .php
    Формат строк там такой:
    $txt['install_step_welcome'] = 'Welcome';


    Неправда ли, что это что то уж больно знакомое? Ну да, это же формат языковых файлов .ini, .lng и .isl
    Но если вставить встроенный парсер, то нифига вы не получите. Потому что там есть такие строки:
    $txt['regards_team'] = "Regards,
    The " . $context['forum_name'] . ' Team.';


    И такие строки:
    $txt['movetopic_default'] = 'This topic has been moved to ' . $txt['movetopic_auto_board'] . ".
    
    " . $txt['movetopic_auto_topic'];


    Еще такие:
    $helptxt['edit_news'] = '
    <ul class="normallist">
    <li>
    <strong>News</strong><br>
    This page allows you to set the text for news items displayed on the Board Index page.
    Add any item you want (e.g., &quot;Don't miss the conference this Tuesday&quot;). Each news item is displayed randomly and should be placed in a separate box.
    </li>
    <li>
    <strong>Newsletters</strong><br>
    This page allows you to send out newsletters to the members of the forum via personal message or email. First select the groups that you want to receive the newsletter, and those you don't want to receive the newsletter. If you wish, you can add additional members and email addresses that will receive the newsletter. Finally, input the message you want to send and select whether you want it to be sent to members as a personal message or as an email.
    </li>
    <li>
    <strong>Settings</strong><br>
    This page contains a few settings that relate to news and newsletters, including selecting which groups can edit forum news or send newsletters. There is also a setting to configure whether you want news feeds enabled on the forum, as well as a setting to configure the length (how many characters are displayed) for each new post that shows in the feed.
    </li>
    </ul>';


    Так как у нас есть волшебный инструмент Radialix, то работа по переводу или созданию базы данных или обновлению упрощается в разы crazy
    Как всегда в нашей работе это не навредить и сделать так, чтобы не один знак не пропал случайно biggrin



    Языковых файлов там 34 штуки и весят они довольно прилично.



    Теперь можно приступить к созданию базы данных. Создаем папку languages21rc2rus и туда вставляем 34 русских файла из вашего форума. Из них будем делать импорт ресурсов. Немного придется переделать исходный перевод - откройте все файлы в Notepad++ и сделайте поиск данных ниже.

    = '';


    Замените на

    = ' ';


    Надо просто между кавычками поставить пробел. Зачем это надо - в исходных файлах между кавычками есть слово или буква, а переводчик при локализации удалил для правильного предложения в русском варианте. Но парсер этого не понимает 1tooth
    У меня нашлось 10 различий в 7 файлах.



    Ставим пробел между кавычками так.






    Теперь делаем импорт ресурсов. Выбираем первый файл в радиаликсе слева и жмем кнопку Файл и в выпадающем меню Импорт.



    Здесь ничего менять не надо и жмем кнопку Далее



    Ищем папку languages21rc2rus и в ней выбираем нужный файл.



    Здесь устанавливаем русский язык и жмем кнопку Шаблоны



    Выбираем наш шаблон и жмем кнопку Закрыть



    Вот так у вас должно получится, теперь жмем кнопку ОК



    В этом окне жмем кнопку Начать



    Вот, справа появились русские буковки biggrin значит все сделали правильно. Жмите кнопку Закрыть и сделайте по такой схеме импорт остальных файлов.






    Как сделать обновление языковых файлов в радиаликсе? Да очень просто!
    Идем сюда и качаем новую разработку. В Из архива вытягиваем папку languages и переименовываем ее на languages_rc3. Из этой папки все файлы копируем в папку languages_en и соглашаемся на замену.



    Запускаем радиаликс и открываем проект. Слева видны файлы с желтыми значками. Теперь нажимаем кнопку Пересканировать все файлы.



    После завершения сканирования слева, что выделено жирным, это измененные файлы.



    Для общего просмотра и редактирования изменений выделите слева Русский и нажмите кнопку фильтра Новые



    Большинство строк уже переведено, но и новых хватает. Ну, как то так...

    Файл парсера

    Вложения:

      Вам запрещено скачивать вложения.
    NNK_RTR, Vasab нравится это сообщение.

    20 января 2020 - 14:10 / #1

Статистика форума, пользователей онлайн: 1 (за последние 20 минут)

Создано тем
1197
Всего сообщений
15762
Пользователей
18014
Новый участник
Markhabayev