Вопрос

Мы локализуем кроссплатформенное клиентское приложение на базе C++.Первый этап локализации был выполнен в спешке для крупного партнера и в сжатые сроки, и теперь пришло время провести его рефакторинг.

В настоящее время у нас есть файл строк XML для каждой локали с общим ключом и локализованным значением для каждого ресурса.Однако отправка XML-файла нашим необязательно техническим локализаторам не идеальна — они не знают, как кодировать специальные символы и т. д. и т. п.Я хотел бы использовать простой, хорошо известный формат, такой как Excel/csv, с локализаторами (это также удобно, потому что у нас также есть локализация на стороне сервера, которая может находиться на другой вкладке того же файла), а затем кодировать: создайте оттуда файлы строк.Кажется, что Excel не любит выводить CSV-файлы UTF-8, что раздражает и мешает мне собрать несколько быстрых сценариев для автоматизации преобразования файлов Excel --> strings.

Эта проблема решалась сотни раз.Какие рабочие процессы люди считают лучшими, особенно в тех случаях, когда локализаторы будут внешними по отношению к компании?Я ищу что-то простое для нетехнических пользователей, а также простое для команды разработчиков, которое затем можно было бы использовать для создания файла строк в каком-нибудь простом формате, например XML.

Нет правильного решения

Другие советы

<Ол>
  • Используйте OpenOffice вместо exel, он может создавать дамп в кодировке UTF-8 CSV.

  • У нас есть файл .xls с общими идентификаторами, и мы отправляем его в переводческую компанию. Затем .xls выгружается в CSV с помощью OpenOffice. У нас есть инструмент, который генерирует наши файлы локализации включения на основе файла CSV.

  • Qt предоставляет отличные возможности для локализации . Первым шагом является использование их строкового класса QString.

    Затем вы просто заключаете любые строковые литералы в макрос tr (). Самое замечательное в этом методе заключается в том, что вам не нужно тратить время на поддержание констант или определений. Просто введите желаемую строку там, где вы хотите.

    Позже вы используете утилиту Qt для поиска во всех ваших единицах кода переводимых строк и создаете файл .ts. Этот файл является XML, поэтому вам не нужно беспокоиться о том, что ваши данные будут захвачены в каком-то частном формате.

    Теперь, когда у вас есть файл .ts, Qt предоставляет редактор переводов под названием linguist. Это очень хорошая программа, которая представляет строки переводчику (человеку) и предоставляет несколько простых инструментов для управления всем процессом. Программа ищет типичные ошибки (отличающиеся пунктуацией), отслеживает состояние каждой строки, например, была ли она переведена или нет, а также была изменена или удалена исходная строка. Программа также покажет контекстную информацию для каждой строки, которую разработчик может включить в макрос tr ().

    Когда перевод завершен, файл .ts компилируется в меньший двоичный файл, который распространяется вместе с приложением и загружается во время выполнения. Переводы можно переключать на лету.

    Здесь есть нечто большее, чем я могу полностью объяснить. Это действительно отличная система, которую стоит изучить.

    Это интересная тема. В прошлом я занимался аутсорсингом различными способами.

    Однажды мы просто использовали простые текстовые файлы в проприетарном формате. У нас были разные файлы для каждого языка. формат был такой:

     #LOCALIZATION_ID
     English String
    

    У локализаторов с этим проблем не было. Еще одна вещь, которую я использовал - это приложение для работы с электронными таблицами xls. В основном приложение размещало свои данные через веб-сервисы на сервере. Не нужно иметь промежуточные форматы файлов, такие как CSV. Это хорошо, потому что все строки имеют версии и позволяют нескольким сторонним источникам работать с одним файлом строк.

    Вероятно, вы сможете написать несколько vba, которые возьмут вашу таблицу Excel и выведут XML-файл UTF-8, который аутсорсер может отправить вам по электронной почте. Большая кнопка в верхней части листа с надписью «SEND XML FILE». и он отправит его либо на заранее определенный адрес электронной почты, либо разместит его на вашем сервере. В худшем случае они могут просто отправить вам файл по электронной почте.

    Я бы с осторожностью относился к любому формату с неоднозначной кодировкой символов.Рассмотрите возможность использования XLIFF (однако уточните у своих поставщиков переводов, с какими инструментами/процессами они знакомы).

    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top