Difference between revisions of "LRM resx Support"
(→Example of .resx Files) |
|||
| Line 5: | Line 5: | ||
* '''If you can, avoid duplicate file names'''. Duplications incur more prep kits than necessary. |
* '''If you can, avoid duplicate file names'''. Duplications incur more prep kits than necessary. |
||
| + | == What is resx files encoding?== |
||
| + | .Net resx files must be UTF-8 encoded, as per the resx schema, Hence, on-boarding resx resource files with LRM must specify the UTF-8 encoding: |
||
| + | |||
| + | |||
| + | https://msdn.microsoft.com/en-us/library/ekyft91f%28v=VS.90%29.aspx |
||
| + | |||
| + | <pre> |
||
| + | <?xml version="1.0" encoding="utf-8"?> |
||
| + | <root> |
||
| + | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" |
||
| + | xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> |
||
| + | <xsd:element name="data"> |
||
| + | <xsd:complexType> |
||
| + | <xsd:sequence> |
||
| + | <xsd:element name="value" type="xsd:string" minOccurs="0" |
||
| + | msdata:Ordinal="2" /> |
||
| + | </xsd:sequence> |
||
| + | <xsd:attribute name="name" type="xsd:string" /> |
||
| + | <xsd:attribute name="type" type="xsd:string" /> |
||
| + | <xsd:attribute name="mimetype" type="xsd:string" /> |
||
| + | </xsd:complexType> |
||
| + | </xsd:element> |
||
| + | |||
| + | </pre> |
||
== Example of .resx Files == |
== Example of .resx Files == |
||
<pre> |
<pre> |
||
Revision as of 16:24, 2 February 2017
The .Net framework provides for a LRM supports .resx files. See https://msdn.microsoft.com/en-us/library/ekyft91f(v=vs.100).aspx .
Contents
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.
What is resx files encoding?
.Net resx files must be UTF-8 encoded, as per the resx schema, Hence, on-boarding resx resource files with LRM must specify the UTF-8 encoding:
https://msdn.microsoft.com/en-us/library/ekyft91f%28v=VS.90%29.aspx
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"
msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
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>
<data name="CARO_CAROPTI_100" xml:space="preserve"><value>Car Option</value></data>
<data name="COMM_THISSHO_1" xml:space="preserve"><value>this should be detected</value></data>
</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>