Difference between revisions of "Speling tools"

From Apertium
Jump to navigation Jump to search
Line 48: Line 48:


==See also==
==See also==



* [[Paradigm chopper]]
* [[Paradigm chopper]]

==External link==

* [https://svn.code.sf.net/p/apertium/svn/trunk/apertium-tools/speling Tools in SVN]



[[Category:Tools]]
[[Category:Tools]]

Revision as of 09:32, 7 July 2016

The Speling tools are a number of scripts and programs which process Speling format files, they consist of:

  • split-speling.py -- To split a full-form list into manageable chunks for paradigm chopper
  • speling-paradigms.py -- To generate all possible paradigms for a given full-form list
  • paradigm-chopper.py -- To merge identical paradigms.

And can be found in Apertium SVN under trunk/apertium-tools/speling.

Example usage

$ cat /tmp/test 
house ; house ; sg ; n
house ; houses ; pl ; n
cat ; cat ; sg ; n
cat ; cats ; pl ; n
wolf ; wolf ; sg ; n
wolf ; wolves ; pl ; n

$ python3 speling-paradigms.py /tmp/test >/tmp/test.dix
house
wol
cat

$ python3 paradigm-chopperFast.py /tmp/test.dix > /tmp/test2.dix

$ cat /tmp/test2.dix 
<dictionary>
  <pardefs>
    <pardef n="wol/f__n">
      <e><p>          <l>f</l><r>f<s n="n"/><s n="sg"/></r></p></e>
      <e><p>          <l>ves</l><r>f<s n="n"/><s n="pl"/></r></p></e>
    </pardef>
    <pardef n="cat__n">
      <e><p><l/><r><s n="n"/><s n="sg"/></r></p></e>
      <e><p>          <l>s</l><r><s n="n"/><s n="pl"/></r></p></e>
    </pardef>
  </pardefs>
  <section id="main" type="standard">
    <e lm="house"><i>house</i><par n="cat__n"/></e>
    <e lm="wolf"><i>wol</i><par n="wol/f__n"/></e>
    <e lm="cat"><i>cat</i><par n="cat__n"/></e>

  </section>
</dictionary>

See also

External link