Difference between revisions of "Trmorph"

From Apertium
Jump to navigation Jump to search
 
(7 intermediate revisions by one other user not shown)
Line 1: Line 1:
  +
{{TOCD}}
 
'''Trmorph''' is a GPL morphological analyser and generator for [[Turkish]] that can be compiled with HFST.
 
'''Trmorph''' is a GPL morphological analyser and generator for [[Turkish]] that can be compiled with HFST.
  +
  +
== Current State ==
  +
* Number of stems: {{:Trmorph/stems}}
  +
* Coverage: {{:Trmorph/coverage/average}}
  +
  +
{| class="wikitable"
  +
|-
  +
! corpus !! words !! coverage
  +
|-
  +
|SETimes
  +
|align="right"| 4.1M
  +
| ~{{:Trmorph/coverage/SETimes}}%
  +
|-
  +
|}
   
 
==Installation==
 
==Installation==
   
 
<pre>
 
<pre>
$ git clone http://www.let.rug.nl/coltekin/trmorph/trmorph.git
+
$ git clone https://github.com/coltekin/TRmorph trmorph
 
</pre>
 
</pre>
   
 
You should have a directory now called <code>trmorph/</code>, switch into it, and run the following command:
 
You should have a directory now called <code>trmorph/</code>, switch into it, and run the following command:
  +
  +
<pre>
  +
$ cd trmorph/
  +
</pre>
  +
  +
Now switch to the apertium branch:
  +
  +
<pre>
  +
$ git checkout apertium
  +
</pre>
  +
  +
Then do:
   
 
<pre>
 
<pre>
Line 31: Line 58:
 
<pre>
 
<pre>
 
$ echo "Römorkör, büyük tekneleri iterek veya çekerek manevra yapmalarına yardımcı olur. " | hfst-proc tr.automorf.hfst
 
