1
 2<lexer>
 3  <config>
 4    <name>Gettext</name>
 5    <alias>pot</alias>
 6    <alias>po</alias>
 7    <filename>*.pot</filename>
 8    <filename>*.po</filename>
 9    <mime_type>application/x-gettext</mime_type>
10    <mime_type>text/x-gettext</mime_type>
11    <mime_type>text/gettext</mime_type>
12  </config>
13  <rules>
14    <state name="root">
15      <rule pattern="^#,\s.*?$"><token type="KeywordType"/></rule>
16      <rule pattern="^#:\s.*?$"><token type="KeywordDeclaration"/></rule>
17      <rule pattern="^(#|#\.\s|#\|\s|#~\s|#\s).*$"><token type="CommentSingle"/></rule>
18      <rule pattern="^(&quot;)([A-Za-z-]+:)(.*&quot;)$"><bygroups><token type="LiteralString"/><token type="NameProperty"/><token type="LiteralString"/></bygroups></rule>
19      <rule pattern="^&quot;.*&quot;$"><token type="LiteralString"/></rule>
20      <rule pattern="^(msgid|msgid_plural|msgstr|msgctxt)(\s+)(&quot;.*&quot;)$"><bygroups><token type="NameVariable"/><token type="Text"/><token type="LiteralString"/></bygroups></rule>
21      <rule pattern="^(msgstr\[)(\d)(\])(\s+)(&quot;.*&quot;)$"><bygroups><token type="NameVariable"/><token type="LiteralNumberInteger"/><token type="NameVariable"/><token type="Text"/><token type="LiteralString"/></bygroups></rule>
22    </state>
23  </rules>
24</lexer>