Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > f9d20baf2d42bbb9f9c5746dba0abad5 > files > 217

python-translate-doc-1.10.0-3.mga4.noarch.rpm


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
    <title>Descriptions of all pofilter tests &mdash; Translate Toolkit 1.9.0 documentation</title>
    
    <link rel="stylesheet" href="../_static/basic.css" type="text/css" />
    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
    <link rel="stylesheet" href="../_static/bootstrap.css" type="text/css" />
    <link rel="stylesheet" href="../_static/bootstrap-sphinx.css" type="text/css" />
    
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    '../',
        VERSION:     '1.9.0',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true
      };
    </script>
    <script type="text/javascript" src="../_static/jquery.js"></script>
    <script type="text/javascript" src="../_static/underscore.js"></script>
    <script type="text/javascript" src="../_static/doctools.js"></script>
    <script type="text/javascript" src="../_static/bootstrap.js"></script>
    <script type="text/javascript" src="../_static/bootstrap-sphinx.js"></script>
    <link rel="top" title="Translate Toolkit 1.9.0 documentation" href="../index.html" />
    <link rel="up" title="Converters" href="index.html" />
    <link rel="next" title="pogrep" href="pogrep.html" />
    <link rel="prev" title="pofilter" href="pofilter.html" /> 
  </head>
  <body>
  <div id="navbar" class="navbar navbar-fixed-top">
    <div class="navbar-inner">
      <div class="container-fluid">
        <a class="brand" href="../index.html">Translate Toolkit</a>
        <span class="navbar-text pull-left"><b>1.9.0</b></span>
          <ul class="nav">
            <li class="divider-vertical"></li>
            
              <li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Site <b class="caret"></b></a>
  <ul class="dropdown-menu globaltoc"><ul class="simple">
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../features.html">Features</a></li>
<li class="toctree-l1"><a class="reference internal" href="../installation.html">Installation</a></li>
<li class="toctree-l1"><a class="reference internal" href="index.html">Converters</a></li>
<li class="toctree-l1"><a class="reference internal" href="index.html#tools">Tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="index.html#scripts">Scripts</a></li>
<li class="toctree-l1"><a class="reference internal" href="../guides/index.html">Use Cases</a></li>
<li class="toctree-l1"><a class="reference internal" href="../formats/index.html">Supported formats</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../styleguide.html">Translate Styleguide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../styleguide.html#documentation">Documentation</a></li>
<li class="toctree-l1"><a class="reference internal" href="../development/building.html">Building</a></li>
<li class="toctree-l1"><a class="reference internal" href="../development/contributing.html">Contributing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../development/developers.html">Translate Toolkit Developers Guide</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../api/index.html">API</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../changelog.html">Important Changes</a></li>
<li class="toctree-l1"><a class="reference internal" href="../history.html">History of the Translate Toolkit</a></li>
<li class="toctree-l1"><a class="reference internal" href="../license.html">License</a></li>
</ul>
</ul>
</li>
              
<li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Page <b class="caret"></b></a>
  <ul class="dropdown-menu localtoc"><ul>
<li><a class="reference internal" href="#">Descriptions of all pofilter tests</a><ul>
<li><a class="reference internal" href="#adding-new-tests-and-new-language-adaptations">Adding new tests and new language adaptations</a></li>
<li><a class="reference internal" href="#test-classification">Test Classification</a></li>
<li><a class="reference internal" href="#test-description">Test Description</a><ul>
<li><a class="reference internal" href="#accelerators">accelerators</a></li>
<li><a class="reference internal" href="#acronyms">acronyms</a></li>
<li><a class="reference internal" href="#blank">blank</a></li>
<li><a class="reference internal" href="#brackets">brackets</a></li>
<li><a class="reference internal" href="#compendiumconflicts">compendiumconflicts</a></li>
<li><a class="reference internal" href="#credits">credits</a></li>
<li><a class="reference internal" href="#dialogsizes">dialogsizes</a></li>
<li><a class="reference internal" href="#doublequoting">doublequoting</a></li>
<li><a class="reference internal" href="#doublespacing">doublespacing</a></li>
<li><a class="reference internal" href="#doublewords">doublewords</a></li>
<li><a class="reference internal" href="#emails">emails</a></li>
<li><a class="reference internal" href="#endpunc">endpunc</a></li>
<li><a class="reference internal" href="#endwhitespace">endwhitespace</a></li>
<li><a class="reference internal" href="#escapes">escapes</a></li>
<li><a class="reference internal" href="#filepaths">filepaths</a></li>
<li><a class="reference internal" href="#functions">functions</a></li>
<li><a class="reference internal" href="#gconf">gconf</a></li>
<li><a class="reference internal" href="#hassuggestion">hassuggestion</a></li>
<li><a class="reference internal" href="#isfuzzy">isfuzzy</a></li>
<li><a class="reference internal" href="#isreview">isreview</a></li>
<li><a class="reference internal" href="#kdecomments">kdecomments</a></li>
<li><a class="reference internal" href="#long">long</a></li>
<li><a class="reference internal" href="#musttranslatewords">musttranslatewords</a></li>
<li><a class="reference internal" href="#newlines">newlines</a></li>
<li><a class="reference internal" href="#nplurals">nplurals</a></li>
<li><a class="reference internal" href="#notranslatewords">notranslatewords</a></li>
<li><a class="reference internal" href="#numbers">numbers</a></li>
<li><a class="reference internal" href="#options">options</a></li>
<li><a class="reference internal" href="#printf">printf</a></li>
<li><a class="reference internal" href="#puncspacing">puncspacing</a></li>
<li><a class="reference internal" href="#purepunc">purepunc</a></li>
<li><a class="reference internal" href="#sentencecount">sentencecount</a></li>
<li><a class="reference internal" href="#short">short</a></li>
<li><a class="reference internal" href="#simplecaps">simplecaps</a></li>
<li><a class="reference internal" href="#simpleplurals">simpleplurals</a></li>
<li><a class="reference internal" href="#singlequoting">singlequoting</a></li>
<li><a class="reference internal" href="#spellcheck">spellcheck</a></li>
<li><a class="reference internal" href="#startcaps">startcaps</a></li>
<li><a class="reference internal" href="#startpunc">startpunc</a></li>
<li><a class="reference internal" href="#startwhitespace">startwhitespace</a></li>
<li><a class="reference internal" href="#tabs">tabs</a></li>
<li><a class="reference internal" href="#unchanged">unchanged</a></li>
<li><a class="reference internal" href="#untranslated">untranslated</a></li>
<li><a class="reference internal" href="#urls">urls</a></li>
<li><a class="reference internal" href="#validchars">validchars</a></li>
<li><a class="reference internal" href="#variables">variables</a></li>
<li><a class="reference internal" href="#xmltags">xmltags</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</ul>
</li>
            
            
              
  <li><a href="pofilter.html"
         title="previous chapter">&laquo; pofilter</a></li>
  <li><a href="pogrep.html"
         title="next chapter">pogrep &raquo;</a></li>
            
            
              
            
          </ul>
          
            
