Форум » Методички » Перевод xml-текстов: strings.xml, localization.xml и др. » Ответить

Перевод xml-текстов: strings.xml, localization.xml и др.

Knivy: Собираю здесь в одном месте те советы, что были раньше разбросаны по форуму. Здесь собирается информация, которая может оказаться полезной при переводе игровых текстов в формате xml. Сведения о том, где брать русские шрифты для игр и проч. нужно искать где-то ещё, например, можно попросить здесь, на форуме "Нашей версии" http://perevodiki.forum24.ru, чтобы их вам сделали. Тексты xml можно редактировать в следующих программах: а) в Excel — самый популярный метод. Достоинство: доступность программы, наглядное отображение файла, теги формата спрятаны, поэтому мало возможностей их повредить, есть проверка орфографии, в т.ч. в отдельных ячейках или столбцах. Недостаток: не все игровые xml могут быть открыты в этой программе (выдаётся ошибка), а кроме того иногда (редко, но крайне неприятно) Excel повреждает файлы (точнее, несколько меняет формат xml, что для игровых текстов критично), в результате чего в игре появляются баги. Причём они могут быть скрыты, коварны и выглядеть не имеющими ничего общего с Excel: игра запускается и работает отлично, но в какой-то момент зависает, либо пункт меню не отображается и т.п. Также в Excel нельзя копировать ячейки, только текст в них, иначе тоже могут возникать баги. Всё-таки Excel — это не специализированный игровой редактор. Лечение таких багов: первый способ, надёжный — восстановить предыдущую версию, без багов. Поэтому рекомендуется почаще сохранять в разных файлах промежуточные версии перевода; второй способ, тоже надёжный, но муторный — если нет сохранённой работоспособной версии перевода, то можно вылечить поломанный файл с переводом, сделав сравнение оригинального текста и багованного перевода с помощью специальных утилит сравнения текстов, например WinMerge. И исправить все изменения в формате (например, могут быть переименованы названия стилей и проч.). Подробней описание этого метода читайте ниже в комментариях 6. б) в блокноте — самый универсальный метод. Рекомендуется Akelpad, позволяющий автоматически сохранять файлы в нужной кодировке (UTF-8 без BOM). В разных приложениях эта кодировка может также называться просто UTF-8 или Юникод. Если сохранить в неправильной кодировке, то скорее всего игра не запустится, а пересохранение в другой кодировке может иногда быть проблематичным, поэтому важно следить за тем, в какой кодировке сохраняете файл. Также популярны и другие виды блокнотов: PS Pad (имеет проверку орфографии и кучу наворотов), Notepad++ (показывает файл в двух окошках) и проч. Все перечисленные бесплатны. Не рекомендуется использовать MS Word, т.к. он может менять формат файла, как и другие офисные программы (хотя, по правде, его так редко кто использует, что статистики по этому вопросу нет; здесь есть заманчивая возможность использования макросов для ускорения перевода файлов, не открываемых корректно в Excel, — подробности, как это делать, спрашивайте у участника Северга). Достоинство: программа не меняет формат самовольно, как Excel: если что-то повредилось, то это сделали вы. К тому же правильно открываются все и любые xml. Недостатки: не так удобно и наглядно, как в Excel, есть возможность нечаянно повредить формат, стерев нужный тег, желательно (а может, и обязательно) писать спецсимволы их кодами (см. ниже). Здесь нужно помнить о том, что это очень хрупкий формат. Достаточно нечаянно удалить нужную кавычку — и игра не запустится. Впрочем, появление скрытых багов, не сразу проявляющихся, как в случае с Excel, маловероятно. Лечение: открыть xml в браузере, например Internet Explorer. Если в нём есть ошибки формата, то вам сразу покажут номер строки с ошибкой. Иногда ошибка не в указанной строке, а чуть выше. Затем снова открываем свой блокнот, находим строку и исправляем. Также в Акельпаде замечены такие баги: а) Наблюдение от Angelok: Если у вас xml в Akelpad отображается с кракозябрами вроде этих: Eww…Tony isn’t very tidy! Let’s help him organize the place. то надо заново скачать и установить Акельпад, которого, видимо, «покушал» антивирус. б) Один раз был замечен серьёзный баг, когда файл вообще не сохранился. Т.е. переведённый текст при открытии в следующий раз оказался опять на английском, и пришлось всё переводить по-новой. Программа при закрытии предупреждала, но это было проигнорировано, т.к. перед этим была несколько раз использована команда «Сохранить», которая, очевидно, не сработала. Лечили опять-таки скачиванием новой версии и переустановкой. Это бесплатный редактор, который постоянно находится в процессе улучшения, случаются накладки. Замечу, что про баги Excel и Akelpad написано больше, чем про другие программы, потому что они активно и уже давно (больше года) используются любителями-переводчиками, а потому про них больше известно, чем про другие программы. в) в редакторе xml, например, XML Editor — самый «правильный» метод. Бесплатные: Syntext Serna, Microsoft XML Notepad. Достоинство: минимум ошибок, связанных с форматом. Недостаток: эти редакторы обычно в виде дерева (tree-list), что неудобно для больших текстов. Спец. символы языка xml: Ряд символов в языке XML зарезервирован и должен представляться специальным образом. Это важно помнить при переводе в блокноте; Excel такие замены автоматически делает, т.е. в Excel можно писать эти символы обычным текстом. Список некоторых таких спец. символов: (пробел после & нужно убрать — он поставлен, потому что движок форума автоматически делает замену спец. символов в сообщении) левая угловая скобка (<) & lt; правая угловая скобка (>) & gt; амперсант (&) & amp; двойная кавычка (") в значениях атрибутов & quot; одинарная кавычка (') в значениях атрибутов & apos; При желании можно пользоваться числовой кодировкой символов в стандарте Unicode. При этом символ может быть задан своим десятичным кодом (& #код;) или шестнадцатеричным кодом (& #xкод;). Например & #169 представляет символ авторского права ©, а & #x410 — русскую букву А. Знак ударения имеет код 0301. Могут пригодиться ещё такие символы: — 0151, « 0171, » 0187. В Excel их можно набирать, зажав Alt и набрав код на цифровой клавиатуре. Почитать подробней об xml: http://wdh.suncloud.ru/xml01.htm - введение. http://www.w3.org/ - полная спецификация языка (на английском). Особенности strings.xml (движок Playground): Движок Playground автоматически осуществляет перенос слов, изменение размера шрифта, но не всегда результат удовлетворителен. Тогда можно править формат текста в strings.xml вручную: Переход на новую строку: <br/> Например, надпись «Текст1<br/>Текст2» на кнопке будет располагаться в две строки. В других движках этот тег может выглядеть иначе, например [br]. Задать размер шрифта: <font size="16">Текст</font> В других движках, особенно со шрифтами-картинками, этот тег может вообще не работать. Эти теги надо вписывать в каждой ячейке текста, размер которого хотим изменить. Если такого текста очень много, то, возможно, стоит просто сам mvec-шрифт взять крупней или мельче. Размер шрифта надо подбирать при тестировании. Движок Playground автоматически меняет размер текстов, чтобы их уместить, поэтому переведённые вами тексты могут иметь разные размеры шрифта в игре, если явно не указан фиксированный размер с помощью тега font size. Одна надпись из файла strings.xml может в игре отображаться в нескольких разных местах шрифтами разных размеров, что также надо учитывать, если собираетесь этот размер задавать вручную. Все пробелы учитываются, так что можно двигать надпись вправо-влево, добавляя-убирая пробелы в тексте. Вместо различных %1%, [2], x[3] игра подставит цифры и текст — значения каких-то переменных, что надо учитывать в падежах и структуре предложения. Например, «Welcome, %1%» = «Добро пожаловать, %1%» — это приветствие, в которое будет подставлено имя профиля игрока. Автор Knivy, 2010-2011. Впервые опубликовано на perevodiki.forum24.ru.

