Поддерживаемые типы файлов (Strings)

.XLIFF - Symfony (Строки)

Контент автоматически переведен с английского языка с помощью Phrase Language AI.

Расширения файлов 

.xlf, .xliff

Расширение API 

symfony_xliff

Импорт 

Да

Экспорт 

Да

Поддержка форм множественного числа 

Нет

Поддержка описания 

Да

Варианты формата 

Эти параметры могут быть указаны при загрузке и/или скачивании файла. В зависимости от метода загрузки/скачивания (API, CLI, синхронизация репозитория и т.д.) они могут быть указаны в параметрах запроса Загрузить, Скачать или в конфигурационном файле phrase.yml.

enclose_in_cdata

include_translation_state

Symfony - это высокопроизводительный PHP-фреймворк, состоящий из различных предопределенных компонентов PHP. Локализация для приложений, построенных с использованием Symfony, может осуществляться с помощью форматов файлов, таких как .XLIFF, .YAML и PHP-массивы. 

Разница между Symfony .XLIFF и стандартным .XLIFF заключается в том, как они определяют, что представляет собой каждый <trans-unit>. В то время как стандартные .XLIFF (а также большинство вариаций .XLIFF, поддерживаемых другими фреймворками) используют атрибут id, Symfony .XLIFF использует атрибут resname в качестве идентификатора.

Чтобы гарантировать, что строки загружаются в правильный языковой стандарт, атрибут target-language в заголовке файла Symfony .XLIFF должен соответствовать имени языкового стандарта, настроенному в соответствующем проекте.

Параметры формата

Идентификатор 

enclose_in_cdata

Тип 

булевский

Загрузить 

Нет

Скачать 

Да

По умолчанию 

false

Описание 

Заключает переводы, содержащие html-теги, в CDATA. Если отключено, неподдерживаемые HTML-сущности заменяются их декодированными значениями. Например:

  • &pound; заменяется на £.

  • &trade; заменяется на .

Идентификатор 

include_translation_state

Тип 

булевский

Загрузить 

Нет

Скачать 

Да

По умолчанию 

false

Описание 

Включить состояние переводов в целевом языковом стандарте. Каждый <target> тег получит атрибут state, который может быть одним из: new, signed-off, translated

Образец кода

<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
  <file original="global" datatype="plaintext" source-language="de-DE" target-language="en-GB">
    <body>
      <trans-unit id="boolean_key" resname="boolean_key">
        <source xml:lang="de-DE">--- true
</source>
        <target xml:lang="ru-RU">--- правда
</target>
      </trans-unit>
      <trans-unit id="empty_string_translation" resname="empty_string_translation">
        <source xml:lang="ru-RU"/>
        <target xml:lang="ru-RU"/>
      </trans-unit>
      <trans-unit id="key_with_description" resname="key_with_description">
        <source xml:lang="ru-RU">Посмотри на это! Этот ключ имеет описание!</source>
        <target xml:lang="ru-RU">Посмотри на это! Этот ключ имеет описание! (По крайней мере, в некоторых форматах)</target>
        <note>Я очень важное описание для этого ключа!</note>
      </trans-unit>
      <trans-unit id="ключ_с_переносом_строки" resname="ключ_с_переносом_строки">
        <source xml:lang="ru-RU">Этот перевод содержит
перенос строки.</source>
        <target xml:lang="ru-RU">Этот перевод содержит
перенос строки.</target>
      </trans-unit>
      <trans-unit id="nested.deeply.key" resname="nested.deeply.key">
        <source xml:lang="ru-RU">Я глубоко вложенный ключ</source>
        <target xml:lang="ru-RU">Я глубоко вложенный ключ.</target>
      </trans-unit>
      <trans-unit id="nested.key" resname="nested.key">
        <source xml:lang="ru-RU">Этот ключ вложен внутри пространства имен.</source>
        <target xml:lang="ru-RU">Этот ключ вложен внутри пространства имен.</target>
      </trans-unit>
      <trans-unit id="null_translation" resname="null_translation">
        <source xml:lang="ru-RU"/>
        <target xml:lang="ru-RU"/>
      </trans-unit>
      <trans-unit id="sample_collection" resname="sample_collection">
        <source xml:lang="ru-RU">---</source>
- первый элемент
- второй элемент
</source>
        <target xml:lang="ru-RU">---</target>
- первый элемент
- второй элемент
- третий элемент
</target>
      </trans-unit>
      <trans-unit id="simple_key" resname="simple_key">
        <source xml:lang="ru-RU">Просто простой ключ с простым сообщением.</source>
        <target xml:lang="ru-RU">Просто простой ключ с простым сообщением.</target>
      </trans-unit>
      <trans-unit id="unverified_key" resname="unverified_key">
        <source xml:lang="ru-RU">Этот перевод еще не подтвержден и ждет подтверждения!</source>
        <target xml:lang="ru-RU">Этот перевод еще не подтвержден и ждет подтверждения.</target> (В некоторых форматах мы также экспортируем этот статус)</target>
      </trans-unit>
    </body>
  </file>
</xliff>
Была ли эта статья полезной?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.