Рубрика «локализация» - 17

Всем привет!

Сегодня отличный день, чтобы начать вести свой блог на Хабре.

Итак, начнем. Мы — компания Alconost — делаем переводы, локализацию ПО и веб сайтов, создаем справочную документацию для ПО, делаем жгучие рекламные видеоролики для программ и онлайн сервисов. А еще мы разрабатываем сервис живых онлайн переводов.

В общем — помогаем разработчикам и вендорам ПО развивать и “маркетить” свои продукты.

Читать полностью »

В статье вкратце расскажу о том, как применить локализацию к вашему приложению и о некоторых советах и трюках. Начну с того, что больше нет привычного нам RESX файла с самогенерируемым code behind и возможностью хранить не только строки – вместо этого имеем RESW (RESJSON) файлы. Не буду лить воду и переводить MSDN – просто покажу всё на картинках и листингах.

Локализация текста в XAML

Создадим простой проект, в котором надо просто выводить “Hello world” со следующей структурой:

Локализация для Windows 8 приложений
Читать полностью »

Доброго времени суток! Многие здесь разрабатывали приложения, которые попадали в публичный Marketplace, AppStore или еще какой-нибудь репозиторий. Многие из этих приложений полезны для пользователей всего мира. И, чтобы приложение было только не полезно, но и чуть более привлекательно, было бы неплохо дать ему название и описание на родном языке потенциального пользователя. WindowsPhone Marketplace с задачей локализации описаний справляется на ура. Однако, локализация Application Title доставляет… некоторые неудобства.
Читать полностью »

Disclaimer!
Все нижеописанное является исключительно опытом автора, полученного на продажах iOS-приложения Smart Coin: Конвертер валют. Автор допускает, что его опыт запросто может не совпадать с вашим. Если есть что добавить — пишите в комментарии. Если хотите написать, что автор мчудак и ничего не понимает в маркетинге — напишите об этом в личку :).

Если по-честному, то эта статья не должна являться продолжением первой моей статьи о мгновенном изменении языка iOS-приложений. Если первая статья была написана программистом для программистов, то в этой заметке пойдет речь непосредственно о процессе локализации, применимом к любой мобильной (и не очень) платформе.

Но мы меня простим и сделаем вид, что это цикл статей ;).

Итак. В процессе разработки большинства мобильных приложений возникает необходимость локализации. И в этот неловкий момент может возникнуть ряд правомерных вопросов: на какие языки переводить, что именно переводить, куда обращаться, на какие мелочи стоит обратить внимание.

Попробуем ответить на каждый из этих вопросов по отдельности.
Читать полностью »

При установке программ часто случается, что программа предлагает выбрать язык системы или выбрать язык с списка. Это не всегда удобно как кажется на первый взгляд, так как система может быть на китайском… ну или пользователь что то начудил и не может вернуть тот язык ОС, который ему нужен. Иногда предлагают скачать программу именно с той локализацией, которую нужно, но и это, увы не всегда реализовано хорошо или не всегда работает так как надо. И так, как же представить пользователю ту локализацию, которую пользователь выбрал при скачивании?Читать полностью »

Предположим, вы написали программу, выводящую «Hello, World!», например:
  write "Hello, World!"

Приложение работает, всё хорошо.
Но проходит время, ваше приложение развивается, становится популярным и вот, вам нужно эту строку вывести уже на другом языке, причём количество и состав требуемых языков заранее неизвестен.
image

Под катом вы узнаете, как решается задача локализации в Caché.

Читать полностью »

Вычисление CRC32 строк в compile time
По своей программистской природе я очень не люблю неоптимальность и избыточность в коде. И вот, читая в очередной раз на работе исходный код Mail.Ru Агента, вновь наткнулся на одну раздражающую особенность в способе реализации перевода строк продукта на разные языки.

Локализация здесь выполняется довольно нехитро. Все строки, требующие перевода, оборачиваются в макрос _TR():

wprintf(L"%sn", _TR("Some hashing string"));

Макрос возвращает нужную версию текста в зависимости от текущего используемого языка. Определён он следующим образом:

#define _TR(x) g_Translator.Translate(x)

Здесь происходит обращение к глобальному объекту g_Translator, который в функции Translate() считает crc32 от указанной строки и ищет в своей xml-базе перевод с совпадающей контрольной суммой.

Не буду судить насколько такое решение оправдано, но оно проверено временем и показало себя достаточно надёжным. И всё бы ничего, но такое решение не лишено недостатков: по сути, функция делает лишнюю работу — контрольные суммы можно было бы подсчитать один раз на этапе компиляции, и использовать в дальнейшем уже готовые числовые значения. Это также избавило бы от необходимости хранить в исполняемом образе дублирующиеся строки, ведь они уже есть во внешнем xml-файле с переводами.

Немного погуглив по запросу «compile-time crc32» я быстро понял, что задача это не самая тривиальная, а готовых решений мне найти так и не удалось.
Читать полностью »

Wordpress localisation Если у вас блог или сайт вертится на WordPress и язык сайта не английский, — то вы точно сталкивалась с проблемой локализации.

Читать полностью »

Добрый день дамы и господа!

Речь пойдет о тестировании, точнее даже о тестировании локализации.
Хотя в общем случае можно применить и к задаче облегчения поиска разницы на двух изображениях.

Поможем человеку сравнить картинки, или о Тестировании Локализации приложения

Читать полностью »

Локализация игр — любители против профессионалов
Как человек, долгое время участвовавший в самых разнообразных неофициальных локализациях на правах любителя, хочу поделиться своими мыслями насчёт ситуации на этом фронте.

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

Но есть люди, которые не безразличны к сложившейся ситуации. О них и пойдёт речь дальше.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js