Ответов - 32, стр: 1 2 3 All

Северга: Knivy, в xml notepad дерево сворачивается как по вертикали (отдельные ветви), так и по горизонтали (убирается совсем), к том же там можно и полый текст xml редактировать... так что, мне кажется, там дерево - не "минус"

Knivy: Не очень поняла, что имеется в виду. Там можно редактировать текст таблицей, как в Excel? У меня раньше стоял этот xml notepad и показался неудобным именно из-за этого дерева. Помнится, там в одном окне справа идут, чередуясь, и тексты для перевода и технические тексты. А в Excel тексты для перевода идут отдельным столбцом таблицы, ошибиться негде. Возможно, xml notepad удобней для перевода, чем акельпад, но скажем, пс-пад и ноутпад++ уже имеют удобные доп. возможности типа подсветки синтаксиса или ещё чего. Я использую акельпад в переводе, в основном, потому, что он мною часто используется и для других целей (при тех. поддержке), а значит привычен, остальные блокноты мне показались отвлекающе навороченными. Тому, кто только переводит или редактирует, а не возится с разными форматами шрифтов и т.п., вероятно, удобней всего пс-пад.

Северга: я скачал пс-пад, посмотрел его, и чего-то он у меня сглючил... а когда прога хоть чуть-чуть глючит, у меня к ней сразу интерес пропадает... ничего не могу с собой поделать в excel удобно, спору нет, т.к. он скрывает свои рабочие тэги, но вот если xml написан не в excel, то лучше, наверное, его в другой проге редактировать, которая показывает всю подноготную файла... что касается xml notepad, то там ситуация следующая: слева - дерево, которое можно убрать; ветви его сворачиваются и разворачиваются, в них сами тэги идут (так что тэг не исковеркаешь 100%), а значения тэгов идут справа, причем они параллельно привязаны к тэгам - если одни прокручиваешь или сворачиваешь, то с другими происходит то же самое... то есть уже что-то вроде как excel... плюс еще можно просто открыть полный текст xml, как в обычном текстовом редакторе, но только он будет с подсветкой... воть.


