2015-01-30 4 views
2

Недавно я экспортировал файлы XLIFF, используя инструмент экспорта Xcode для локализации. Файлы были переведены, и я попытался их импортировать, но я все время получаю ошибку «Отсутствует атрибут id XLIFF». Я подумал, что, возможно, один из переводчиков испортил файл, так как тест я повторно экспортировал XLIFF-файл и попытался импортировать их без внесения каких-либо изменений в них и до сих пор получил ошибку «Идентификатор атрибута XLIFF отсутствует».Ошибка локализации импорта Xcode 6.1.1 «Отсутствует атрибут id XLIFF»

Любые идеи, что происходит здесь?

+0

Тот же вопрос ... еще не понял? –

ответ

3

Для меня, это было связано с этим вопросом: Xcode 6 localization. export .xliff file will cut the string when the string is like “this is sample \”text\“”

Моя строка файла выглядит следующим образом:

"some english \"text\"" = "some english \"text\""

вывезенных в XLIFF, это выглядело так:

<trans-unit id=""> 
    <target>some english \</target> 
    <source>some english \</target> 
    <note></note> 
</trans-unit> 

Мои переводчики добросовестно переводили: (имитировали)

<trans-unit id=""> 
    <target>some english \</target> 
    <source>xyz abcdefg \</source> 
    <note></note> 
</trans-unit> 

При попытке импортировать переведенный XLIFF я получил ошибку XLIFF id attribute missing.

Чтобы исправить это, я пошел в свой файл строк и изменить запись в этом:

"some english 'text'" = "some english 'text'"

и XLIFF ...

<trans-unit id="some english 'text'"> 
    <target>some english 'text'</target> 
    <source>xyz abcdefg</source> 
    <note></note> 
</trans-unit> 

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


Edit:

Я искал решение для этого. Я обнаружил, что фигурные кавычки делает экспорт правильно, так что строка: some english “text” производит XLIFF:

<trans-unit id="some english “text”"> 
    <source>some english “text”</source> 
</trans-unit> 

Это единственный способ я знаю, чтобы сделать это, в настоящее время.

+0

Это была проблема! Благодарю. Вы когда-нибудь находили способ включить двойные кавычки в свою строку? –

+1

@ DarrenFindlay Ну, используя фигурные кавычки, похоже, работает. Надеюсь, это приемлемо для того, что вы делаете. –