<form class="navbar-search pull-right" action="../search.html" method="get">
  <input type="text" name="q" placeholder="Search" />
  <input type="hidden" name="check_keywords" value="yes" />
  <input type="hidden" name="area" value="default" />
</form>
          
          </ul>
        </div>
      </div>
    </div>
  </div>

<div class="container content">
   
  <div class="section" id="descriptions-of-all-pofilter-tests">
<span id="pofilter-tests"></span><span id="id1"></span><h1>Descriptions of all pofilter tests<a class="headerlink" href="#descriptions-of-all-pofilter-tests" title="Permalink to this headline">¶</a></h1>
<p>The following are descriptions of the tests available in <a class="reference internal" href="pofilter.html"><em>pofilter</em></a>,
<a class="reference external" href="http://pootle.readthedocs.org/en/latest/features/checks.html#checks" title="(in Pootle v2.5.0)"><em class="xref std std-ref">Pootle</em></a> and <em class="xref std std-ref">Virtaal</em> with some
details about what type of errors they are useful to test for and the
limitations of each test.</p>
<p>Keep in mind that the software might point to errors which are not necessarily
wrong (false positives).</p>
<p>Currently there are 47 tests.  You can always get a list of the currently
available tests by running:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">pofilter</span> <span class="o">-</span><span class="n">l</span>
</pre></div>
</div>
<p>To see test specific to a specific targetted application or group of
applications run:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">pofilter</span> <span class="o">--</span><span class="n">gnome</span> <span class="o">-</span><span class="n">l</span>
</pre></div>
</div>
<div class="section" id="adding-new-tests-and-new-language-adaptations">
<span id="id2"></span><h2>Adding new tests and new language adaptations<a class="headerlink" href="#adding-new-tests-and-new-language-adaptations" title="Permalink to this headline">¶</a></h2>
<p>If you have an idea for a new test or want to add target language adaptations
for your language then please help us with information about your test idea and
the specifics of your language.</p>
</div>
<div class="section" id="test-classification">
<span id="id3"></span><h2>Test Classification<a class="headerlink" href="#test-classification" title="Permalink to this headline">¶</a></h2>
<p>Some tests are more important than others so we have classified them to help
you determine which to run first.</p>
<ul class="simple">
<li>Critical &#8211; can break a program<ul>
<li><a class="reference internal" href="#pofilter-tests-accelerators"><em>accelerators</em></a>, <a class="reference internal" href="#pofilter-tests-escapes"><em>escapes</em></a>,
<a class="reference internal" href="#pofilter-tests-newlines"><em>newlines</em></a>, <a class="reference internal" href="#pofilter-tests-nplurals"><em>nplurals</em></a>,
<a class="reference internal" href="#pofilter-tests-printf"><em>printf</em></a>, <a class="reference internal" href="#pofilter-tests-tabs"><em>tabs</em></a>,
<a class="reference internal" href="#pofilter-tests-variables"><em>variables</em></a>, <a class="reference internal" href="#pofilter-tests-xmltags"><em>xmltags</em></a>,
<a class="reference internal" href="#pofilter-tests-dialogsizes"><em>dialogsizes</em></a></li>
</ul>
</li>
<li>Functional &#8211; may confuse the user<ul>
<li><a class="reference internal" href="#pofilter-tests-acronyms"><em>acronyms</em></a>, <a class="reference internal" href="#pofilter-tests-blank"><em>blank</em></a>,
<a class="reference internal" href="#pofilter-tests-emails"><em>emails</em></a>, <a class="reference internal" href="#pofilter-tests-filepaths"><em>filepaths</em></a>,
<a class="reference internal" href="#pofilter-tests-functions"><em>functions</em></a>, <a class="reference internal" href="#pofilter-tests-gconf"><em>gconf</em></a>,
<a class="reference internal" href="#pofilter-tests-kdecomments"><em>kdecomments</em></a>, <a class="reference internal" href="#pofilter-tests-long"><em>long</em></a>,
<a class="reference internal" href="#pofilter-tests-musttranslatewords"><em>musttranslatewords</em></a>,
<a class="reference internal" href="#pofilter-tests-notranslatewords"><em>notranslatewords</em></a>, <a class="reference internal" href="#pofilter-tests-numbers"><em>numbers</em></a>,
<a class="reference internal" href="#pofilter-tests-options"><em>options</em></a>, <a class="reference internal" href="#pofilter-tests-purepunc"><em>purepunc</em></a>,
<a class="reference internal" href="#pofilter-tests-sentencecount"><em>sentencecount</em></a>, <a class="reference internal" href="#pofilter-tests-short"><em>short</em></a>,
<a class="reference internal" href="#pofilter-tests-spellcheck"><em>spellcheck</em></a>, <a class="reference internal" href="#pofilter-tests-urls"><em>urls</em></a>,
<a class="reference internal" href="#pofilter-tests-unchanged"><em>unchanged</em></a></li>
</ul>
</li>
<li>Cosmetic &#8211; make it look better<ul>
<li><a class="reference internal" href="#pofilter-tests-brackets"><em>brackets</em></a>, <a class="reference internal" href="#pofilter-tests-doublequoting"><em>doublequoting</em></a>,
<a class="reference internal" href="#pofilter-tests-doublespacing"><em>doublespacing</em></a>, <a class="reference internal" href="#pofilter-tests-doublewords"><em>doublewords</em></a>,
<a class="reference internal" href="#pofilter-tests-endpunc"><em>endpunc</em></a>, <a class="reference internal" href="#pofilter-tests-endwhitespace"><em>endwhitespace</em></a>,
<a class="reference internal" href="#pofilter-tests-puncspacing"><em>puncspacing</em></a>, <a class="reference internal" href="#pofilter-tests-simplecaps"><em>simplecaps</em></a>,
<a class="reference internal" href="#pofilter-tests-simpleplurals"><em>simpleplurals</em></a>, <a class="reference internal" href="#pofilter-tests-startcaps"><em>startcaps</em></a>,
<a class="reference internal" href="#pofilter-tests-singlequoting"><em>singlequoting</em></a>, <a class="reference internal" href="#pofilter-tests-startpunc"><em>startpunc</em></a>,
<a class="reference internal" href="#pofilter-tests-startwhitespace"><em>startwhitespace</em></a>, <a class="reference internal" href="#pofilter-tests-validchars"><em>validchars</em></a></li>
</ul>
</li>
<li>Extraction &#8211; useful mainly for extracting certain types of string<ul>
<li><a class="reference internal" href="#pofilter-tests-compendiumconflicts"><em>compendiumconflicts</em></a>, <a class="reference internal" href="#pofilter-tests-credits"><em>credits</em></a>,
<a class="reference internal" href="#pofilter-tests-hassuggestion"><em>hassuggestion</em></a>, <a class="reference internal" href="#pofilter-tests-isfuzzy"><em>isfuzzy</em></a>,
<a class="reference internal" href="#pofilter-tests-isreview"><em>isreview</em></a>, <a class="reference internal" href="#pofilter-tests-untranslated"><em>untranslated</em></a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="test-description">
<span id="id4"></span><h2>Test Description<a class="headerlink" href="#test-description" title="Permalink to this headline">¶</a></h2>
<div class="section" id="accelerators">
<span id="pofilter-tests-accelerators"></span><h3>accelerators<a class="headerlink" href="#accelerators" title="Permalink to this headline">¶</a></h3>
<p>Checks whether <tt class="xref doc docutils literal"><span class="pre">guide/translation/accelerators</span></tt> are consistent between the
two strings.</p>
<p>Make sure you use the <tt class="docutils literal"><span class="pre">--mozilla</span></tt>, <tt class="docutils literal"><span class="pre">--kde</span></tt>, etc options so that
pofilter knows which type of accelerator it is looking for.  The test will pick
up accelerators that are missing and ones that shouldn&#8217;t be there.</p>
</div>
<div class="section" id="acronyms">
<span id="pofilter-tests-acronyms"></span><h3>acronyms<a class="headerlink" href="#acronyms" title="Permalink to this headline">¶</a></h3>
<p>Checks that acronyms that appear are unchanged.</p>
<p>If an acronym appears in the original this test will check that it appears in
the translation.  Translating acronyms is a language decision but many
languages leave them unchanged. In that case this test is useful for tracking
down translations of the acronym and correcting them.</p>
</div>
<div class="section" id="blank">
<span id="pofilter-tests-blank"></span><h3>blank<a class="headerlink" href="#blank" title="Permalink to this headline">¶</a></h3>
<p>Checks whether a translation is totally blank.</p>
<p>This will check to see if a translation has inadvertently been translated as
blank i.e. as spaces.  This is different from untranslated which is completely
empty.  This test is useful in that if something is translated as &#8221;   &#8221; it will
appear to most tools as if it is translated.</p>
</div>
<div class="section" id="brackets">
<span id="pofilter-tests-brackets"></span><h3>brackets<a class="headerlink" href="#brackets" title="Permalink to this headline">¶</a></h3>
<p>Checks that the number of brackets in both strings match.</p>
<p>If ([{ or }]) appear in the original this will check that the same number
appear in the translation.</p>
</div>
<div class="section" id="compendiumconflicts">
<span id="pofilter-tests-compendiumconflicts"></span><h3>compendiumconflicts<a class="headerlink" href="#compendiumconflicts" title="Permalink to this headline">¶</a></h3>
<p>Checks for Gettext compendium conflicts (#-#-#-#-#).</p>
<p>When you use msgcat to create a PO compendium it will insert #-#-#-#-# into
entries that are not consistent.  If the compendium is used later in a message
merge then these conflicts will appear in your translations.  This test quickly
extracts those for correction.</p>
</div>
<div class="section" id="credits">
<span id="pofilter-tests-credits"></span><h3>credits<a class="headerlink" href="#credits" title="Permalink to this headline">¶</a></h3>
<p>Checks for messages containing translation credits instead of normal.
translations.</p>
<p>Some projects have consistent ways of giving credit to translators by having a
unit or two where translators can fill in their name and possibly their contact
details. This test allows you to find these units easily to check that they are
completed correctly and also disables other tests that might incorrectly get
triggered for these units (such as urls, emails, etc.)</p>
</div>
<div class="section" id="dialogsizes">
<span id="pofilter-tests-dialogsizes"></span><h3>dialogsizes<a class="headerlink" href="#dialogsizes" title="Permalink to this headline">¶</a></h3>
<p>Checks that dialog sizes are not translated.</p>
<p>This is a Mozilla specific test.  Mozilla uses a language called XUL to define
dialogues and screens.  This can make use of CSS to specify properties of the
dialogue.  These properties include things such as the width and height of the
box.  The size might need to be changed if the dialogue size changes due to
longer translations. Thus translators can change these settings.  But you are
only meant to change the number not translate the words &#8216;width&#8217; or &#8216;height&#8217;.
This check capture instances where these are translated.  It will also catch
other types of errors in these units.</p>
</div>
<div class="section" id="doublequoting">
<span id="pofilter-tests-doublequoting"></span><h3>doublequoting<a class="headerlink" href="#doublequoting" title="Permalink to this headline">¶</a></h3>
<p>Checks whether doublequoting is consistent between the two strings.</p>
<p>Checks on double quotes &#8221; to ensure that you have the same number in both the
original and the translated string. This tests takes into account that several
languages use different quoting characters, and will test for them instead.</p>
</div>
<div class="section" id="doublespacing">
<span id="pofilter-tests-doublespacing"></span><h3>doublespacing<a class="headerlink" href="#doublespacing" title="Permalink to this headline">¶</a></h3>
<p>Checks for bad double-spaces by comparing to original.</p>
<p>This will identify if you have [space][space] in when you don&#8217;t have it in the
original or it appears in the original but not in your translation. Some of
these are spurious and how you correct them depends on the conventions of your
language.</p>
</div>
<div class="section" id="doublewords">
<span id="pofilter-tests-doublewords"></span><h3>doublewords<a class="headerlink" href="#doublewords" title="Permalink to this headline">¶</a></h3>
<p>Checks for repeated words in the translation.</p>
<p>Words that have been repeated in a translation will be highlighted with this
test e.g. &#8220;the the&#8221;, &#8220;a a&#8221;.  These are generally typos that need correcting.
Some languages may have valid repeated words in their structure, in that case
either ignore those instances or switch this test off using the
<tt class="docutils literal"><span class="pre">--excludefilters</span></tt> option.</p>
</div>
<div class="section" id="emails">
<span id="pofilter-tests-emails"></span><h3>emails<a class="headerlink" href="#emails" title="Permalink to this headline">¶</a></h3>
<p>Checks to see that emails are not translated.</p>
<p>Generally you should not be translating email addresses.  This check will look
to see that email addresses e.g. <a class="reference external" href="mailto:info&#37;&#52;&#48;example&#46;com">info<span>&#64;</span>example<span>&#46;</span>com</a> are not translated.  In some
cases of course you should translate the address but generally you shouldn&#8217;t.</p>
</div>
<div class="section" id="endpunc">
<span id="pofilter-tests-endpunc"></span><h3>endpunc<a class="headerlink" href="#endpunc" title="Permalink to this headline">¶</a></h3>
<p>Checks whether punctuation at the end of the strings match.</p>
<p>This will ensure that the ending of your translation has the same punctuation
as the original.  E.g. if it ends in :[space] then so should yours.  It is
useful for ensuring that you have ellipses [...] in all your translations, not
simply three separate full-stops. You may pick up some errors in the original:
feel free to keep your translation and notify the programmers.  In some
languages, characters such as ? ! are always preceded by a space e.g. [space]?
— do what your language customs dictate. Other false positives you will notice
are, for example, if through changes in word-order you add &#8221;), etc. at the end
of the sentence. Do not change these: your language word-order takes
precedence.</p>
<p>It must be noted that if you are tempted to leave out [full-stop] or [colon] or
add [full-stop] to a sentence, that often these have been done for a reason,
e.g. a list where fullstops make it look cluttered.  So, initially match them
with the English, and make changes once the program is being used.</p>
<p>This check is aware of several language conventions for punctuation characters,
such as the custom question marks for Greek and Arabic, Devenagari Danda,
full-width punctuation for CJK languages, etc.  Support for your language can
be added easily if it is not there yet.</p>
</div>
<div class="section" id="endwhitespace">
<span id="pofilter-tests-endwhitespace"></span><h3>endwhitespace<a class="headerlink" href="#endwhitespace" title="Permalink to this headline">¶</a></h3>
<p>Checks whether whitespace at the end of the strings matches.</p>
<p>Operates the same as endpunc but is only concerned with whitespace. This filter
is particularly useful for those strings which will evidently be followed by
another string in the program, e.g. [Password: ] or [Enter your username: ].
The whitespace is an inherent part of the string. This filter makes sure you
don&#8217;t miss those important but otherwise invisible spaces!</p>
<p>If your language uses full-width punctuation (like Chinese), the visual spacing
in the character might be enough without an added extra space.</p>
</div>
<div class="section" id="escapes">
<span id="pofilter-tests-escapes"></span><h3>escapes<a class="headerlink" href="#escapes" title="Permalink to this headline">¶</a></h3>
<p>Checks whether escaping is consistent between the two strings.</p>
<p>Checks escapes such as <tt class="docutils literal"><span class="pre">\n</span></tt> <tt class="docutils literal"><span class="pre">\uNNNN</span></tt> to ensure that if they exist in the.
original that you have them in the translation.</p>
</div>
<div class="section" id="filepaths">
<span id="pofilter-tests-filepaths"></span><h3>filepaths<a class="headerlink" href="#filepaths" title="Permalink to this headline">¶</a></h3>
<p>Checks that file paths have not been translated.</p>
<p>Checks that paths such as <tt class="docutils literal"><span class="pre">/home/user1</span></tt> have not been translated.  Generally
you do not translate a file-path, unless it is being used as an example, e.g.
[your_user_name/path/to/filename.conf].</p>
</div>
<div class="section" id="functions">
<span id="pofilter-tests-functions"></span><h3>functions<a class="headerlink" href="#functions" title="Permalink to this headline">¶</a></h3>
<p>Checks to see that function names are not translated.</p>
<p>Checks that function names e.g. <tt class="docutils literal"><span class="pre">rgb()</span></tt> or <tt class="docutils literal"><span class="pre">getEntity.Name()</span></tt> are not
translated.</p>
</div>
<div class="section" id="gconf">
<span id="pofilter-tests-gconf"></span><h3>gconf<a class="headerlink" href="#gconf" title="Permalink to this headline">¶</a></h3>
<p>Checks if we have any gconf config settings translated.</p>
<p>Gconf settings should not be translated so this check checks that gconf
settings such as &#8220;name&#8221; or &#8220;modification_date&#8221; are not translated in the
translation.  It allows you to change the surrounding quotes but will ensure
that the setting values remain untranslated.</p>
</div>
<div class="section" id="hassuggestion">
<span id="pofilter-tests-hassuggestion"></span><h3>hassuggestion<a class="headerlink" href="#hassuggestion" title="Permalink to this headline">¶</a></h3>
<p>Checks if there is at least one suggested translation for this unit.</p>
<p>If a message has a suggestion (an alternate translation stored in alt-trans
units in XLIFF and .pending files in PO) then these will be extracted.  This is
used by Pootle and is probably only useful in pofilter when using XLIFF files.</p>
</div>
<div class="section" id="isfuzzy">
<span id="pofilter-tests-isfuzzy"></span><h3>isfuzzy<a class="headerlink" href="#isfuzzy" title="Permalink to this headline">¶</a></h3>
<p>Checks if the po element has been marked fuzzy.</p>
<p>If a message is marked fuzzy in the PO file then it is extracted.  Note this is
different from <tt class="docutils literal"><span class="pre">--fuzzy</span></tt> and <tt class="docutils literal"><span class="pre">--nofuzzy</span></tt> options which specify
whether tests should be performed against messages marked fuzzy.</p>
</div>
<div class="section" id="isreview">
<span id="pofilter-tests-isreview"></span><h3>isreview<a class="headerlink" href="#isreview" title="Permalink to this headline">¶</a></h3>
<p>Checks if the po element has been marked for review.</p>
<p>If you have made use of the &#8216;review&#8217; flags in your translations:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="c"># (review) reason for review</span>
<span class="c"># (pofilter) testname: explanation for translator</span>
</pre></div>
</div>
<p>Then if a message is marked for review in the PO file it will be extracted.
Note this is different from <tt class="docutils literal"><span class="pre">--review</span></tt> and <tt class="docutils literal"><span class="pre">--noreview</span></tt> options which
specify whether tests should be performed against messages already marked as
under review.</p>
</div>
<div class="section" id="kdecomments">
<span id="pofilter-tests-kdecomments"></span><h3>kdecomments<a class="headerlink" href="#kdecomments" title="Permalink to this headline">¶</a></h3>
<p>Checks to ensure that no KDE style comments appear in the translation.</p>
<p>KDE style translator comments appear in PO files as <tt class="docutils literal"><span class="pre">&quot;_:</span> <span class="pre">comment\n&quot;</span></tt>. New
translators often translate the comment.  This test tries to identify instances
where the comment has been translated.</p>
</div>
<div class="section" id="long">
<span id="pofilter-tests-long"></span><h3>long<a class="headerlink" href="#long" title="Permalink to this headline">¶</a></h3>
<p>Checks whether a translation is much longer than the original string.</p>
<p>This is most useful in the special case where the translation is multiple
characters long while the source text is only 1 character long.  Otherwise, we
use a general ratio that will catch very big differences but is set
conservatively to limit the number of false positives.</p>
</div>
<div class="section" id="musttranslatewords">
<span id="pofilter-tests-musttranslatewords"></span><h3>musttranslatewords<a class="headerlink" href="#musttranslatewords" title="Permalink to this headline">¶</a></h3>
<p>Checks that words configured as definitely translatable don&#8217;t appear in the
translation.</p>
<p>If for instance in your language you decide that you must translate &#8216;OK&#8217; then
this test will flag any occurances of &#8216;OK&#8217; in the translation if it appeared in
the source string.  You must specify a file containing all of the <em>must
translate</em> words using <tt class="docutils literal"><span class="pre">--musttranslatefile</span></tt>.</p>
</div>
<div class="section" id="newlines">
<span id="pofilter-tests-newlines"></span><h3>newlines<a class="headerlink" href="#newlines" title="Permalink to this headline">¶</a></h3>
<p>Checks whether newlines are consistent between the two strings.</p>
<p>Counts the number of <tt class="docutils literal"><span class="pre">\n</span></tt> newlines (and variants such as <tt class="docutils literal"><span class="pre">\r\n</span></tt>) and
reports and error if they differ.</p>
</div>
<div class="section" id="nplurals">
<span id="pofilter-tests-nplurals"></span><h3>nplurals<a class="headerlink" href="#nplurals" title="Permalink to this headline">¶</a></h3>
<p>Checks for the correct number of noun forms for plural translations.</p>
<p>This uses the plural information in the language module of the toolkit.  This
is the same as the Gettext nplural value.  It will check that the number of
plurals required is the same as the number supplied in your translation.</p>
</div>
<div class="section" id="notranslatewords">
<span id="pofilter-tests-notranslatewords"></span><h3>notranslatewords<a class="headerlink" href="#notranslatewords" title="Permalink to this headline">¶</a></h3>
<p>Checks that words configured as untranslatable appear in the translation too.</p>
<p>Many brand names should not be translated, this test allows you to easily make
sure that words like: Word, Excel, Impress, Calc, etc. are not translated.  You
must specify a file containing all of the <em>no translate</em> words using
<tt class="docutils literal"><span class="pre">--notranslatefile</span></tt>.</p>
</div>
<div class="section" id="numbers">
<span id="pofilter-tests-numbers"></span><h3>numbers<a class="headerlink" href="#numbers" title="Permalink to this headline">¶</a></h3>
<p>Checks whether numbers of various forms are consistent between the two strings.</p>
<p>You will see some errors where you have either written the number in full or
converted it to the digit in your translation.  Also changes in order will
trigger this error.</p>
</div>
<div class="section" id="options">
<span id="pofilter-tests-options"></span><h3>options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h3>
<p>Checks that command line options are not translated.</p>
<p>In messages that contain command line options, such as <tt class="docutils literal"><span class="pre">--help</span></tt>, this test
will check that these remain untranslated.  These could be translated in the
future if programs can create a mechanism to allow this, but currently they are
not translated.  If the options has a parameter, e.g. <tt class="docutils literal"><span class="pre">--file=FILE</span></tt>, then
the test will check that the parameter has been translated.</p>
</div>
<div class="section" id="printf">
<span id="pofilter-tests-printf"></span><h3>printf<a class="headerlink" href="#printf" title="Permalink to this headline">¶</a></h3>
<p>Checks whether printf format strings match.</p>
<p>If the printf formatting variables are not identical, then this will indicate
an error.  Printf statements are used by programs to format output in a human
readable form (they are place holders for variable data).  They allow you to
specify lengths of string variables, string padding, number padding, precision,
etc. Generally they will look like this: <tt class="docutils literal"><span class="pre">%d</span></tt>, <tt class="docutils literal"><span class="pre">%5.2f</span></tt>, <tt class="docutils literal"><span class="pre">%100s</span></tt>, etc. The
test can also manage variables-reordering using the <tt class="docutils literal"><span class="pre">%1$s</span></tt> syntax.  The
variables&#8217; type and details following data are tested to ensure that they are
strictly identical, but they may be reordered.</p>
<div class="admonition-see-also admonition seealso">
<p class="first admonition-title">See also</p>
<p class="last"><a class="reference external" href="https://en.wikipedia.org/wiki/Printf_format_string">printf Format String</a></p>
</div>
</div>
<div class="section" id="puncspacing">
<span id="pofilter-tests-puncspacing"></span><h3>puncspacing<a class="headerlink" href="#puncspacing" title="Permalink to this headline">¶</a></h3>
<p>Checks for bad spacing after punctuation.</p>
<p>In the case of [full-stop][space] in the original, this test checks that your
translation does not remove the space.  It checks also for [comma], [colon],
etc.</p>
<p>Some languages don&#8217;t use spaces after common punctuation marks, especially
where full-width punctuation marks are used. This check will take that into
account.</p>
</div>
<div class="section" id="purepunc">
<span id="pofilter-tests-purepunc"></span><h3>purepunc<a class="headerlink" href="#purepunc" title="Permalink to this headline">¶</a></h3>
<p>Checks that strings that are purely punctuation are not changed.</p>
<p>This extracts strings like &#8220;+&#8221; or &#8220;-&#8221; as these usually should not be changed.</p>
</div>
<div class="section" id="sentencecount">
<span id="pofilter-tests-sentencecount"></span><h3>sentencecount<a class="headerlink" href="#sentencecount" title="Permalink to this headline">¶</a></h3>
<p>Checks that the number of sentences in both strings match.</p>
<p>Adds the number of sentences to see that the sentence count is the same between
the original and translated string. You may not always want to use this test,
if you find you often need to reformat your translation, because the original
is badly-expressed, or because the structure of your language works better that
way. Do what works best for your language: it&#8217;s the meaning of the original you
want to convey, not the exact way it was written in the English.</p>
</div>
<div class="section" id="short">
<span id="pofilter-tests-short"></span><h3>short<a class="headerlink" href="#short" title="Permalink to this headline">¶</a></h3>
<p>Checks whether a translation is much shorter than the original string.</p>
<p>This is most useful in the special case where the translation is 1 characters
long while the source text is multiple characters long.  Otherwise, we use a
general ratio that will catch very big differences but is set conservatively to
limit the number of false positives.</p>
</div>
<div class="section" id="simplecaps">
<span id="pofilter-tests-simplecaps"></span><h3>simplecaps<a class="headerlink" href="#simplecaps" title="Permalink to this headline">¶</a></h3>
<p>Checks the capitalisation of two strings isn&#8217;t wildly different.</p>
<p>This will pick up many false positives, so don&#8217;t be a slave to it.  It is
useful for identifying translations that don&#8217;t start with a capital letter
(upper-case letter) when they should, or those that do when they shouldn&#8217;t.  It
will also highlight sentences that have extra capitals; depending on the
capitalisation convention of your language, you might want to change these to
Title Case, or change them all to normal sentence case.</p>
</div>
<div class="section" id="simpleplurals">
<span id="pofilter-tests-simpleplurals"></span><h3>simpleplurals<a class="headerlink" href="#simpleplurals" title="Permalink to this headline">¶</a></h3>
<p>Checks for English style plural(s) for you to review.</p>
<p>This test will extract any message that contains words with a final &#8220;(s)&#8221; in
the source text.  You can then inspect the message, to check that the correct
<a class="reference external" href="http://qooxdoo.org/l10n/pluralforms">plural form</a> has been used for your
language.  In some languages, plurals are made by adding text at the beginning
of words, making the English style messy.  In this case, they often revert to
the plural form.  This test allows an editor to check that the plurals used are
correct.  Be aware that this test may create a number of false positives.</p>
<p>For languages with no plural forms (only one noun form) this test will simply
test that nothing like &#8220;(s)&#8221; was used in the translation.</p>
</div>
<div class="section" id="singlequoting">
<span id="pofilter-tests-singlequoting"></span><h3>singlequoting<a class="headerlink" href="#singlequoting" title="Permalink to this headline">¶</a></h3>
<p>Checks whether singlequoting is consistent between the two strings.</p>
<p>The same as doublequoting but checks for the &#8216; character.  Because this is used
in contractions like it&#8217;s and in possessive forms like user&#8217;s, this test can
output spurious errors if your language doesn&#8217;t use such forms.  If a quote
appears at the end of a sentence in the translation, i.e. &#8216;[full-stop], this
might not be detected properly by the check.</p>
</div>
<div class="section" id="spellcheck">
<span id="pofilter-tests-spellcheck"></span><h3>spellcheck<a class="headerlink" href="#spellcheck" title="Permalink to this headline">¶</a></h3>
<p>Checks for words that don&#8217;t pass a spell-check.</p>
<p>This test will check for misspelled words in your translation.  The test first
checks for misspelled words in the original (usually English) text, and adds
those to an exclusion list. The advantage of this exclusion is that many words
that are specific to the application will not raise errors e.g. program names,
brand names, function names.</p>
<p>The checker works with <a class="reference external" href="http://pyenchant.sourceforge.net/">PyEnchant</a>. You
need to have PyEnchant installed as well as a dictionary for your language (for
example, one of the <a class="reference external" href="http://wiki.services.openoffice.org/wiki/Dictionaries">Hunspell</a> or <a class="reference external" href="http://ftp.gnu.org/gnu/aspell/dict/">aspell</a> dictionaries).  This test will only
work if you have specified the <tt class="docutils literal"><span class="pre">--language</span></tt> option.</p>
<p>The pofilter error that is created, lists the misspelled word, plus
suggestions returned from the spell checker.  That makes it easy for you to
identify the word and select a replacement.</p>
</div>
<div class="section" id="startcaps">
<span id="pofilter-tests-startcaps"></span><h3>startcaps<a class="headerlink" href="#startcaps" title="Permalink to this headline">¶</a></h3>
<p>Checks that the message starts with the correct capitalisation.</p>
<p>After stripping whitespace and common punctuation characters, it then checks to
see that the first remaining character is correctly capitalised.  So, if the
sentence starts with an upper-case letter, and the translation does not, an
error is produced.</p>
<p>This check is entirely disabled for many languages that don&#8217;t make a
distinction between upper and lower case. Contact us if this is not yet
disabled for your language.</p>
</div>
<div class="section" id="startpunc">
<span id="pofilter-tests-startpunc"></span><h3>startpunc<a class="headerlink" href="#startpunc" title="Permalink to this headline">¶</a></h3>
<p>Checks whether punctuation at the beginning of the strings match.</p>
<p>Operates as endpunc but you will probably see fewer errors.</p>
</div>
<div class="section" id="startwhitespace">
<span id="pofilter-tests-startwhitespace"></span><h3>startwhitespace<a class="headerlink" href="#startwhitespace" title="Permalink to this headline">¶</a></h3>
<p>Checks whether whitespace at the beginning of the strings matches.</p>
<p>As in endwhitespace but you will see fewer errors.</p>
</div>
<div class="section" id="tabs">
<span id="pofilter-tests-tabs"></span><h3>tabs<a class="headerlink" href="#tabs" title="Permalink to this headline">¶</a></h3>
<p>Checks whether tabs are consistent between the two strings.</p>
<p>Counts the number of <tt class="docutils literal"><span class="pre">\t</span></tt> tab markers and reports an error if they differ.</p>
</div>
<div class="section" id="unchanged">
<span id="pofilter-tests-unchanged"></span><h3>unchanged<a class="headerlink" href="#unchanged" title="Permalink to this headline">¶</a></h3>
<p>Checks whether a translation is basically identical to the original string.</p>
<p>This checks to see if the translation isn&#8217;t just a copy of the English
original.  Sometimes, this is what you want, but other times you will detect
words that should have been translated.</p>
</div>
<div class="section" id="untranslated">
<span id="pofilter-tests-untranslated"></span><h3>untranslated<a class="headerlink" href="#untranslated" title="Permalink to this headline">¶</a></h3>
<p>Checks whether a string has been translated at all.</p>
<p>This check is really only useful if you want to extract untranslated strings so
that they can be translated independently of the main work.</p>
</div>
<div class="section" id="urls">
<span id="pofilter-tests-urls"></span><h3>urls<a class="headerlink" href="#urls" title="Permalink to this headline">¶</a></h3>
<p>Checks to see that URLs are not translated.</p>
<p>This checks only basic URLs (http, ftp, mailto etc.) not all URIs (e.g. afp,
smb, file).  Generally, you don&#8217;t want to translate URLs, unless they are
example URLs (<a class="reference external" href="http://your_server.com/filename.html">http://your_server.com/filename.html</a>).  If the URL is for
configuration information, then you need to query the developers about placing
configuration information in PO files.  It shouldn&#8217;t really be there, unless it
is very clearly marked: such information should go into a configuration file.</p>
</div>
<div class="section" id="validchars">
<span id="pofilter-tests-validchars"></span><h3>validchars<a class="headerlink" href="#validchars" title="Permalink to this headline">¶</a></h3>
<p>Checks that only characters specified as valid appear in the translation.</p>
<p>Often during character conversion to and from UTF-8 you get some strange
characters appearing in your translation.  This test presents a simple way to
try and identify such errors.</p>
<p>This test will only run of you specify the <tt class="docutils literal"><span class="pre">--validcharsfile</span></tt> command line
option.  This file contains all the characters that are valid in your language.
You must use UTF-8 encoding for the characters in the file.</p>
<p>If the test finds any characters not in your valid characters file then the
test will print the character together with its Unicode value (e.g. 002B).</p>
</div>
<div class="section" id="variables">
<span id="pofilter-tests-variables"></span><h3>variables<a class="headerlink" href="#variables" title="Permalink to this headline">¶</a></h3>
<p>Checks whether variables of various forms are consistent between the two strings.</p>
<p>This checks to make sure that variables that appear in the original also appear
in the translation.  Make sure you use the <tt class="docutils literal"><span class="pre">--kde</span></tt>, <tt class="docutils literal"><span class="pre">--openoffice</span></tt>,
etc flags as these define what variables will be searched for.  It does not at
the moment cope with variables that use the reordering syntax of Gettext PO
files.</p>
</div>
<div class="section" id="xmltags">
<span id="pofilter-tests-xmltags"></span><h3>xmltags<a class="headerlink" href="#xmltags" title="Permalink to this headline">¶</a></h3>
<p>Checks that <tt class="xref doc docutils literal"><span class="pre">XML/HTML</span></tt> tags have not been
translated.</p>
<p>This check finds the number of tags in the source string and checks that the
same number are in the translation.  If the counts don&#8217;t match then either the
tag is missing or it was mistakenly translated by the translator, both of which
are errors.</p>
<p>The check ignores tags or things that look like tags that cover the whole
string e.g. &#8220;&lt;Error&gt;&#8221; but will produce false positives for things like &#8220;An
&lt;Error&gt; occurred&#8221; as here &#8220;Error&#8221; should be translated.  It also will allow
translation of the alt attribute in e.g. &lt;img src=bob.png alt=&#8221;Image
description&#8221;&gt; or similar translatable attributes in OpenOffice.org help files.</p>
</div>
</div>
</div>


</div>
<hr>

<footer class="footer">
  <div class="container">
    <p class="pull-right"><a href="#">Back to top ↑</a></p>
    <ul class="unstyled muted">
      <li><small>
        &copy; 2012, Translate.org.za.<br/>
      </small></li>
      <li><small>
      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.1.3.
      </small></li>
    </ul>
  </div>
</footer>
  </body>
</html>