Revision control

++ <?xml version="1.0" encoding="utf-8"?>
++ <!DOCTYPE TS>
++ <TS version="2.1">
++ <context>
++ <name></name>
++ <message id="qtn_foo_bar">
++ <location filename="main.qml" line="89"/>
++ <location filename="main_test_pragma.qml" line="90"/>
++ <source></source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="qtn_needle">
++ <location filename="main.qml" line="91"/>
++ <location filename="main_test_pragma.qml" line="92"/>
++ <source></source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="qtn_haystack">
++ <location filename="main.qml" line="91"/>
++ <location filename="main_test_pragma.qml" line="92"/>
++ <source></source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="qtn_bar_baz" numerus="yes">
++ <location filename="main.qml" line="95"/>
++ <location filename="main_test_pragma.qml" line="96"/>
++ <source></source>
++ <extracomment>qsTrId() with comment, meta-data and plurals.</extracomment>
++ <translation type="unfinished">
++ <numerusform></numerusform>
++ </translation>
++ <extra-well-tested>True</extra-well-tested>
++ </message>
++ <message id="qtn_baz_biz">
++ <location filename="main.qml" line="98"/>
++ <location filename="main_test_pragma.qml" line="99"/>
++ <source>Source text</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="id2">
++ <location filename="main.qml" line="119"/>
++ <location filename="main.qml" line="121"/>
++ <source>propagating label</source>
++ <label>label3</label>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="id4">
++ <location filename="main.qml" line="125"/>
++ <location filename="main.qml" line="127"/>
++ <source>invalid usage of label, contradicting labels for id</source>
++ <label>label4</label>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="qml.autolabel.context">
++ <location filename="main.qml" line="135"/>
++ <source>QML context auto label</source>
++ <label>main</label>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="qml.autolabel.file">
++ <location filename="main.qml" line="139"/>
++ <source>QML file auto label</source>
++ <label>main.qml</label>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="qml.flex.file_context">
++ <location filename="main.qml" line="154"/>
++ <source>QML file:context combination</source>
++ <label>main.qml:main</label>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="qml.flex.complex">
++ <location filename="main.qml" line="160"/>
++ <source>QML complex pattern</source>
++ <label>module_main.qml_main_v1</label>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="qml.flex.special">
++ <location filename="main.qml" line="166"/>
++ <source>QML special chars</source>
++ <label>main.qml_main-label</label>
++ <translation type="unfinished"></translation>
++ </message>
++ </context>
++ <context>
++ <name>BarContext</name>
++ <message>
++ <location filename="main.qml" line="19"/>
++ <location filename="main_test_pragma.qml" line="20"/>
++ <source>See other comment</source>
++ <extracomment>My second comment.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="42"/>
++ <location filename="main_test_pragma.qml" line="43"/>
++ <source>Qt is the very best</source>
++ <extracomment>Another C-style comment, followed by yet another one.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="id_bar">
++ <location filename="main.qml" line="60"/>
++ <location filename="main_test_pragma.qml" line="61"/>
++ <source>This string also has an identifier</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="85"/>
++ <location filename="main_test_pragma.qml" line="86"/>
++ <source>This string also has disambiguation</source>
++ <comment>Another disambiguation</comment>
++ <translation type="unfinished"></translation>
++ </message>
++ </context>
++ <context>
++ <name>BazContext</name>
++ <message>
++ <location filename="main.qml" line="28"/>
++ <location filename="main_test_pragma.qml" line="29"/>
++ <source>It should be clear by now</source>
++ <extracomment>My fourth comment spans a whopping three lines.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="48"/>
++ <location filename="main_test_pragma.qml" line="49"/>
++ <source>The comment had no effect, really</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="66"/>
++ <location filename="main_test_pragma.qml" line="67"/>
++ <source>This string also has meta-data</source>
++ <translation type="unfinished"></translation>
++ <extra-loc-layout_id>foo_dialog</extra-loc-layout_id>
++ </message>
++ </context>
++ <context>
++ <name>ExplicitContext</name>
++ <message>
++ <location filename="main.qml" line="143"/>
++ <source>Auto label with explicit context</source>
++ <translation type="unfinished"></translation>
++ </message>
++ </context>
++ <context>
++ <name>FooContext</name>
++ <message>
++ <location filename="main.qml" line="6"/>
++ <location filename="main_test_pragma.qml" line="7"/>
++ <source>Two</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="10"/>
++ <location filename="main_test_pragma.qml" line="11"/>
++ <source>Goodbye</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="34"/>
++ <location filename="main_test_pragma.qml" line="35"/>
++ <source>I really love C++</source>
++ <extracomment>Another C-style comment.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="54"/>
++ <location filename="main_test_pragma.qml" line="55"/>
++ <source>I refuse to comment on that</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="id_babar">
++ <location filename="main.qml" line="81"/>
++ <location filename="main_test_pragma.qml" line="82"/>
++ <source>This string has even more information</source>
++ <extracomment>This is another comment for the translator.</extracomment>
++ <translation type="unfinished"></translation>
++ <extra-foo-bar>Important stuff</extra-foo-bar>
++ <extra-needle-in-haystack>Found</extra-needle-in-haystack>
++ <extra-overflow>True</extra-overflow>
++ </message>
++ </context>
++ <context>
++ <name>PragmaContext</name>
++ <message>
++ <location filename="main_test_pragma.qml" line="6"/>
++ <source>One</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="10"/>
++ <source>Hello</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="14"/>
++ <source>One</source>
++ <comment>not the same one</comment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="17"/>
++ <source>See comment</source>
++ <extracomment>My first comment.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="24"/>
++ <source>The comment explains it all</source>
++ <extracomment>My third comment spans two lines.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="32"/>
++ <source>I love C++</source>
++ <extracomment>C-style comment.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="39"/>
++ <source>Qt is the best</source>
++ <extracomment>C-style comment, followed by another one.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="46"/>
++ <source>The comment had no effect</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="52"/>
++ <source>No comment to your comment</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="64"/>
++ <source>This string has meta-data</source>
++ <translation type="unfinished"></translation>
++ <extra-loc-blank>False</extra-loc-blank>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="84"/>
++ <source>This string has disambiguation</source>
++ <comment>Disambiguation</comment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message numerus="yes">
++ <location filename="main_test_pragma.qml" line="88"/>
++ <source>This string contains plurals</source>
++ <translation type="unfinished">
++ <numerusform></numerusform>
++ </translation>
++ </message>
++ <message>
++ <location filename="main_test_pragma.qml" line="102"/>
++ <source>translation with extras-quoted field</source>
++ <translation type="unfinished"></translation>
++ <extra-quoted> string with spaces </extra-quoted>
++ </message>
++ </context>
++ <context>
++ <name>TemplateLiteral</name>
++ <message>
++ <location filename="main.qml" line="105"/>
++ <source>template literal 2</source>
++ <translation type="unfinished"></translation>
++ </message>
++ </context>
++ <context>
++ <name>main</name>
++ <message>
++ <location filename="main.qml" line="5"/>
++ <source>One</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="9"/>
++ <source>Hello</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="13"/>
++ <source>One</source>
++ <comment>not the same one</comment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="16"/>
++ <source>See comment</source>
++ <extracomment>My first comment.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="23"/>
++ <source>The comment explains it all</source>
++ <extracomment>My third comment spans two lines.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="31"/>
++ <source>I love C++</source>
++ <extracomment>C-style comment.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="38"/>
++ <source>Qt is the best</source>
++ <extracomment>C-style comment, followed by another one.</extracomment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="45"/>
++ <source>The comment had no effect</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="51"/>
++ <source>No comment to your comment</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="id_foo">
++ <location filename="main.qml" line="57"/>
++ <location filename="main_test_pragma.qml" line="58"/>
++ <source>This string has an identifier</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="63"/>
++ <source>This string has meta-data</source>
++ <translation type="unfinished"></translation>
++ <extra-loc-blank>False</extra-loc-blank>
++ </message>
++ <message id="id_baz">
++ <location filename="main.qml" line="73"/>
++ <location filename="main_test_pragma.qml" line="74"/>
++ <source>This string has a lot of information</source>
++ <extracomment>This is a comment for the translator.</extracomment>
++ <translation type="unfinished"></translation>
++ <extra-foo>123</extra-foo>
++ <extra-magic-stuff>This means something special.</extra-magic-stuff>
++ </message>
++ <message>
++ <location filename="main.qml" line="83"/>
++ <source>This string has disambiguation</source>
++ <comment>Disambiguation</comment>
++ <translation type="unfinished"></translation>
++ </message>
++ <message numerus="yes">
++ <location filename="main.qml" line="87"/>
++ <source>This string contains plurals</source>
++ <translation type="unfinished">
++ <numerusform></numerusform>
++ </translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="101"/>
++ <source>translation with extras-quoted field</source>
++ <translation type="unfinished"></translation>
++ <extra-quoted> string with spaces </extra-quoted>
++ </message>
++ <message>
++ <location filename="main.qml" line="104"/>
++ <source>template literal</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="108"/>
++ <source></source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message id="id1">
++ <location filename="main.qml" line="112"/>
++ <source>msg with id1</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="115"/>
++ <source>invalid usage of label because of missing id</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="main.qml" line="147"/>
++ <source>This should warn in QML</source>
++ <translation type="unfinished"></translation>
++ </message>
++ </context>
++ </TS>