Северга: дополнение: оказалось, что в xml notepad редактировать полный текстовый вид xml нельзя, он только для просмотра и в какой-то степени ты права: тип значения и само значение находятся в правой части (например, одна строчка - "String", а следующая - "Привет, Вася!")... для экселевских файлов, конечно, не очень удобно, можно напортачить, а для чистого xml, пожалуй, даже хорошо...

Knivy: Ну да, наверное, для xml с простой структурой типа списка имён персонажей этот майкрософтский блокнот удобней, чем эксель (который их зачастую не может открыть) и другие блокноты. А вообще спец. программ для переводчика текстов пока, вроде, нет (есть для перевода ехе, но в играх они редко нужны), поэтому все приспосабливают под перевод ту программу, что им больше понравилась. Тот же пс-пад написан для программистов, насколько знаю. Странно, если он глючит. Перестарались с наворотами, наверное. У бесплатных программ бывает, что тестирование версии с новыми фичами производится не программистами, а уже пользователями, а потом делают новую версию с заплатками.

Северга: предлагаю попробовать написать под свои нужды программку по работе с xml, благо что по сути это текстовый формат, т.е. извращаться декодировкой не надо

Azriel: Северга, думаю, у нас нет в этом нужды. Программ достаточно существует, и каждый может выбрать что ему угодно. Если уж писать программы, то такие, которых не найдешь, например распаковщики для различных файлов, это нам гораздо нужнее.

Северга: из старых запасов отрыл еще один неплохой бесплатный редактор с подсветкой... вот ссылка не актуальную версию: http://dpad-editor.ru/

Knivy: А есть какой-нибудь редактор, чтобы, скажем, поставить курсор на строку, нажать какую-нибудь клавишу и весь текст строки либо закомментируется, либо удалится? Короче, чтобы не выделять каждый раз мышкой иностранный текст для его замены на русский. Речь не об xml, а текстовых файлах, которые приходится править блокнотом. Вариант с заменой с помощью Insert знаю, мне не удобен.

Северга: Knivy, я думаю, тогда нужно что-н. со скриптами... элементарное, что приходит в голову, - тот же ворд... написать под кнопку макрос...

Knivy: Хорошая мысль. Правда, ворд не пойдёт, т.к. может испортить файл. Возможно, есть блокноты с макросами.

Северга: а чем он его может испортить?.. при сохранении спрашивает кодировку и какие символы использовать для разрыва строк... а больше для текста ничего и не важно... я кредитс мучил несколько дней - не отображалось ничего, хоть тресни, пока не понял, что кодировка не та... спас как раз ворд

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

njuha: Здравствуйте. Самый крутой редактор xml и других подобных языков программирования Adobe Dreamweaver .

Knivy: Спасибо. Хотя для любительского перевода это имхо тяжеловато. Там ведь все теги видно, верно? Переводчику чаще всего нужно видеть только текст, но при этом чтобы программа ничего от себя не дописывала без спросу. Эксель близок к идеалу, когда не портит файл.



полная версия страницы