Extensiones de archivo |
.xlf, .xliff |
Extensión API |
symfony_xliff |
Importación |
Sí |
Exportación |
Sí |
Compatibilidad con formularios plurales |
No |
Compatibilidad con descripción |
Sí |
Opciones de formato |
enclose_in_cdata include_translation_state |
Symfony es un marco PHP de alto rendimiento compuesto por diversos componentes PHP predefinidos. La localización de aplicaciones creadas con Symfony puede realizarse con formatos de archivo como .XLIFF, .YAML y PHP Arrays.
La diferencia entre un .XLIFF Symfony y un .XLIFF estándar radica en cómo localizan lo que representa cada <trans-unidad>
. Mientras que los .XLIFF estándar (y también la mayoría de las variaciones .XLIFF admitidas por otros marcos) usan el atributo ID
, Symfony .XLIFF usa el renombramiento
de atributo como identificador.
Para garantizar que se cargan Strings en la localización correcta, el atributo del idioma meta
en el encabezado de archivo de un Symfony .XLIFF debe tener concordancia con el nombre de localización configurado en el proyecto pertinente.
Opciones de formato
Identificador |
enclose_in_cdata |
Tipo |
Booleano |
Carga |
No |
Descarga |
Sí |
Por defecto |
false |
Descripción |
Incluye traducciones que contienen tags HTML en CDATA. Si se deshabilitan, las entidades HTML no compatibles se reemplazan con sus valores decodificados. Por ejemplo:
|
Identificador |
include_translation_state |
Tipo |
Booleano |
Carga |
No |
Descarga |
Sí |
Por defecto |
false |
Descripción |
Incluir el estado de las traducciones en la localización meta. Cada etiqueta |
Ejemplo de código
<?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"> <fuente xml:lang="de-DE">-- true </source> <target xml:lang="en-GB">--- true </target> </trans-unit> <trans-unit id="empty_string_translation" resname="empty_string_translation"> <source xml:lang="de-DE"/> <target xml:lang="en-GB"/> </trans-unit> <trans-unit id="key_with_description" resname="key_with_description"> <fuente xml:lang="de-DE">Schau dir das mal an! ¡Sombrero Dieser Schlüssel eine Beschreibung!</fuente> <meta xml:lang="en-GB">¡Échale un vistazo! This key has a description! (Al menos en algunos formatos)</meta> <note>¡Soy una descripción muy importante para esta clave!</note> </trans-unit> <trans-unit id="key_with_line-break" resname="key_with_line-break"> <fuente xml:lang="de-DE">Sombrero Diese Übersetzung einen Zeilenumbruch.</fuente> <meta xml:lang="en-GB">Estas traducciones contienen un salto de línea.</meta> </trans-unit> <trans-unit id="nested.deeply.key" resname="nested.deeply.key"> <fuente xml:lang="de-DE">Ich bin ein tief verschachtelter Schlüssel</fuente> <meta xml:lang="en-GB">Soy una clave profundamente anidada.</meta> </trans-unit> <trans-unit id="nested.key" resname="nested.key"> <fuente xml:lang="de-DE">Dieser Schlüssel ist innerhalb eines Namensraumes verschachtelt.</fuente> <meta xml:lang="en-GB">Esta clave está anidada dentro de un espacio de nombres.</meta> </trans-unit> <trans-unit id="null_translation" resname="null_translation"> <source xml:lang="de-DE"/> <target xml:lang="en-GB"/> </trans-unit> <trans-unit id="sample_collection" resname="sample_collection"> <fuente xml:lang="de-DE">-- - erstes Artículo - zweites Artículo </source> <target xml:lang="en-GB">--- - primer item - segundo item - tercer item </target> </trans-unit> <trans-unit id="simple_key" resname="simple_key"> <fuente xml:lang="de-DE">Nur ein einfacher Schlüssel mit einer einfachen Nachricht.</fuente> <meta xml:lang="es-GB">Solo una clave simple con un mensaje simple.</meta> </trans-unit> <trans-unit id="unverified_key" resname="unverified_key"> <fuente xml:lang="de-DE">Diese Übersetzung ist noch nicht bestätigt und wartet drauf!</fuente> meta xml:lang="en-GB">Esta traducción aún no está verificado y la espera. (En algunos formatos también exportar este estado)meta </trans-unit> </body> </file> </xliff>