LRM resx Support

From Lingoport Wiki
Revision as of 15:52, 23 September 2016 by Olibouban (talk | contribs)
Jump to: navigation, search

The .Net framework provides for a LRM supports .resx files. See https://msdn.microsoft.com/en-us/library/ekyft91f(v=vs.100).aspx .

Locale File Extensions

  • The resx files follow this naming convention: filename.<language>.resx or filename.<language>-<country>.resx. For example, resources.resx or resources.en.resx for a base file, resources.fr.resx or resources.fr-FR.resx, etc.
  • If you can, avoid duplicate file names. Duplications incur more prep kits than necessary.

Example of .resx Files

 <?xml version="1.0" encoding="UTF-8"?>
 <root>
   <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
       <xsd:element msdata:IsDataSet="true" name="root">
           <xsd:complexType>
               <xsd:choice maxOccurs="unbounded">
                   <xsd:element name="data">
                       <xsd:complexType>
                           <xsd:sequence>
                               <xsd:element minOccurs="0" msdata:Ordinal="1" name="value" type="xsd:string" />
                               <xsd:element minOccurs="0" msdata:Ordinal="2" name="comment" type="xsd:string" />
                           </xsd:sequence>
                           <xsd:attribute msdata:Ordinal="1" name="name" type="xsd:string" />
                           <xsd:attribute msdata:Ordinal="3" name="type" type="xsd:string" />
                           <xsd:attribute msdata:Ordinal="4" name="mimetype" type="xsd:string" />
                       </xsd:complexType>
                   </xsd:element>
                   <xsd:element name="resheader">
                       <xsd:complexType>
                           <xsd:sequence>
                               <xsd:element minOccurs="0" msdata:Ordinal="1" name="value" type="xsd:string" />
                           </xsd:sequence>
                           <xsd:attribute name="name" type="xsd:string" use="required" />
                       </xsd:complexType>
                   </xsd:element>
               </xsd:choice>
           </xsd:complexType>
       </xsd:element>
   </xsd:schema>
   <resheader name="resmimetype">
       <value>text/microsoft-resx</value>
   </resheader>
   <resheader name="version">
       <value>1.3</value>
   </resheader>
   <resheader name="reader">
       <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <resheader name="writer">
       <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <value>Car Option</value>
   <value>this should be detected</value>
 </root>


Sample LRM Project Definition File for .resx

 <?xml version="1.0" encoding="UTF-8"?>
 <lrmconf>
  <model-version>1.0.0</model-version>
  <project-name>WinApp</project-name>
       <project-desc>Lingoport.WinApp is configured to support resx resource files</project-desc>
 <group-name>Lingoport</group-name>
 <top-level-dir>/var/lib/jenkins/jobs/Lingoport.WinApp/workspace</top-level-dir>
 <detect-errors>
   <missed-trans-error>1</missed-trans-error>
   <parameter-mismatch-error>1</parameter-mismatch-error>
 </detect-errors>
 <track-back-locale>br</track-back-locale>
 <pseudo-locale>eo</pseudo-locale>
 <target-locales>
   <locale>de</locale>
   <locale>fr</locale>
   <locale>ja</locale>
 </target-locales>
 <default-locale>en_US</default-locale>
 <resource-extensions>
    <resource-extension>
     <extension>resx</extension>
     <file-name-pattern>*.l-c-v</file-name-pattern>
     <use-pattern-on-dflt-locale>0</use-pattern-on-dflt-locale>                
     <file-location-pattern></file-location-pattern>
     <use-location-pattern-on-dflt-locale>0</use-location-pattern-on-dflt-locale>
     <base-file-encoding>UTF-8</base-file-encoding>
     <localized-file-encoding>UTF-8</localized-file-encoding>
     <parameter-regex-pattern><![CDATA[%[ds]|%\d+\$[ds]|%\{\w+\}]]></parameter-regex-pattern>
   </resource-extension>
 </resource-extensions>
 <dirset>
   <includes>
     <include-dir>**/**</include-dir>
   </includes>
    <excludes>
     <exclude-dir-file>**/source/bin/**</exclude-dir-file>
   </excludes>
 </dirset>
 </lrmconf>