$ echo "Römorkör, büyük tekneleri iterek veya çekerek manevra yapmalarına yardımcı olur. " | hfst-proc tr.automorf.hfst
^Römorkör/*Römorkör$, ^büyük/*büyük$ ^tekneleri/*tekneleri$ ^iterek/it<v><cv_erek>$ ^veya/veya<cnj>$
+
^Römorkör/Römorkör<n>/Römorkör<n><3s>$,
  +
^büyük/büyük<adj>/büyük<adj><Djn_0><n>/büyük<adj><Djn_0><n><3s>$
^çekerek/çek<v><cv_erek>$ ^manevra/*manevra$
 
^yapmalarına/yap<v><D_mA><n><pl><gen><3s><v><t_imp><2s>/yap<v><D_mA><n><pl><p2s><3s><v><t_imp><2s>/yap<v><VN_ma><pl><gen><3s><v><t_imp><2s>/yap<v><VN_ma><pl><p2s><3s><v><t_imp><2s>$
+
^tekneleri/tekne<n><p3p>/tekne<n><p3p><3s>/tekne<n><pl><acc>/tekne<n><pl><acc><3s>/tekne<n><pl><p3s>/tekne<n><pl><p3s><3s>$
  +
^iterek/it<v><cv>$
^yardımcı/*yardımcı$ ^olur/ol<v><t_aor><3s>/ol<v><t_aor><cv>$.
 
  +
^veya/veya<cnjadv>/veya<cnjcoo>/veya<n>/veya<n><3s>$
 
^çekerek/çek<v><cv>/çekerek<np>/çekerek<np><3s>$ ^manevra/manevra<n>/manevra<n><3s>$
  +
^yapmalarına/yap<v><D_mA><n><p3p><dat>/yap<v><D_mA><n><p3p><dat><3s>/yap<v><D_mA><n><pl><p2s><dat>/yap<v><D_mA><n><pl><p2s><dat><3s>/yap<v><D_mA><n><pl><p3s><dat>/yap<v><D_mA><n><pl><p3s><dat><3s>/yap<v><vn><p3p><dat>/yap<v><vn><p3p><dat><3s>/yap<v><vn><pl><p2s><dat>/yap<v><vn><pl><p2s><dat><3s>/yap<v><vn><pl><p3s><dat>/yap<v><vn><pl><p3s><dat><3s>$
  +
^yardımcı/yardım<n><D_CI><adj>/yardım<n><D_CI><adj><Djn_0><n>/yardım<n><D_CI><adj><Djn_0><n><3s>/yardım<n><D_CI><n>/yardım<n><D_CI><n><3s>$
  +
^olur/ol<v><t_aor><3s>/olur<n>/olur<n><3s>/olur<np>/olur<np><3s>$.
 
</pre>
 
</pre>
   
  +
==Development==
  +
  +
===Update===
  +
  +
<pre>
  +
$ git pull origin <branchname>
  +
</pre>
  +
  +
===Switch branch===
  +
  +
<pre>
  +
$ git checkout apertium
  +
Switched to branch 'apertium'
  +
Your branch is behind 'origin/apertium' by 11 commits, and can be fast-forwarded.
  +
  +
$ git pull origin apertium
  +
  +
</pre>
   
 
[[Category:Tools]]
 
[[Category:Tools]]

Latest revision as of 18:12, 8 January 2012

Trmorph is a GPL morphological analyser and generator for Turkish that can be compiled with HFST.

Current State[edit]

  • Number of stems: 37,300
  • Coverage: ~90.6%
corpus words coverage
SETimes 4.1M ~90.6%

Installation[edit]

$ git clone https://github.com/coltekin/TRmorph trmorph

You should have a directory now called trmorph/, switch into it, and run the following command:

$ cd trmorph/

Now switch to the apertium branch:

$ git checkout apertium

Then do:

$ FSTC=hfst make

This should build the transducer trmorph.a, now you need to turn that into a format suitable for use with hfst-proc

$ hfst-invert -i trmorph.a | hfst-fst2fst -O -o tr.automorf.hfst

If you want a generator, you can simply do:

$ hfst-fst2fst -O -i trmorph.a -o tr.autogen.hfst

Usage[edit]

You can use it, as with other HFST compatible transducers with hfst-proc:

$ echo "Römorkör, büyük tekneleri iterek veya çekerek manevra yapmalarına yardımcı olur. " | hfst-proc tr.automorf.hfst
^Römorkör/Römorkör<n>/Römorkör<n><3s>$, 
^büyük/büyük<adj>/büyük<adj><Djn_0><n>/büyük<adj><Djn_0><n><3s>$ 
^tekneleri/tekne<n><p3p>/tekne<n><p3p><3s>/tekne<n><pl><acc>/tekne<n><pl><acc><3s>/tekne<n><pl><p3s>/tekne<n><pl><p3s><3s>$ 
^iterek/it<v><cv>$ 
^veya/veya<cnjadv>/veya<cnjcoo>/veya<n>/veya<n><3s>$ 
^çekerek/çek<v><cv>/çekerek<np>/çekerek<np><3s>$ ^manevra/manevra<n>/manevra<n><3s>$ 
^yapmalarına/yap<v><D_mA><n><p3p><dat>/yap<v><D_mA><n><p3p><dat><3s>/yap<v><D_mA><n><pl><p2s><dat>/yap<v><D_mA><n><pl><p2s><dat><3s>/yap<v><D_mA><n><pl><p3s><dat>/yap<v><D_mA><n><pl><p3s><dat><3s>/yap<v><vn><p3p><dat>/yap<v><vn><p3p><dat><3s>/yap<v><vn><pl><p2s><dat>/yap<v><vn><pl><p2s><dat><3s>/yap<v><vn><pl><p3s><dat>/yap<v><vn><pl><p3s><dat><3s>$ 
^yardımcı/yardım<n><D_CI><adj>/yardım<n><D_CI><adj><Djn_0><n>/yardım<n><D_CI><adj><Djn_0><n><3s>/yardım<n><D_CI><n>/yardım<n><D_CI><n><3s>$ 
^olur/ol<v><t_aor><3s>/olur<n>/olur<n><3s>/olur<np>/olur<np><3s>$. 

Development[edit]

Update[edit]

$ git pull origin <branchname>

Switch branch[edit]

$ git checkout apertium
Switched to branch 'apertium'
Your branch is behind 'origin/apertium' by 11 commits, and can be fast-forwarded.

$ git pull origin apertium