Formatage de dictionnaires

From Apertium
Jump to navigation Jump to search

In English

Vous pouvez utiliser le paquet apertium-dixtools pour formater chaque balise <e> dans le dictionnaire.

$ apertium-dixtools format-1line <dic> <dic.out>

(Notez que le premier caractère du paramètre 1line est le chiffre 1 (un), pas la lettre minuscule "L".)

Par exemple, ces lignes :

...
<e>
  <p>
    <l>estilo<s n="n"/></l>
    <r>estil<s n="n"/></r>
  </p>
</e>
...

seront affichées sur une seule ligne, au lieu d'être indentés sur plusieurs niveaux sur six lignes :

...
<e><p><l>estilo<s n="n"/></l><r>estil<s n="n"/></r></p></e>
...

Le format sur une ligne peut être utile si vous utilisez grep ou tout autre outils similaire pour traiter les dictionnaires.

Formatage aligné[edit]

Vous pouvez aussi ajouter 2 paramètres, respectivement la positon de l'élément

et la position de l'élément <l>. Ici alignP = 10 and alignR = 50 :

    <!-- Conjonctions - Adverbes conjonctifs  -->

<e>       <p><l>antaŭ<b/>ol<s n="cnjadv"/></l>    <r>before<s n="cnjadv"/></r></p></e>
<e>       <p><l>tiel<b/>ke<s n="cnjadv"/></l>     <r>so<b/>that<s n="cnjadv"/></r></p></e>
<e>       <p><l>krom<b/>se<s n="cnjadv"/></l>     <r>unless<s n="cnjadv"/></r></p></e>
<e>       <p><l>dum<s n="cnjadv"/></l>            <r>whereas<s n="cnjadv"/></r></p></e>
<e>       <p><l>ĉar<s n="cnjadv"/></l>            <r>because<s n="cnjadv"/></r></p></e>
<e r="RL"><p><l>dum<s n="cnjadv"/></l>            <r>while<s n="cnjadv"/></r></p></e>
<e>       <p><l>ĝis<s n="cnjadv"/></l>            <r>until<s n="cnjadv"/></r></p></e>
<e>       <p><l>kiam<s n="cnjadv"/></l>           <r>when<s n="cnjadv"/></r></p></e>
<e i="yes"><p><l>kiam<s n="cnjadv"/></l>          <r>as<s n="cnjadv"/></r></p></e>
<e>       <p><l>kiel<s n="cnjadv"/></l>           <r>as<s n="cnjadv"/></r></p></e>
<e r="LR"><p><l>pro<b/>tio<b/>ke<s n="cnjadv"/></l><r>since<s n="cnjadv"/></r></p></e>

Si toutefois la valeur est 0 (ou négative), aucun alignement ne sera fait.

Utilisation[edit]

Syntaxe : dictools format-1line [alignP alignR] <input-dic> <output-dic>
       où alignP / alignR: colonne pour aligner les entrées <p> et <r>. 0 = pas d'indentation.

Exemple: ' format-1line old.dix new.dix '         donnera l'indentation
<e><p><l>dum<s n="cnjadv"/></l><r>whereas<s n="cnjadv"/></r></p></e>

Exemple: ' format-1line 10 50 old.dix new.dix '   donnera l'indentation
<e>       <p><l>dum<s n="cnjadv"/></l>            <r>whereas<s n="cnjadv"/></r></p></e>

Exemple: ' format-1line 0 50 old.dix new.dix '    donnera l'indentation
<e><p><l>dum<s n="cnjadv"/></l>                   <r>whereas<s n="cnjadv"/></r></p></e>

Exemple: ' format-1line 10 0 old.dix new.dix '    donnera l'indentation
<e>       <p><l>dum<s n="cnjadv"/></l><r>whereas<s n="cnjadv"/></r></p></e>