[Translation:update][Xliff Dumper] added target-language.
This commit is contained in:
parent
3b9902ae77
commit
1951412b96
@ -141,7 +141,7 @@ EOF
|
||||
// save the files
|
||||
if ($input->getOption('force') === true) {
|
||||
$output->writeln('Writing files');
|
||||
$writer->writeTranslations($operation->getResult(), $input->getOption('output-format'), array('path' => $bundleTransPath));
|
||||
$writer->writeTranslations($operation->getResult(), $input->getOption('output-format'), array('path' => $bundleTransPath, 'default_locale' => $this->getContainer()->getParameter('kernel.default_locale')));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -20,6 +20,24 @@ use Symfony\Component\Translation\MessageCatalogue;
|
||||
*/
|
||||
class XliffFileDumper extends FileDumper
|
||||
{
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $defaultLocale;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function dump(MessageCatalogue $messages, $options = array())
|
||||
{
|
||||
$this->defaultLocale = \Locale::getDefault();
|
||||
if (array_key_exists('default_locale', $options)) {
|
||||
$this->defaultLocale = $options['default_locale'];
|
||||
}
|
||||
|
||||
parent::dump($messages, $options);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
@ -33,7 +51,8 @@ class XliffFileDumper extends FileDumper
|
||||
$xliff->setAttribute('xmlns', 'urn:oasis:names:tc:xliff:document:1.2');
|
||||
|
||||
$xliffFile = $xliff->appendChild($dom->createElement('file'));
|
||||
$xliffFile->setAttribute('source-language', $messages->getLocale());
|
||||
$xliffFile->setAttribute('source-language', $this->defaultLocale);
|
||||
$xliffFile->setAttribute('target-language', $messages->getLocale());
|
||||
$xliffFile->setAttribute('datatype', 'plaintext');
|
||||
$xliffFile->setAttribute('original', 'file.ext');
|
||||
|
||||
|
@ -23,7 +23,7 @@ class XliffFileDumperTest extends \PHPUnit_Framework_TestCase
|
||||
|
||||
$tempDir = sys_get_temp_dir();
|
||||
$dumper = new XliffFileDumper();
|
||||
$dumper->dump($catalogue, array('path' => $tempDir));
|
||||
$dumper->dump($catalogue, array('path' => $tempDir, 'default_locale' => 'fr'));
|
||||
|
||||
$this->assertEquals(file_get_contents(__DIR__.'/../fixtures/resources-clean.xlf'), file_get_contents($tempDir.'/messages.en.xlf'));
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
|
||||
<file source-language="en" datatype="plaintext" original="file.ext">
|
||||
<file source-language="fr" target-language="en" datatype="plaintext" original="file.ext">
|
||||
<body>
|
||||
<trans-unit id="acbd18db4cc2f85cedef654fccc4a4d8" resname="foo">
|
||||
<source>foo</source>
|
||||
|
Reference in New Issue
Block a user