Difference between revisions of "Kazakh and Sakha"

From Apertium
Jump to navigation Jump to search
m
Line 27: Line 27:
 
<pre>make</pre>
 
<pre>make</pre>
   
  +
==Development workflow==
  +
  +
===Transfer rules===
  +
  +
Example of adding <loc> -> <dat> rule
  +
  +
In apertium-kaz-sah.kaz-sah.t1x file
  +
  +
Adding to section <section-def-cats>
  +
<pre><def-cat n="nom">
  +
<cat-item tags="n.*"/>
  +
</def-cat></pre>
  +
  +
Adding to section <section-def-attrs>
  +
<pre><def-attr n="a_cas">
  +
<attr-item tags="nom"/>
  +
<attr-item tags="dat"/>
  +
<attr-item tags="loc"/>
  +
</def-attr></pre>
  +
  +
Adding to section <section-def-macros>
  +
<pre><def-macro n="f_default_nom1" npar="1">
  +
<choose><when><test><equal><clip pos="1" side="tl" part="a_cas"/><lit-tag v="loc"/></equal></test>
  +
<let><clip pos="1" side="tl" part="a_cas"/><lit-tag v="dat"/></let></when></choose>
  +
</def-macro></pre>
  +
  +
Adding to section <section-rules>
  +
<pre><rule comment="REGLA: NOUN">
  +
<pattern>
  +
<pattern-item n="nom"/>
  +
</pattern>
  +
<action>
  +
<call-macro n="f_default_nom1">
  +
<with-param pos="1"/>
  +
</call-macro>
  +
<out>
  +
<chunk name="n" case="caseFirstWord">
  +
<tags>
  +
<tag><lit-tag v="SN"/></tag>
  +
</tags>
  +
<lu>
  +
<clip pos="1" side="tl" part="whole"/>
  +
</lu>
  +
</chunk>
  +
</out>
  +
</action>
  +
</rule></pre>
 
[[Category:Kazakh and Sakha|*]]
 
[[Category:Kazakh and Sakha|*]]
 
[[Category:Kazakh]]
 
[[Category:Kazakh]]

Revision as of 20:03, 28 March 2018

This is Apertium translation pair for Kazakh and Sakha. The pair is currently located in incubator.

Installation

You will need:

Install apertium-kaz

git clone https://github.com/apertium/apertium-kaz.git
cd apertium-kaz
./autogen.sh
make

Install apertium-sah

git clone https://github.com/apertium/apertium-sah.git
cd apertium-sah
./autogen.sh
make

Install apertium-kaz-sah

git clone https://github.com/apertium/apertium-kaz-sah.git
cd apertium-kaz-sah
./autogen.sh --with-lang1=../apertium-kaz --with-lang2=../apertium-sah    # paths to apertium-kaz and apertium-sah source folders
make

Development workflow

Transfer rules

Example of adding <loc> -> <dat> rule

In apertium-kaz-sah.kaz-sah.t1x file

Adding to section <section-def-cats>

<def-cat n="nom">
  <cat-item tags="n.*"/>
</def-cat>

Adding to section <section-def-attrs>

<def-attr n="a_cas">
  <attr-item tags="nom"/>
  <attr-item tags="dat"/>
  <attr-item tags="loc"/>
</def-attr>

Adding to section <section-def-macros>

<def-macro n="f_default_nom1" npar="1">
  <choose><when><test><equal><clip pos="1" side="tl" part="a_cas"/><lit-tag v="loc"/></equal></test>
  <let><clip pos="1" side="tl" part="a_cas"/><lit-tag v="dat"/></let></when></choose>
</def-macro>

Adding to section <section-rules>

<rule comment="REGLA: NOUN">
  <pattern>
    <pattern-item n="nom"/>
  </pattern>
  <action>
    <call-macro n="f_default_nom1">
      <with-param pos="1"/>
    </call-macro>
    <out>
      <chunk name="n" case="caseFirstWord">
        <tags>
          <tag><lit-tag v="SN"/></tag>
        </tags>
        <lu>
           <clip pos="1" side="tl" part="whole"/>
        </lu>
      </chunk>
    </out>
  </action>
</rule>