Grammalecte  Check-in [db6da7d9a4]

Overview
Comment:[lo] update: lexicon editor
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | lo | multid
Files: files | file ages | folders
SHA3-256: db6da7d9a4078425e54c62cba53da8850cc2a94b80a206b909e164aa1cb12a2e
User & Date: olr on 2018-02-26 18:46:16
Other Links: branch diff | manifest | tags
Context
2018-02-27
17:23
[lo] update: lexicon editor check-in: 1d5fe44fe8 user: olr tags: lo, multid
2018-02-26
18:46
[lo] update: lexicon editor check-in: db6da7d9a4 user: olr tags: lo, multid
2018-02-25
21:55
[lo] update: lexicon editor check-in: 89b74dbf1b user: olr tags: lo, multid
Changes

Modified gc_lang/fr/config.ini from [f0deb020be] to [2f07c469a9].

    83     83   oxt/Dictionnaires/dictionaries.xcu = dictionaries.xcu
    84     84   oxt/Dictionnaires/DictionarySwitcher.py = pythonpath/DictionarySwitcher.py
    85     85   oxt/Dictionnaires/ds_strings.py = pythonpath/ds_strings.py
    86     86   # Dictionary Options
    87     87   oxt/DictOptions/DictOptions.py = pythonpath/DictOptions.py
    88     88   oxt/DictOptions/do_strings.py = pythonpath/do_strings.py
    89     89   oxt/DictOptions/LexiconEditor.py = pythonpath/LexiconEditor.py
           90  +oxt/DictOptions/lxe_conj_data.py = pythonpath/lxe_conj_data.py
    90     91   oxt/DictOptions/lxe_strings.py = pythonpath/lxe_strings.py
    91     92   # ContextMenu
    92     93   oxt/ContextMenu/ContextMenu.py = ContextMenu.py
    93     94   oxt/ContextMenu/jobs.xcu = config/jobs.xcu
    94     95   # TextFormatter
    95     96   oxt/TextFormatter/TextFormatter.py = pythonpath/TextFormatter.py
    96     97   oxt/TextFormatter/tf_strings.py = pythonpath/tf_strings.py

Modified gc_lang/fr/oxt/DictOptions/LexiconEditor.py from [ad048a6895] to [659bee1976].

     1      1   # Lexicon Editor
     2      2   # by Olivier R.
     3      3   # License: GPL 3
     4      4   
     5      5   import unohelper
     6      6   import uno
            7  +import re
     7      8   import traceback
     8      9   
     9     10   import helpers
    10     11   import lxe_strings
           12  +import lxe_conj_data
    11     13   import grammalecte.graphspell as sc
           14  +import grammalecte.fr.conj as conj
    12     15   
    13     16   from com.sun.star.task import XJobExecutor
    14     17   from com.sun.star.awt import XActionListener
    15     18   
    16     19   
    17     20   def _waitPointer (funcDecorated):
    18     21       def wrapper (*args, **kwargs):
................................................................................
    44     47           self.ctx = ctx
    45     48           self.xSvMgr = self.ctx.ServiceManager
    46     49           self.xDesktop = self.xSvMgr.createInstanceWithContext("com.sun.star.frame.Desktop", self.ctx)
    47     50           self.xDocument = self.xDesktop.getCurrentComponent()
    48     51           self.xContainer = None
    49     52           self.xDialog = None
    50     53           self.oSpellChecker = None
           54  +        # data
           55  +        self.lGeneratedFlex = []
    51     56   
    52     57       def _addWidget (self, name, wtype, x, y, w, h, **kwargs):
    53     58           xWidget = self.xDialog.createInstance('com.sun.star.awt.UnoControl%sModel' % wtype)
    54     59           xWidget.Name = name
    55     60           xWidget.PositionX = x
    56     61           xWidget.PositionY = y
    57     62           xWidget.Width = w
................................................................................
   118    123   
   119    124           nHeight = 10
   120    125   
   121    126           #### Add word
   122    127           self._addWidget("add_section", 'FixedLine', nX1, nY1, 190, nHeight, Label = self.dUI.get("add_section", "#err"), FontDescriptor = xFDTitle)
   123    128           #self._addWidget('main_lemma_label', 'FixedText', nX1, nY1+10, 30, nHeight, Label = self.dUI.get('lemma', "#err"))
   124    129           self.xLemma = self._addWidget('main_lemma', 'Edit', nX1, nY1+10, 120, 14, FontDescriptor = xFDTitle)
   125         -        self._addWidget('close_button', 'Button', nX1+130, nY1+10, 60, 14, Label = self.dUI.get('close_button', "#err"), FontDescriptor = xFDTitle, TextColor = 0x550000)
          130  +        self._addWidget('generate_button', 'Button', nX1+130, nY1+10, 60, 14, Label = self.dUI.get('generate_button', "#err"), FontDescriptor = xFDTitle, TextColor = 0x550000)
   126    131   
   127    132           # Radio buttons: main POS tag
   128    133           # Note: the only way to group RadioButtons is to create them successively
   129         -        self.xNA = self._addWidget('nom_adj', 'RadioButton', nX1, nY2+12, 60, nHeight, Label = self.dUI.get("nom_adj", "#err"))
   130         -        self.xN = self._addWidget('nom', 'RadioButton', nX1, nY2+22, 60, nHeight, Label = self.dUI.get("nom", "#err"))
   131         -        self.xA = self._addWidget('adj', 'RadioButton', nX1, nY2+32, 60, nHeight, Label = self.dUI.get("adj", "#err"))
   132         -        self.xM1 = self._addWidget('M1', 'RadioButton', nX1, nY3+12, 60, nHeight, Label = self.dUI.get("M1", "#err"))
   133         -        self.xM2 = self._addWidget('M2', 'RadioButton', nX1, nY3+22, 60, nHeight, Label = self.dUI.get("M2", "#err"))
   134         -        self.xMP = self._addWidget('MP', 'RadioButton', nX1, nY3+32, 60, nHeight, Label = self.dUI.get("MP", "#err"))
   135         -        self.xV = self._addWidget('verb', 'RadioButton', nX1, nY4+2, 10, nHeight)
   136         -        self.xW = self._addWidget('adv', 'RadioButton', nX1, nY5+2, 10, nHeight)
   137         -        self.xX = self._addWidget('other', 'RadioButton', nX1, nY6+2, 10, nHeight)
          134  +        self.xNA = self._addWidget('nom_adj', 'RadioButton', nX1, nY2+12, 60, nHeight, Label = self.dUI.get("nom_adj", "#err"), HelpText = ":N:A")
          135  +        self.xN = self._addWidget('nom', 'RadioButton', nX1, nY2+22, 60, nHeight, Label = self.dUI.get("nom", "#err"), HelpText = ":N")
          136  +        self.xA = self._addWidget('adj', 'RadioButton', nX1, nY2+32, 60, nHeight, Label = self.dUI.get("adj", "#err"), HelpText = ":A")
          137  +        self.xM1 = self._addWidget('M1', 'RadioButton', nX1, nY3+12, 60, nHeight, Label = self.dUI.get("M1", "#err"), HelpText = ":M1")
          138  +        self.xM2 = self._addWidget('M2', 'RadioButton', nX1, nY3+22, 60, nHeight, Label = self.dUI.get("M2", "#err"), HelpText = ":M2")
          139  +        self.xMP = self._addWidget('MP', 'RadioButton', nX1, nY3+32, 60, nHeight, Label = self.dUI.get("MP", "#err"), HelpText = ":MP")
          140  +        self.xV = self._addWidget('verb', 'RadioButton', nX1, nY4+2, 10, nHeight, HelpText = ":V")
          141  +        self.xW = self._addWidget('adv', 'RadioButton', nX1, nY5+2, 10, nHeight, HelpText = ":W")
          142  +        self.xX = self._addWidget('other', 'RadioButton', nX1, nY6+2, 10, nHeight, HelpText = ":X")
   138    143           
   139    144           # Nom, adjectif
   140    145           self._addWidget("fl_nom_adj", 'FixedLine', nX1, nY2, 190, nHeight, Label = self.dUI.get("common_name", "#err"), FontDescriptor = xFDSubTitle)
   141         -        self.xSepi = self._addWidget('Sepi', 'RadioButton', nX1+65, nY2+12, 50, nHeight, Label = self.dUI.get("epi", "#err"))
   142         -        self.xSmas = self._addWidget('Smas', 'RadioButton', nX1+65, nY2+22, 50, nHeight, Label = self.dUI.get("mas", "#err"))
   143         -        self.xSfem = self._addWidget('Sfem', 'RadioButton', nX1+65, nY2+32, 50, nHeight, Label = self.dUI.get("fem", "#err"))
   144         -        self.xSs = self._addWidget('S-s', 'RadioButton', nX1+120, nY2+12, 50, nHeight, Label = self.dUI.get("-s", "#err"))
   145         -        self.xSx = self._addWidget('S-x', 'RadioButton', nX1+120, nY2+22, 50, nHeight, Label = self.dUI.get("-x", "#err"))
   146         -        self.xSinv = self._addWidget('Sinv', 'RadioButton', nX1+120, nY2+32, 50, nHeight, Label = self.dUI.get("inv", "#err"))
          146  +        self.xSepi = self._addWidget('Sepi', 'RadioButton', nX1+65, nY2+12, 50, nHeight, Label = self.dUI.get("epi", "#err"), HelpText = ":e")
          147  +        self.xSmas = self._addWidget('Smas', 'RadioButton', nX1+65, nY2+22, 50, nHeight, Label = self.dUI.get("mas", "#err"), HelpText = ":m")
          148  +        self.xSfem = self._addWidget('Sfem', 'RadioButton', nX1+65, nY2+32, 50, nHeight, Label = self.dUI.get("fem", "#err"), HelpText = ":f")
          149  +        self._addWidget("fl_sep1", 'FixedLine', nX1, nY2, 1, nHeight)
          150  +        self.xSs = self._addWidget('S-s', 'RadioButton', nX1+120, nY2+12, 50, nHeight, Label = self.dUI.get("-s", "#err"), HelpText = "·s")
          151  +        self.xSx = self._addWidget('S-x', 'RadioButton', nX1+120, nY2+22, 50, nHeight, Label = self.dUI.get("-x", "#err"), HelpText = "·x")
          152  +        self.xSinv = self._addWidget('Sinv', 'RadioButton', nX1+120, nY2+32, 50, nHeight, Label = self.dUI.get("inv", "#err"), HelpText = ":i")
   147    153   
   148    154           self._addWidget("alt_lemma_label", 'FixedLine', nX1+10, nY2+42, 180, nHeight, Label = self.dUI.get("alt_lemma", "#err"))
   149    155           self.xAltLemma = self._addWidget('alt_lemma', 'Edit', nX1+10, nY2+52, 120, nHeight)
   150         -        self.xNA2 = self._addWidget('nom_adj2', 'RadioButton', nX1+10, nY2+65, 60, nHeight, Label = self.dUI.get("nom_adj", "#err"))
   151         -        self.xN2 = self._addWidget('nom2', 'RadioButton', nX1+10, nY2+75, 60, nHeight, Label = self.dUI.get("nom", "#err"))
   152         -        self.xA2 = self._addWidget('adj2', 'RadioButton', nX1+10, nY2+85, 60, nHeight, Label = self.dUI.get("adj", "#err"))
   153         -        self.xSepi2 = self._addWidget('Sepi2', 'RadioButton', nX1+75, nY2+65, 50, nHeight, Label = self.dUI.get("epi", "#err"))
   154         -        self.xSmas2 = self._addWidget('Smas2', 'RadioButton', nX1+75, nY2+75, 50, nHeight, Label = self.dUI.get("mas", "#err"))
   155         -        self.xSfem2 = self._addWidget('Sfem2', 'RadioButton', nX1+75, nY2+85, 50, nHeight, Label = self.dUI.get("fem", "#err"))
   156         -        self.xSs2 = self._addWidget('S-s2', 'RadioButton', nX1+130, nY2+65, 50, nHeight, Label = self.dUI.get("-s", "#err"))
   157         -        self.xSx2 = self._addWidget('S-x2', 'RadioButton', nX1+130, nY2+75, 50, nHeight, Label = self.dUI.get("-x", "#err"))
   158         -        self.xSinv2 = self._addWidget('Sinv2', 'RadioButton', nX1+130, nY2+85, 50, nHeight, Label = self.dUI.get("inv", "#err"))
          156  +        self.xNA2 = self._addWidget('nom_adj2', 'RadioButton', nX1+10, nY2+65, 60, nHeight, Label = self.dUI.get("nom_adj", "#err"), HelpText = ":N:A")
          157  +        self.xN2 = self._addWidget('nom2', 'RadioButton', nX1+10, nY2+75, 60, nHeight, Label = self.dUI.get("nom", "#err"), HelpText = ":N")
          158  +        self.xA2 = self._addWidget('adj2', 'RadioButton', nX1+10, nY2+85, 60, nHeight, Label = self.dUI.get("adj", "#err"), HelpText = ":A")
          159  +        self._addWidget("fl_sep2", 'FixedLine', nX1, nY2, 1, nHeight)
          160  +        self.xSepi2 = self._addWidget('Sepi2', 'RadioButton', nX1+75, nY2+65, 50, nHeight, Label = self.dUI.get("epi", "#err"), HelpText = ":e")
          161  +        self.xSmas2 = self._addWidget('Smas2', 'RadioButton', nX1+75, nY2+75, 50, nHeight, Label = self.dUI.get("mas", "#err"), HelpText = ":m")
          162  +        self.xSfem2 = self._addWidget('Sfem2', 'RadioButton', nX1+75, nY2+85, 50, nHeight, Label = self.dUI.get("fem", "#err"), HelpText = ":f")
          163  +        self._addWidget("fl_sep3", 'FixedLine', nX1, nY2, 1, nHeight)
          164  +        self.xSs2 = self._addWidget('S-s2', 'RadioButton', nX1+130, nY2+65, 50, nHeight, Label = self.dUI.get("-s", "#err"), HelpText = "·s")
          165  +        self.xSx2 = self._addWidget('S-x2', 'RadioButton', nX1+130, nY2+75, 50, nHeight, Label = self.dUI.get("-x", "#err"), HelpText = "·x")
          166  +        self.xSinv2 = self._addWidget('Sinv2', 'RadioButton', nX1+130, nY2+85, 50, nHeight, Label = self.dUI.get("inv", "#err"), HelpText = ":i")
   159    167   
   160    168           # Nom propre
   161    169           self._addWidget("fl_M", 'FixedLine', nX1, nY3, 190, nHeight, Label = self.dUI.get("proper_name", "#err"), FontDescriptor = xFDSubTitle)
   162         -        self.xMepi = self._addWidget('Mepi', 'RadioButton', nX1+65, nY3+12, 50, nHeight, Label = self.dUI.get("epi", "#err"))
   163         -        self.xMmas = self._addWidget('Mmas', 'RadioButton', nX1+65, nY3+22, 50, nHeight, Label = self.dUI.get("mas", "#err"))
   164         -        self.xMfem = self._addWidget('Mfem', 'RadioButton', nX1+65, nY3+32, 50, nHeight, Label = self.dUI.get("fem", "#err"))
          170  +        self.xMepi = self._addWidget('Mepi', 'RadioButton', nX1+65, nY3+12, 50, nHeight, Label = self.dUI.get("epi", "#err"), HelpText = ":e")
          171  +        self.xMmas = self._addWidget('Mmas', 'RadioButton', nX1+65, nY3+22, 50, nHeight, Label = self.dUI.get("mas", "#err"), HelpText = ":m")
          172  +        self.xMfem = self._addWidget('Mfem', 'RadioButton', nX1+65, nY3+32, 50, nHeight, Label = self.dUI.get("fem", "#err"), HelpText = ":f")
   165    173   
   166    174           # Verbe
   167    175           self._addWidget("fl_verb", 'FixedLine', nX2, nY4, 180, nHeight, Label = self.dUI.get("verb", "#err"), FontDescriptor = xFDSubTitle)
   168    176           self.xV_i = self._addWidget('v_i', 'CheckBox', nX2, nY4+12, 60, nHeight, Label = self.dUI.get("v_i", "#err"))
   169    177           self.xV_t = self._addWidget('v_t', 'CheckBox', nX2, nY4+20, 60, nHeight, Label = self.dUI.get("v_t", "#err"))
   170    178           self.xV_n = self._addWidget('v_n', 'CheckBox', nX2, nY4+28, 60, nHeight, Label = self.dUI.get("v_n", "#err"))
   171    179           self.xV_p = self._addWidget('v_p', 'CheckBox', nX2, nY4+36, 60, nHeight, Label = self.dUI.get("v_p", "#err"))
................................................................................
   193    201           #### Generated words
   194    202           self._addWidget("gwords_section", 'FixedLine', nXB, nY1, 200, nHeight, Label = self.dUI.get("new_section", "#err"), FontDescriptor = xFDTitle)
   195    203           self.xGridModelNew = self._addGrid("list_grid_gwords", nXB, nY1+10, 200, 175, [
   196    204               {"Title": self.dUI.get("lex_flex", "#err"), "ColumnWidth": 65},
   197    205               {"Title": self.dUI.get("lex_lemma", "#err"), "ColumnWidth": 50},
   198    206               {"Title": self.dUI.get("lex_tags", "#err"), "ColumnWidth": 65}
   199    207           ])
   200         -        self._addWidget('add_button', 'Button', nXB, nY1+190, 95, 12, Label = self.dUI.get('add_button', "#err"), FontDescriptor = xFDTitle, TextColor = 0x005500)
   201         -        self._addWidget('delete_button', 'Button', nXB+100, nY1+190, 100, 12, Label = self.dUI.get('delete_button', "#err"), FontDescriptor = xFDTitle, TextColor = 0x550000)
          208  +        self.xAdd = self._addWidget('add_button', 'Button', nXB, nY1+190, 95, 12, Label = self.dUI.get('add_button', "#err"), FontDescriptor = xFDTitle, TextColor = 0x005500, Enabled = False)
          209  +        self.xDelete = self._addWidget('delete_button', 'Button', nXB+100, nY1+190, 100, 12, Label = self.dUI.get('delete_button', "#err"), FontDescriptor = xFDTitle, TextColor = 0x550000)
   202    210   
   203    211           nY2b = nY1 + 205
   204    212           # lexicon info section
   205    213           self._addWidget("lexicon_info_section", 'FixedLine', nXB, nY2b, 200, nHeight, Label = self.dUI.get("lexicon_info_section", "#err"), FontDescriptor = xFDTitle)
   206    214           self._addWidget("added_entries_label", 'FixedText', nXB, nY2b+10, 90, nHeight, Label = self.dUI.get("added_entries_label", "#err"))
   207    215           self._addWidget("deleted_entries_label", 'FixedText', nXB, nY2b+20, 90, nHeight, Label = self.dUI.get("deleted_entries_label", "#err"))
   208    216           self._addWidget("num_of_entries_label1", 'FixedText', nXB, nY2b+30, 90, nHeight, Label = self.dUI.get("num_of_entries_label", "#err"))
   209         -        self._addWidget('save_button', 'Button', nXB+150, nY2b+10, 50, 12, Label = self.dUI.get('save_button', "#err"), FontDescriptor = xFDSubTitle, TextColor = 0x005500)
          217  +        self.xSave = self._addWidget('save_button', 'Button', nXB+150, nY2b+10, 50, 12, Label = self.dUI.get('save_button', "#err"), FontDescriptor = xFDSubTitle, TextColor = 0x005500)
   210    218           # dictionary section
   211    219           self._addWidget("dictionary_section", 'FixedLine', nXB, nY2b+45, 200, nHeight, Label = self.dUI.get("dictionary_section", "#err"), FontDescriptor = xFDTitle)
   212    220           self._addWidget("save_date_label", 'FixedText', nXB, nY2b+55, 90, nHeight, Label = self.dUI.get("save_date_label", "#err"))
   213    221           self._addWidget("num_of_entries_label2", 'FixedText', nXB, nY2b+65, 90, nHeight, Label = self.dUI.get("num_of_entries_label", "#err"))
   214         -        self._addWidget('export_button', 'Button', nXB+150, nY2b+55, 50, 12, Label = self.dUI.get('export_button', "#err"), FontDescriptor = xFDSubTitle, TextColor = 0x005500)
          222  +        self.xExport = self._addWidget('export_button', 'Button', nXB+150, nY2b+55, 50, 12, Label = self.dUI.get('export_button', "#err"), FontDescriptor = xFDSubTitle, TextColor = 0x005500)
   215    223   
   216    224           #### Lexicon section
   217    225           self._addWidget("lexicon_section", 'FixedLine', nXC, nY1, 200, nHeight, Label = self.dUI.get("lexicon_section", "#err"), FontDescriptor = xFDTitle)
   218    226           self.xGridModelLex = self._addGrid("list_grid_lexicon", nXC, nY1+10, 200, 270, [
   219    227               {"Title": self.dUI.get("lex_flex", "#err"), "ColumnWidth": 65},
   220    228               {"Title": self.dUI.get("lex_lemma", "#err"), "ColumnWidth": 50},
   221    229               {"Title": self.dUI.get("lex_tags", "#err"), "ColumnWidth": 65}
................................................................................
   228    236           self.xGridControlLex = self.xContainer.getControl('list_grid_lexicon')
   229    237           self.xContainer.getControl('add_button').addActionListener(self)
   230    238           self.xContainer.getControl('add_button').setActionCommand('Add')
   231    239           self.xContainer.getControl('delete_button').addActionListener(self)
   232    240           self.xContainer.getControl('delete_button').setActionCommand('Delete')
   233    241           self.xContainer.getControl('save_button').addActionListener(self)
   234    242           self.xContainer.getControl('save_button').setActionCommand('Save')
   235         -        self.xContainer.getControl('close_button').addActionListener(self)
   236         -        self.xContainer.getControl('close_button').setActionCommand('Close')
          243  +        self.xContainer.getControl('generate_button').addActionListener(self)
          244  +        self.xContainer.getControl('generate_button').setActionCommand('Update')
   237    245           self.xContainer.setVisible(False)
   238    246           xToolkit = self.xSvMgr.createInstanceWithContext('com.sun.star.awt.ExtToolkit', self.ctx)
   239    247           self.xContainer.createPeer(xToolkit, None)
   240    248           self.xContainer.execute()
   241    249   
   242    250       # XActionListener
   243    251       def actionPerformed (self, xActionEvent):
................................................................................
   244    252           try:
   245    253               if xActionEvent.ActionCommand == "Add":
   246    254                   pass
   247    255               elif xActionEvent.ActionCommand == "Delete":
   248    256                   pass
   249    257               elif xActionEvent.ActionCommand == "Save":
   250    258                   pass
          259  +            elif xActionEvent.ActionCommand == "Update":
          260  +                self.updateGenWords()
   251    261               elif xActionEvent.ActionCommand == "Close":
   252    262                   self.xContainer.endExecute()
   253    263           except:
   254    264               traceback.print_exc()
   255    265       
   256    266       # XJobExecutor
   257    267       def trigger (self, args):
................................................................................
   258    268           try:
   259    269               xDialog = LexiconEditor(self.ctx)
   260    270               xDialog.run()
   261    271           except:
   262    272               traceback.print_exc()
   263    273   
   264    274       # Code
          275  +    def getRadioValue (self, *args):
          276  +        for x in args:
          277  +            if x.State:
          278  +                return x.HelpText
          279  +        return None
          280  +
          281  +    def updateGenWords (self):
          282  +        self.lGeneratedFlex = []
          283  +        sLemma = self.xLemma.Text.strip()
          284  +        if sLemma:
          285  +            if self.getRadioValue(self.xNA, self.xN, self.xA):
          286  +                # Substantif
          287  +                sPOS = self.getRadioValue(self.xNA, self.xN, self.xA)
          288  +                sGenderTag = self.getRadioValue(self.xSepi, self.xSmas, self.xSfem)
          289  +                if sGenderTag:
          290  +                    if self.xSs.State:
          291  +                        self.lGeneratedFlex.append((sLemma, sLemma, sPOS+sGenderTag+":s/*"))
          292  +                        self.lGeneratedFlex.append((sLemma+"s", sLemma, sPOS+sGenderTag+":p/*"))
          293  +                    elif self.xSx.State:
          294  +                        self.lGeneratedFlex.append((sLemma, sLemma, sPOS+sGenderTag+":s/*"))
          295  +                        self.lGeneratedFlex.append((sLemma+"x", sLemma, sPOS+sGenderTag+":p/*"))
          296  +                    elif self.xSinv.State:
          297  +                        self.lGeneratedFlex.append((sLemma, sLemma, sPOS+sGenderTag+":i/*"))
          298  +                    sLemma2 = self.xAltLemma.Text.strip()
          299  +                    if sLemma2 and self.getRadioValue(self.xNA2, self.xN2, self.xA2) and self.getRadioValue(self.xSepi2, self.xSmas2, self.xSfem2):
          300  +                        sTag2 = self.getRadioValue(self.xNA2, self.xN2, self.xA2) + self.getRadioValue(self.xSepi2, self.xSmas2, self.xSfem2)
          301  +                        if self.xSs2.State:
          302  +                            self.lGeneratedFlex.append((sLemma2, sLemma, sTag2+":s/*"))
          303  +                            self.lGeneratedFlex.append((sLemma2+"s", sLemma, sTag2+":p/*"))
          304  +                        elif self.xSx2.State:
          305  +                            self.lGeneratedFlex.append((sLemma2, sLemma, sTag2+":s/*"))
          306  +                            self.lGeneratedFlex.append((sLemma2+"x", sLemma, sTag2+":p/*"))
          307  +                        elif self.xSinv2.State:
          308  +                            self.lGeneratedFlex.append((sLemma2, sLemma, sTag2+":i/*"))
          309  +            elif self.getRadioValue(self.xM1, self.xM2, self.xMP):
          310  +                # Nom propre
          311  +                sPOS = self.getRadioValue(self.xM1, self.xM2, self.xMP)
          312  +                sLemma = sLemma[0:1].upper() + sLemma[1:];
          313  +                sGenderTag = self.getRadioValue(self.xMepi, self.xMmas, self.xMfem)
          314  +                if sGenderTag:
          315  +                    self.lGeneratedFlex.append((sLemma, sLemma, sPOS+sGenderTag+":i/*"))
          316  +            elif self.xV.State:
          317  +                # Verbe
          318  +                if sLemma.endswith(("er", "ir", "re")):
          319  +                    sLemma = sLemma.lower()
          320  +                    c_i = "i"  if self.xV_i.State  else "_"
          321  +                    c_t = "t"  if self.xV_t.State  else "_"
          322  +                    c_n = "n"  if self.xV_n.State  else "_"
          323  +                    c_p = "p"  if self.xV_p.State  else "_"
          324  +                    c_m = "m"  if self.xV_m.State  else "_"
          325  +                    c_ae = "e"  if self.xV_ae.State  else "_"
          326  +                    c_aa = "a"  if self.xV_aa.State  else "_"
          327  +                    sVerbTag = c_i + c_t + c_n + c_p + c_m + c_ae + c_aa
          328  +                    if not sVerbTag.endswith("__") and not sVerbTag.startswith("____"):
          329  +                        sVerbPattern = self.xVpattern.Text.strip()
          330  +                        if not sVerbPattern:
          331  +                            if sLemma.endswith("er") or sLemma.endswith("ir"):
          332  +                                # tables de conjugaison du 1er et du 2e groupe
          333  +                                cGroup = "1"  if sLemma.endswith("er")  else "2"
          334  +                                for nCut, sAdd, sFlexTags, sPattern in self._getConjRules(sLemma):
          335  +                                    if not sPattern or re.search(sPattern, sLemma):
          336  +                                        self.lGeneratedFlex.append((sLemma[0:-nCut]+sAdd, sLemma, ":V" + cGroup + "_" + sVerbTag + sFlexTags))
          337  +                                # participes passés
          338  +                                bPpasVar = "var"  if self.xV_pp.State  else "invar"
          339  +                                lPpasRules = lxe_conj_data.oConj["V1_ppas"][bPpasVar]  if sLemma.endswith("er")  else lxe_conj_data.oConj["V2_ppas"][bPpasVar]
          340  +                                for nCut, sAdd, sFlexTags, sPattern in lPpasRules:
          341  +                                    if not sPattern or re.search(sPattern, sLemma):
          342  +                                        self.lGeneratedFlex.append((sLemma[0:-nCut]+sAdd, sLemma, ":V" + cGroup + "_" + sVerbTag + sFlexTags))
          343  +                        else:
          344  +                            # copie du motif d’un autre verbe : utilisation du conjugueur
          345  +                            if conj.isVerb(sVerbPattern):
          346  +                                oVerb = conj.Verb(sLemma, sVerbPattern)
          347  +                                for sTag1, dFlex in oVerb.dConj.items():
          348  +                                    if sTag1 != ":Q":
          349  +                                        for sTag2, sConj in dFlex.items():
          350  +                                            if sTag2.startswith(":") and sConj:
          351  +                                                self.lGeneratedFlex.append((sConj, sLemma, ":V" + oVerb.cGroup + "_" + sVerbTag + sTag1 + sTag2))
          352  +                                    else:
          353  +                                        # participes passés
          354  +                                        if dFlex[":Q3"]:
          355  +                                            if dFlex[":Q2"]:
          356  +                                                self.lGeneratedFlex.append((dFlex[":Q1"], sLemma, ":V" + oVerb.cGroup + "_" + sVerbTag + ":Q:A:m:s/*"))
          357  +                                                self.lGeneratedFlex.append((dFlex[":Q2"], sLemma, ":V" + oVerb.cGroup + "_" + sVerbTag + ":Q:A:m:p/*"))
          358  +                                            else:
          359  +                                                self.lGeneratedFlex.append((dFlex[":Q1"], sLemma, ":V" + oVerb.cGroup + "_" + sVerbTag + ":Q:A:m:i/*"))
          360  +                                            self.lGeneratedFlex.append((dFlex[":Q3"], sLemma, ":V" + oVerb.cGroup + "_" + sVerbTag + ":Q:A:f:s/*"))
          361  +                                            self.lGeneratedFlex.append((dFlex[":Q4"], sLemma, ":V" + oVerb.cGroup + "_" + sVerbTag + ":Q:A:f:p/*"))
          362  +                                        else:
          363  +                                            self.lGeneratedFlex.append((dFlex[":Q1"], sLemma, ":V" + oVerb.cGroup + "_" + sVerbTag + ":Q:e:i/*"))
          364  +            elif self.xW.State:
          365  +                # Adverbe
          366  +                sLemma = sLemma.lower();
          367  +                self.lGeneratedFlex.append((sLemma, sLemma, ":W/*"))
          368  +            elif self.xX.State:
          369  +                # Autre
          370  +                sFlexion = self.xFlexion.Text.strip()
          371  +                sTags = self.xTags.Text.strip()
          372  +                if sFlexion and sTags.startswith(":"):
          373  +                    self.lGeneratedFlex.append((sFlexion, sLemma, sTags))
          374  +        self.showGenWords()
          375  +
          376  +    def _getConjRules (self, sVerb):
          377  +        if sVerb.endswith("ir"):
          378  +            # deuxième groupe
          379  +            return lxe_conj_data.oConj["V2"]
          380  +        elif sVerb.endswith("er"):
          381  +            # premier groupe, conjugaison en fonction de la terminaison du lemme
          382  +            # 5 lettres
          383  +            if sVerb[-5:] in lxe_conj_data.oConj["V1"]:
          384  +                return lxe_conj_data.oConj["V1"][sVerb[-5:]]
          385  +            # 4 lettres
          386  +            if sVerb[-4:] in lxe_conj_data.oConj["V1"]:
          387  +                if sVerb.endswith(("eler", "eter")):
          388  +                    return lxe_conj_data.oConj["V1"][sVerb[-4:]]["1"]
          389  +                return lxe_conj_data.oConj["V1"][sVerb[-4:]]
          390  +            # 3 lettres
          391  +            if sVerb[-3:] in lxe_conj_data.oConj["V1"]:
          392  +                return lxe_conj_data.oConj["V1"][sVerb[-3:]]
          393  +            return lxe_conj_data.oConj["V1"]["er"]
          394  +        else:
          395  +            # troisième groupe
          396  +            return [ [0, "", ":Y/*", false] ]
          397  +
          398  +    def showGenWords (self):
          399  +        xGridDataModel = self.xGridModelNew.GridDataModel
          400  +        xGridDataModel.removeAllRows()
          401  +        if not self.lGeneratedFlex:
          402  +            self.xAdd.Enabled = False
          403  +            return
          404  +        for i, (sFlexion, sLemma, sTag) in enumerate(self.lGeneratedFlex):
          405  +            xGridDataModel.addRow(i, (sFlexion, sLemma, sTag))
          406  +        self.xAdd.Enabled = True
          407  +
   265    408       @_waitPointer
   266    409       def add (self):
   267    410           pass
          411  +
          412  +    @_waitPointer
          413  +    def delete (self):
          414  +        pass
   268    415   
   269    416       @_waitPointer
   270    417       def loadLexicon (self):
   271    418           pass
   272    419   
          420  +    @_waitPointer
          421  +    def saveLexicon (self):
          422  +        pass    
   273    423   
   274    424   
   275    425   #g_ImplementationHelper = unohelper.ImplementationHelper()
   276    426   #g_ImplementationHelper.addImplementation(LexiconEditor, 'net.grammalecte.LexiconEditor', ('com.sun.star.task.Job',))
          427  +
          428  +
          429  +# const oFlexGen = {
          430  +
          431  +#     cMainTag: "",
          432  +
          433  +#     lFlexion: [],
          434  +
          435  +#     clear: function () {
          436  +#         this.lFlexion = [];
          437  +#         oWidgets.hideElement("actions");
          438  +#     },
          439  +
          440  +#     addToLexicon: function () {
          441  +#         try {
          442  +#             oLexicon.addFlexions(this.lFlexion);
          443  +#             document.getElementById("lemma").value = "";
          444  +#             document.getElementById("lemma").focus();
          445  +#             oWidgets.showSection("section_vide");
          446  +#             oWidgets.hideElement("editor");
          447  +#             oWidgets.hideElement("actions");
          448  +#             oWidgets.clear();
          449  +#             oWidgets.showElement("save_button");
          450  +#             this.clear();
          451  +#             this.cMainTag = "";
          452  +#         }
          453  +#         catch (e) {
          454  +#             showError(e);
          455  +#         }
          456  +#     }
          457  +# }

Added gc_lang/fr/oxt/DictOptions/lxe_conj_data.py version [2b6010474b].

            1  +# Conjugation data
            2  +
            3  +# beta stage, unfinished, may be useless or the root for a new way to generate flexions…
            4  +
            5  +# Règles de conjugaison
            6  +
            7  +oConj = {
            8  +    "V1_ppas": {
            9  +        "var": [
           10  +            [2,     "é",           ":Q:A:1ŝ:m:s/*",     False],
           11  +            [2,     "és",          ":Q:A:m:p/*",        False],
           12  +            [2,     "ée",          ":Q:A:f:s/*",        False],
           13  +            [2,     "ées",         ":Q:A:f:p/*",        False],
           14  +        ],
           15  +        "invar": [
           16  +            [2,     "é",           ":Q:e:i/*",          False],
           17  +        ]
           18  +    },
           19  +
           20  +    "V2_ppas": {
           21  +        "var": [
           22  +            [2,     "i",           ":Q:A:m:s/*",        False],
           23  +            [2,     "is",          ":Q:A:m:p/*",        False],
           24  +            [2,     "ie",          ":Q:A:f:s/*",        False],
           25  +            [2,     "ies",         ":Q:A:f:p/*",        False],
           26  +        ],
           27  +        "invar": [
           28  +            [2,     "i",           ":Q:e:i/*",          False],
           29  +        ]
           30  +    },
           31  +
           32  +    # deuxième groupe (le seul groupe régulier)
           33  +    "V2": [
           34  +        [2,     "ir",           ":Y/*",             False],
           35  +        [2,     "issant",       ":P/*",             False],
           36  +        [2,     "is",           ":Ip:Is:1s:2s/*",   False],
           37  +        [2,     "it",           ":Ip:Is:3s/*",      False],
           38  +        [2,     "issons",       ":Ip:1p/*",         False],
           39  +        [2,     "issez",        ":Ip:2p/*",         False],
           40  +        [2,     "issent",       ":Ip:Sp:Sq:3p/*",   False],
           41  +        [2,     "issais",       ":Iq:1s:2s/*",      False],
           42  +        [2,     "issait",       ":Iq:3s/*",         False],
           43  +        [2,     "issions",      ":Iq:Sp:Sq:1p/*",   False],
           44  +        [2,     "issiez",       ":Iq:Sp:Sq:2p/*",   False],
           45  +        [2,     "issaient",     ":Iq:3p/*",         False],
           46  +        [2,     "îmes",         ":Is:1p/*",         False],
           47  +        [2,     "îtes",         ":Is:2p/*",         False],
           48  +        [2,     "irent",        ":Is:3p!/*",        False],
           49  +        [2,     "irai",         ":If:1s/*",         False],
           50  +        [2,     "iras",         ":If:2s/*",         False],
           51  +        [2,     "ira",          ":If:3s/*",         False],
           52  +        [2,     "irons",        ":If:1p/*",         False],
           53  +        [2,     "irez",         ":If:2p/*",         False],
           54  +        [2,     "iront",        ":If:3p!/*",        False],
           55  +        [2,     "irais",        ":K:1s:2s/*",       False],
           56  +        [2,     "irait",        ":K:3s/*",          False],
           57  +        [2,     "irions",       ":K:1p/*",          False],
           58  +        [2,     "iriez",        ":K:2p/*",          False],
           59  +        [2,     "iraient",      ":K:3p/*",          False],
           60  +        [2,     "isse",         ":Sp:Sq:1s/*",      False],
           61  +        [2,     "isses",        ":Sp:Sq:2s/*",      False],
           62  +        [2,     "isse",         ":Sp:3s/*",         False],
           63  +        [2,     "ît",           ":Sq:3s/*",         False],
           64  +        [2,     "is",           ":E:2s/*",          False],
           65  +        [2,     "issons",       ":E:1p/*",          False],
           66  +        [2,     "issez",        ":E:2p/*",          False]
           67  +    ],
           68  +    
           69  +    # premier groupe (bien plus irrégulier que prétendu)
           70  +    "V1": {
           71  +        # a
           72  +        # verbes en -er, -ger, -yer, -cer
           73  +        "er": [
           74  +            [2,      "er",        ":Y/*",               False],
           75  +            [2,      "ant",       ":P/*",               False],
           76  +            [2,      "e",         ":Ip:Sp:1s:3s/*",     False],
           77  +            [2,      "è",         ":Ip:1ś/*",           False],
           78  +            [2,      "es",        ":Ip:Sp:2s/*",        False],
           79  +            [2,      "ons",       ":Ip:1p/*",           False],
           80  +            [2,      "ez",        ":Ip:2p/*",           False],
           81  +            [2,      "ent",       ":Ip:Sp:3p/*",        False],
           82  +            [2,      "ais",       ":Iq:1s:2s/*",        False],
           83  +            [2,      "ait",       ":Iq:3s/*",           False],
           84  +            [2,      "ions",      ":Iq:Sp:1p/*",        False],
           85  +            [2,      "iez",       ":Iq:Sp:2p/*",        False],
           86  +            [2,      "aient",     ":Iq:3p/*",           False],
           87  +            [2,      "ai",        ":Is:1s/*",           False],
           88  +            [2,      "as",        ":Is:2s/*",           False],
           89  +            [2,      "a",         ":Is:3s/*",           False],
           90  +            [2,      "âmes",      ":Is:1p/*",           False],
           91  +            [2,      "âtes",      ":Is:2p/*",           False],
           92  +            [2,      "èrent",     ":Is:3p!/*",          False],
           93  +            [2,      "erai",      ":If:1s/*",           False],
           94  +            [2,      "eras",      ":If:2s/*",           False],
           95  +            [2,      "era",       ":If:3s/*",           False],
           96  +            [2,      "erons",     ":If:1p/*",           False],
           97  +            [2,      "erez",      ":If:2p/*",           False],
           98  +            [2,      "eront",     ":If:3p!/*",          False],
           99  +            [2,      "erais",     ":K:1s:2s/*",         False],
          100  +            [2,      "erait",     ":K:3s/*",            False],
          101  +            [2,      "erions",    ":K:1p/*",            False],
          102  +            [2,      "eriez",     ":K:2p/*",            False],
          103  +            [2,      "eraient",   ":K:3p/*",            False],
          104  +            [2,      "asse",      ":Sq:1s/*",           False],
          105  +            [2,      "asses",     ":Sq:2s/*",           False],
          106  +            [2,      "ât",        ":Sq:3s/*",           False],
          107  +            [2,      "assions",   ":Sq:1p/*",           False],
          108  +            [2,      "assiez",    ":Sq:2p/*",           False],
          109  +            [2,      "assent",    ":Sq:3p/*",           False],
          110  +            [2,      "e",         ":E:2s/*",            False],
          111  +            [2,      "ons",       ":E:1p/*",            False],
          112  +            [2,      "ez",        ":E:2p/*",            False]
          113  +        ],
          114  +
          115  +        "ger": [
          116  +            [2,      "er",        ":Y/*",               False],
          117  +            [2,      "eant",      ":P/*",               False],
          118  +            [2,      "e",         ":Ip:Sp:1s:3s/*",     False],
          119  +            [2,      "è",         ":Ip:1ś/*",           False],
          120  +            [2,      "es",        ":Ip:Sp:2s/*",        False],
          121  +            [2,      "eons",      ":Ip:1p/*",           False],
          122  +            [2,      "ez",        ":Ip:2p/*",           False],
          123  +            [2,      "ent",       ":Ip:Sp:3p/*",        False],
          124  +            [2,      "eais",      ":Iq:1s:2s/*",        False],
          125  +            [2,      "eait",      ":Iq:3s/*",           False],
          126  +            [2,      "ions",      ":Iq:Sp:1p/*",        False],
          127  +            [2,      "iez",       ":Iq:Sp:2p/*",        False],
          128  +            [2,      "eaient",    ":Iq:3p/*",           False],
          129  +            [2,      "eai",       ":Is:1s/*",           False],
          130  +            [2,      "eas",       ":Is:2s/*",           False],
          131  +            [2,      "ea",        ":Is:3s/*",           False],
          132  +            [2,      "eâmes",     ":Is:1p/*",           False],
          133  +            [2,      "eâtes",     ":Is:2p/*",           False],
          134  +            [2,      "èrent",     ":Is:3p!/*",          False],
          135  +            [2,      "erai",      ":If:1s/*",           False],
          136  +            [2,      "eras",      ":If:2s/*",           False],
          137  +            [2,      "era",       ":If:3s/*",           False],
          138  +            [2,      "erons",     ":If:1p/*",           False],
          139  +            [2,      "erez",      ":If:2p/*",           False],
          140  +            [2,      "eront",     ":If:3p!/*",          False],
          141  +            [2,      "erais",     ":K:1s:2s/*",         False],
          142  +            [2,      "erait",     ":K:3s/*",            False],
          143  +            [2,      "erions",    ":K:1p/*",            False],
          144  +            [2,      "eriez",     ":K:2p/*",            False],
          145  +            [2,      "eraient",   ":K:3p/*",            False],
          146  +            [2,      "easse",     ":Sq:1s/*",           False],
          147  +            [2,      "easses",    ":Sq:2s/*",           False],
          148  +            [2,      "eât",       ":Sq:3s/*",           False],
          149  +            [2,      "eassions",  ":Sq:1p/*",           False],
          150  +            [2,      "eassiez",   ":Sq:2p/*",           False],
          151  +            [2,      "eassent",   ":Sq:3p/*",           False],
          152  +            [2,      "e",         ":E:2s/*",            False],
          153  +            [2,      "eons",      ":E:1p/*",            False],
          154  +            [2,      "ez",        ":E:2p/*",            False]
          155  +        ],
          156  +
          157  +        "cer": [
          158  +            [2,      "er",        ":Y/*",               False],
          159  +            [3,      "çant",      ":P/*",               False],
          160  +            [2,      "e",         ":Ip:Sp:1s:3s/*",     False],
          161  +            [2,      "è",         ":Ip:1ś/*",           False],
          162  +            [2,      "es",        ":Ip:Sp:2s/*",        False],
          163  +            [3,      "çons",      ":Ip:1p/*",           False],
          164  +            [2,      "ez",        ":Ip:2p/*",           False],
          165  +            [2,      "ent",       ":Ip:Sp:3p/*",        False],
          166  +            [3,      "çais",      ":Iq:1s:2s/*",        False],
          167  +            [3,      "çait",      ":Iq:3s/*",           False],
          168  +            [2,      "ions",      ":Iq:Sp:1p/*",        False],
          169  +            [2,      "iez",       ":Iq:Sp:2p/*",        False],
          170  +            [3,      "çaient",    ":Iq:3p/*",           False],
          171  +            [3,      "çai",       ":Is:1s/*",           False],
          172  +            [3,      "ças",       ":Is:2s/*",           False],
          173  +            [3,      "ça",        ":Is:3s/*",           False],
          174  +            [3,      "çâmes",     ":Is:1p/*",           False],
          175  +            [3,      "çâtes",     ":Is:2p/*",           False],
          176  +            [2,      "èrent",     ":Is:3p!/*",          False],
          177  +            [2,      "erai",      ":If:1s/*",           False],
          178  +            [2,      "eras",      ":If:2s/*",           False],
          179  +            [2,      "era",       ":If:3s/*",           False],
          180  +            [2,      "erons",     ":If:1p/*",           False],
          181  +            [2,      "erez",      ":If:2p/*",           False],
          182  +            [2,      "eront",     ":If:3p!/*",          False],
          183  +            [2,      "erais",     ":K:1s:2s/*",         False],
          184  +            [2,      "erait",     ":K:3s/*",            False],
          185  +            [2,      "erions",    ":K:1p/*",            False],
          186  +            [2,      "eriez",     ":K:2p/*",            False],
          187  +            [2,      "eraient",   ":K:3p/*",            False],
          188  +            [3,      "çasse",     ":Sq:1s/*",           False],
          189  +            [3,      "çasses",    ":Sq:2s/*",           False],
          190  +            [3,      "çât",       ":Sq:3s/*",           False],
          191  +            [3,      "çassions",  ":Sq:1p/*",           False],
          192  +            [3,      "çassiez",   ":Sq:2p/*",           False],
          193  +            [3,      "çassent",   ":Sq:3p/*",           False],
          194  +            [2,      "e",         ":E:2s/*",            False],
          195  +            [3,      "çons",      ":E:1p/*",            False],
          196  +            [2,      "ez",        ":E:2p/*",            False]
          197  +        ],
          198  +
          199  +        "yer": [
          200  +            [2,     "er",         ":Y/*",               False],
          201  +            [2,     "ant",        ":P/*",               False],
          202  +            [3,     "ye",         ":Ip:Sp:1s:3s/*",     "[^ou]yer$"],
          203  +            [3,     "ie",         ":Ip:Sp:1s:3s/*",     "[aou]yer$"],
          204  +            [2,     "è",          ":Ip:1ś/*",           False],
          205  +            [3,     "yes",        ":Ip:Sp:2s/*",        "[^ou]yer$"],
          206  +            [3,     "ies",        ":Ip:Sp:2s/*",        "[aou]yer$"],
          207  +            [2,     "ons",        ":Ip:1p/*",           False],
          208  +            [2,     "ez",         ":Ip:2p/*",           False],
          209  +            [3,     "yent",       ":Ip:Sp:3p/*",        "[^ou]yer$"],
          210  +            [3,     "ient",       ":Ip:Sp:3p/*",        "[aou]yer$"],
          211  +            [2,     "ais",        ":Iq:1s:2s/*",        False],
          212  +            [2,     "ait",        ":Iq:3s/*",           False],
          213  +            [2,     "ions",       ":Iq:Sp:1p/*",        False],
          214  +            [2,     "iez",        ":Iq:Sp:2p/*",        False],
          215  +            [2,     "aient",      ":Iq:3p/*",           False],
          216  +            [2,     "ai",         ":Is:1s/*",           False],
          217  +            [2,     "as",         ":Is:2s/*",           False],
          218  +            [2,     "a",          ":Is:3s/*",           False],
          219  +            [2,     "âmes",       ":Is:1p/*",           False],
          220  +            [2,     "âtes",       ":Is:2p/*",           False],
          221  +            [2,     "èrent",      ":Is:3p!/*",          False],
          222  +            [3,     "yerai",      ":If:1s/*",           "[^ou]yer$"],
          223  +            [3,     "ierai",      ":If:1s/*",           "[aou]yer$"],
          224  +            [3,     "yeras",      ":If:2s/*",           "[^ou]yer$"],
          225  +            [3,     "ieras",      ":If:2s/*",           "[aou]yer$"],
          226  +            [3,     "yera",       ":If:3s/*",           "[^ou]yer$"],
          227  +            [3,     "iera",       ":If:3s/*",           "[aou]yer$"],
          228  +            [3,     "yerons",     ":If:1p/*",           "[^ou]yer$"],
          229  +            [3,     "ierons",     ":If:1p/*",           "[aou]yer$"],
          230  +            [3,     "yerez",      ":If:2p/*",           "[^ou]yer$"],
          231  +            [3,     "ierez",      ":If:2p/*",           "[aou]yer$"],
          232  +            [3,     "yeront",     ":If:3p!/*",          "[^ou]yer$"],
          233  +            [3,     "ieront",     ":If:3p!/*",          "[aou]yer$"],
          234  +            [3,     "yerais",     ":K:1s:2s/*",         "[^ou]yer$"],
          235  +            [3,     "ierais",     ":K:1s:2s/*",         "[aou]yer$"],
          236  +            [3,     "yerait",     ":K:3s/*",            "[^ou]yer$"],
          237  +            [3,     "ierait",     ":K:3s/*",            "[aou]yer$"],
          238  +            [3,     "yerions",    ":K:1p/*",            "[^ou]yer$"],
          239  +            [3,     "ierions",    ":K:1p/*",            "[aou]yer$"],
          240  +            [3,     "yeriez",     ":K:2p/*",            "[^ou]yer$"],
          241  +            [3,     "ieriez",     ":K:2p/*",            "[aou]yer$"],
          242  +            [3,     "yeraient",   ":K:3p/*",            "[^ou]yer$"],
          243  +            [3,     "ieraient",   ":K:3p/*",            "[aou]yer$"],
          244  +            [2,     "asse",       ":Sq:1s/*",           False],
          245  +            [2,     "asses",      ":Sq:2s/*",           False],
          246  +            [2,     "ât",         ":Sq:3s/*",           False],
          247  +            [2,     "assions",    ":Sq:1p/*",           False],
          248  +            [2,     "assiez",     ":Sq:2p/*",           False],
          249  +            [2,     "assent",     ":Sq:3p/*",           False],
          250  +            [3,     "ye",         ":E:2s/*",            "[^ou]yer$"],
          251  +            [3,     "ie",         ":E:2s/*",            "[aou]yer$"],
          252  +            [2,     "ons",        ":E:1p/*",            False],
          253  +            [2,     "ez",         ":E:2p/*",            False]
          254  +        ],
          255  +
          256  +        # b
          257  +        # verbes en -ecer, -emer, -ener, -eper, -erer, -eser, -ever, -evrer
          258  +        # verbes en -eler, -eter (pas de doublement de la consonne: acheter, celer, déceler, receler, ciseler, démanteler,
          259  +        # écarteler, encasteler, geler, dégeler, congeler, surgeler, marteler, modeler, peler, acheter, racheter,
          260  +        # bégueter, corseter, crocheter, fileter, fureter, haleter)
          261  +        # changement du e en è avant syllabe muette
          262  +        "ecer": [
          263  +            [2,     "er",           ":Y/*",                 False],
          264  +            [3,     "çant",         ":P/*",                 False],
          265  +            [4,     "èce",          ":Ip:Sp:1s:3s/*",       False],
          266  +            [2,     "è",            ":Ip:1ś/R",             False],
          267  +            [4,     "èces",         ":Ip:Sp:2s/*",          False],
          268  +            [3,     "çons",         ":Ip:1p/*",             False],
          269  +            [2,     "ez",           ":Ip:2p/*",             False],
          270  +            [4,     "ècent",        ":Ip:Sp:3p/*",          False],
          271  +            [3,     "çais",         ":Iq:1s:2s/*",          False],
          272  +            [3,     "çait",         ":Iq:3s/*",             False],
          273  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          274  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          275  +            [3,     "çaient",       ":Iq:3p/*",             False],
          276  +            [3,     "çai",          ":Is:1s/*",             False],
          277  +            [3,     "ças",          ":Is:2s/*",             False],
          278  +            [3,     "ça",           ":Is:3s/*",             False],
          279  +            [3,     "çâmes",        ":Is:1p/*",             False],
          280  +            [3,     "çâtes",        ":Is:2p/*",             False],
          281  +            [2,     "èrent",        ":Is:3p!/*",            False],
          282  +            [4,     "ècerai",       ":If:1s/*",             False],
          283  +            [4,     "èceras",       ":If:2s/*",             False],
          284  +            [4,     "ècera",        ":If:3s/*",             False],
          285  +            [4,     "ècerons",      ":If:1p/*",             False],
          286  +            [4,     "ècerez",       ":If:2p/*",             False],
          287  +            [4,     "èceront",      ":If:3p!/*",            False],
          288  +            [4,     "ècerais",      ":K:1s:2s/*",           False],
          289  +            [4,     "ècerait",      ":K:3s/*",              False],
          290  +            [4,     "ècerions",     ":K:1p/*",              False],
          291  +            [4,     "èceriez",      ":K:2p/*",              False],
          292  +            [4,     "èceraient",    ":K:3p/*",              False],
          293  +            [3,     "çasse",        ":Sq:1s/*",             False],
          294  +            [3,     "çasses",       ":Sq:2s/*",             False],
          295  +            [3,     "çât",          ":Sq:3s/*",             False],
          296  +            [3,     "çassions",     ":Sq:1p/*",             False],
          297  +            [3,     "çassiez",      ":Sq:2p/*",             False],
          298  +            [3,     "çassent",      ":Sq:3p/*",             False],
          299  +            [4,     "èce",          ":E:2s/*",              False],
          300  +            [3,     "çons",         ":E:1p/*",              False],
          301  +            [2,     "ez",           ":E:2p/*",              False]
          302  +        ],
          303  +
          304  +        "eler": {
          305  +            "1": [
          306  +                [2,     "er",           ":Y/*",             False],
          307  +                [2,     "ant",          ":P/*",             False],
          308  +                [4,     "èle",          ":Ip:Sp:1s:3s/*",   False],
          309  +                [2,     "è",            ":Ip:1ś/R",         False],
          310  +                [4,     "èles",         ":Ip:Sp:2s/*",      False],
          311  +                [2,     "ons",          ":Ip:1p/*",         False],
          312  +                [2,     "ez",           ":Ip:2p/*",         False],
          313  +                [4,     "èlent",        ":Ip:Sp:3p/*",      False],
          314  +                [2,     "ais",          ":Iq:1s:2s/*",      False],
          315  +                [2,     "ait",          ":Iq:3s/*",         False],
          316  +                [2,     "ions",         ":Iq:Sp:1p/*",      False],
          317  +                [2,     "iez",          ":Iq:Sp:2p/*",      False],
          318  +                [2,     "aient",        ":Iq:3p/*",         False],
          319  +                [2,     "ai",           ":Is:1s/*",         False],
          320  +                [2,     "as",           ":Is:2s/*",         False],
          321  +                [2,     "a",            ":Is:3s/*",         False],
          322  +                [2,     "âmes",         ":Is:1p/*",         False],
          323  +                [2,     "âtes",         ":Is:2p/*",         False],
          324  +                [2,     "èrent",        ":Is:3p!/*",        False],
          325  +                [4,     "èlerai",       ":If:1s/*",         False],
          326  +                [4,     "èleras",       ":If:2s/*",         False],
          327  +                [4,     "èlera",        ":If:3s/*",         False],
          328  +                [4,     "èlerons",      ":If:1p/*",         False],
          329  +                [4,     "èlerez",       ":If:2p/*",         False],
          330  +                [4,     "èleront",      ":If:3p!/*",        False],
          331  +                [4,     "èlerais",      ":K:1s:2s/*",       False],
          332  +                [4,     "èlerait",      ":K:3s/*",          False],
          333  +                [4,     "èlerions",     ":K:1p/*",          False],
          334  +                [4,     "èleriez",      ":K:2p/*",          False],
          335  +                [4,     "èleraient",    ":K:3p/*",          False],
          336  +                [2,     "asse",         ":Sq:1s/*",         False],
          337  +                [2,     "asses",        ":Sq:2s/*",         False],
          338  +                [2,     "ât",           ":Sq:3s/*",         False],
          339  +                [2,     "assions",      ":Sq:1p/*",         False],
          340  +                [2,     "assiez",       ":Sq:2p/*",         False],
          341  +                [2,     "assent",       ":Sq:3p/*",         False],
          342  +                [4,     "èle",          ":E:2s/*",          False],
          343  +                [2,     "ons",          ":E:1p/*",          False],
          344  +                [2,     "ez",           ":E:2p/*",          False]
          345  +            ],
          346  +            "2": [
          347  +                # d. verbes en -eler : doublement de la consonne l.
          348  +                [2,     "er",           ":Y/*",             False],
          349  +                [2,     "ant",          ":P/*",             False],
          350  +                [4,     "elle",         ":Ip:Sp:1s:3s/*",   "ppeler$"],
          351  +                [4,     "elle",         ":Ip:Sp:1s:3s/M",   "[^p].eler$"],
          352  +                [4,     "èle",          ":Ip:Sp:1s:3s/R",   "[^p].eler$"],
          353  +                [2,     "è",            ":Ip:1ś/R",         False],
          354  +                [4,     "elles",        ":Ip:Sp:2s/*",      "ppeler$"],
          355  +                [4,     "elles",        ":Ip:Sp:2s/M",      "[^p].eler$"],
          356  +                [4,     "èles",         ":Ip:Sp:2s/R",      "[^p].eler$"],
          357  +                [2,     "ons",          ":Ip:1p/*",         False],
          358  +                [2,     "ez",           ":Ip:2p/*",         False],
          359  +                [4,     "ellent",       ":Ip:Sp:3p/*",      "ppeler$"],
          360  +                [4,     "ellent",       ":Ip:Sp:3p/M",      "[^p].eler$"],
          361  +                [4,     "èlent",        ":Ip:Sp:3p/R",      "[^p].eler$"],
          362  +                [2,     "ais",          ":Iq:1s:2s/*",      False],
          363  +                [2,     "ait",          ":Iq:3s/*",         False],
          364  +                [2,     "ions",         ":Iq:Sp:1p/*",      False],
          365  +                [2,     "iez",          ":Iq:Sp:2p/*",      False],
          366  +                [2,     "aient",        ":Iq:3p/*",         False],
          367  +                [2,     "ai",           ":Is:1s/*",         False],
          368  +                [2,     "as",           ":Is:2s/*",         False],
          369  +                [2,     "a",            ":Is:3s/*",         False],
          370  +                [2,     "âmes",         ":Is:1p/*",         False],
          371  +                [2,     "âtes",         ":Is:2p/*",         False],
          372  +                [2,     "èrent",        ":Is:3p!/*",        False],
          373  +                [4,     "ellerai",      ":If:1s/*",         "ppeler$"],
          374  +                [4,     "ellerai",      ":If:1s/M",         "[^p].eler$"],
          375  +                [4,     "èlerai",       ":If:1s/R",         "[^p].eler$"],
          376  +                [4,     "elleras",      ":If:2s/*",         "ppeler$"],
          377  +                [4,     "elleras",      ":If:2s/M",         "[^p].eler$"],
          378  +                [4,     "èleras",       ":If:2s/R",         "[^p].eler$"],
          379  +                [4,     "ellera",       ":If:3s/*",         "ppeler$"],
          380  +                [4,     "ellera",       ":If:3s/M",         "[^p].eler$"],
          381  +                [4,     "èlera",        ":If:3s/R",         "[^p].eler$"],
          382  +                [4,     "ellerons",     ":If:1p/*",         "ppeler$"],
          383  +                [4,     "ellerons",     ":If:1p/M",         "[^p].eler$"],
          384  +                [4,     "èlerons",      ":If:1p/R",         "[^p].eler$"],
          385  +                [4,     "ellerez",      ":If:2p/*",         "ppeler$"],
          386  +                [4,     "ellerez",      ":If:2p/M",         "[^p].eler$"],
          387  +                [4,     "èlerez",       ":If:2p/R",         "[^p].eler$"],
          388  +                [4,     "elleront",     ":If:3p!/*",        "ppeler$"],
          389  +                [4,     "elleront",     ":If:3p!/M",        "[^p].eler$"],
          390  +                [4,     "èleront",      ":If:3p!/R",        "[^p].eler$"],
          391  +                [4,     "ellerais",     ":K:1s:2s/*",       "ppeler$"],
          392  +                [4,     "ellerais",     ":K:1s:2s/M",       "[^p].eler$"],
          393  +                [4,     "èlerais",      ":K:1s:2s/R",       "[^p].eler$"],
          394  +                [4,     "ellerait",     ":K:3s/*",          "ppeler$"],
          395  +                [4,     "ellerait",     ":K:3s/M",          "[^p].eler$"],
          396  +                [4,     "èlerait",      ":K:3s/R",          "[^p].eler$"],
          397  +                [4,     "ellerions",    ":K:1p/*",          "ppeler$"],
          398  +                [4,     "ellerions",    ":K:1p/M",          "[^p].eler$"],
          399  +                [4,     "èlerions",     ":K:1p/R",          "[^p].eler$"],
          400  +                [4,     "elleriez",     ":K:2p/*",          "ppeler$"],
          401  +                [4,     "elleriez",     ":K:2p/M",          "[^p].eler$"],
          402  +                [4,     "èleriez",      ":K:2p/R",          "[^p].eler$"],
          403  +                [4,     "elleraient",   ":K:3p/*",          "ppeler$"],
          404  +                [4,     "elleraient",   ":K:3p/M",          "[^p].eler$"],
          405  +                [4,     "èleraient",    ":K:3p/R",          "[^p].eler$"],
          406  +                [2,     "asse",         ":Sq:1s/*",         False],
          407  +                [2,     "asses",        ":Sq:2s/*",         False],
          408  +                [2,     "ât",           ":Sq:3s/*",         False],
          409  +                [2,     "assions",      ":Sq:1p/*",         False],
          410  +                [2,     "assiez",       ":Sq:2p/*",         False],
          411  +                [2,     "assent",       ":Sq:3p/*",         False],
          412  +                [4,     "elle",         ":E:2s/*",          "ppeler$"],
          413  +                [4,     "elle",         ":E:2s/M",          "[^p].eler$"],
          414  +                [4,     "èle",          ":E:2s/R",          "[^p].eler$"],
          415  +                [2,     "ons",          ":E:1p/*",          False],
          416  +                [2,     "ez",           ":E:2p/*",          False]
          417  +            ],
          418  +        },
          419  +
          420  +        "emer": [
          421  +            [2,     "er",           ":Y/*",                 False],
          422  +            [2,     "ant",          ":P/*",                 False],
          423  +            [4,     "ème",          ":Ip:Sp:1s:3s/*",       False],
          424  +            [2,     "è",            ":Ip:1ś/R",             False],
          425  +            [4,     "èmes",         ":Ip:Sp:2s/*",          False],
          426  +            [2,     "ons",          ":Ip:1p/*",             False],
          427  +            [2,     "ez",           ":Ip:2p/*",             False],
          428  +            [4,     "èment",        ":Ip:Sp:3p/*",          False],
          429  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
          430  +            [2,     "ait",          ":Iq:3s/*",             False],
          431  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          432  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          433  +            [2,     "aient",        ":Iq:3p/*",             False],
          434  +            [2,     "ai",           ":Is:1s/*",             False],
          435  +            [2,     "as",           ":Is:2s/*",             False],
          436  +            [2,     "a",            ":Is:3s/*",             False],
          437  +            [2,     "âmes",         ":Is:1p/*",             False],
          438  +            [2,     "âtes",         ":Is:2p/*",             False],
          439  +            [2,     "èrent",        ":Is:3p!/*",            False],
          440  +            [4,     "èmerai",       ":If:1s/*",             False],
          441  +            [4,     "èmeras",       ":If:2s/*",             False],
          442  +            [4,     "èmera",        ":If:3s/*",             False],
          443  +            [4,     "èmerons",      ":If:1p/*",             False],
          444  +            [4,     "èmerez",       ":If:2p/*",             False],
          445  +            [4,     "èmeront",      ":If:3p!/*",            False],
          446  +            [4,     "èmerais",      ":K:1s:2s/*",           False],
          447  +            [4,     "èmerait",      ":K:3s/*",              False],
          448  +            [4,     "èmerions",     ":K:1p/*",              False],
          449  +            [4,     "èmeriez",      ":K:2p/*",              False],
          450  +            [4,     "èmeraient",    ":K:3p/*",              False],
          451  +            [2,     "asse",         ":Sq:1s/*",             False],
          452  +            [2,     "asses",        ":Sq:2s/*",             False],
          453  +            [2,     "ât",           ":Sq:3s/*",             False],
          454  +            [2,     "assions",      ":Sq:1p/*",             False],
          455  +            [2,     "assiez",       ":Sq:2p/*",             False],
          456  +            [2,     "assent",       ":Sq:3p/*",             False],
          457  +            [4,     "ème",          ":E:2s/*",              False],
          458  +            [2,     "ons",          ":E:1p/*",              False],
          459  +            [2,     "ez",           ":E:2p/*",              False]
          460  +        ],
          461  +
          462  +        "ener": [
          463  +            [2,     "er",           ":Y/*",                 False],
          464  +            [2,     "ant",          ":P/*",                 False],
          465  +            [4,     "ène",          ":Ip:Sp:1s:3s/*",       False],
          466  +            [2,     "è",            ":Ip:1ś/R",             False],
          467  +            [4,     "ènes",         ":Ip:Sp:2s/*",          False],
          468  +            [2,     "ons",          ":Ip:1p/*",             False],
          469  +            [2,     "ez",           ":Ip:2p/*",             False],
          470  +            [4,     "ènent",        ":Ip:Sp:3p/*",          False],
          471  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
          472  +            [2,     "ait",          ":Iq:3s/*",             False],
          473  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          474  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          475  +            [2,     "aient",        ":Iq:3p/*",             False],
          476  +            [2,     "ai",           ":Is:1s/*",             False],
          477  +            [2,     "as",           ":Is:2s/*",             False],
          478  +            [2,     "a",            ":Is:3s/*",             False],
          479  +            [2,     "âmes",         ":Is:1p/*",             False],
          480  +            [2,     "âtes",         ":Is:2p/*",             False],
          481  +            [2,     "èrent",        ":Is:3p!/*",            False],
          482  +            [4,     "ènerai",       ":If:1s/*",             False],
          483  +            [4,     "èneras",       ":If:2s/*",             False],
          484  +            [4,     "ènera",        ":If:3s/*",             False],
          485  +            [4,     "ènerons",      ":If:1p/*",             False],
          486  +            [4,     "ènerez",       ":If:2p/*",             False],
          487  +            [4,     "èneront",      ":If:3p!/*",            False],
          488  +            [4,     "ènerais",      ":K:1s:2s/*",           False],
          489  +            [4,     "ènerait",      ":K:3s/*",              False],
          490  +            [4,     "ènerions",     ":K:1p/*",              False],
          491  +            [4,     "èneriez",      ":K:2p/*",              False],
          492  +            [4,     "èneraient",    ":K:3p/*",              False],
          493  +            [2,     "asse",         ":Sq:1s/*",             False],
          494  +            [2,     "asses",        ":Sq:2s/*",             False],
          495  +            [2,     "ât",           ":Sq:3s/*",             False],
          496  +            [2,     "assions",      ":Sq:1p/*",             False],
          497  +            [2,     "assiez",       ":Sq:2p/*",             False],
          498  +            [2,     "assent",       ":Sq:3p/*",             False],
          499  +            [4,     "ène",          ":E:2s/*",              False],
          500  +            [2,     "ons",          ":E:1p/*",              False],
          501  +            [2,     "ez",           ":E:2p/*",              False]
          502  +        ],
          503  +
          504  +        "eper": [
          505  +            [2,     "er",           ":Y/*",                 False],
          506  +            [2,     "ant",          ":P/*",                 False],
          507  +            [4,     "èpe",          ":Ip:Sp:1s:3s/*",       False],
          508  +            [2,     "è",            ":Ip:1ś/R",             False],
          509  +            [4,     "èpes",         ":Ip:Sp:2s/*",          False],
          510  +            [2,     "ons",          ":Ip:1p/*",             False],
          511  +            [2,     "ez",           ":Ip:2p/*",             False],
          512  +            [4,     "èpent",        ":Ip:Sp:3p/*",          False],
          513  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
          514  +            [2,     "ait",          ":Iq:3s/*",             False],
          515  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          516  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          517  +            [2,     "aient",        ":Iq:3p/*",             False],
          518  +            [2,     "ai",           ":Is:1s/*",             False],
          519  +            [2,     "as",           ":Is:2s/*",             False],
          520  +            [2,     "a",            ":Is:3s/*",             False],
          521  +            [2,     "âmes",         ":Is:1p/*",             False],
          522  +            [2,     "âtes",         ":Is:2p/*",             False],
          523  +            [2,     "èrent",        ":Is:3p!/*",            False],
          524  +            [4,     "èperai",       ":If:1s/*",             False],
          525  +            [4,     "èperas",       ":If:2s/*",             False],
          526  +            [4,     "èpera",        ":If:3s/*",             False],
          527  +            [4,     "èperons",      ":If:1p/*",             False],
          528  +            [4,     "èperez",       ":If:2p/*",             False],
          529  +            [4,     "èperont",      ":If:3p!/*",            False],
          530  +            [4,     "èperais",      ":K:1s:2s/*",           False],
          531  +            [4,     "èperait",      ":K:3s/*",              False],
          532  +            [4,     "èperions",     ":K:1p/*",              False],
          533  +            [4,     "èperiez",      ":K:2p/*",              False],
          534  +            [4,     "èperaient",    ":K:3p/*",              False],
          535  +            [2,     "asse",         ":Sq:1s/*",             False],
          536  +            [2,     "asses",        ":Sq:2s/*",             False],
          537  +            [2,     "ât",           ":Sq:3s/*",             False],
          538  +            [2,     "assions",      ":Sq:1p/*",             False],
          539  +            [2,     "assiez",       ":Sq:2p/*",             False],
          540  +            [2,     "assent",       ":Sq:3p/*",             False],
          541  +            [4,     "èpe",          ":E:2s/*",              False],
          542  +            [2,     "ons",          ":E:1p/*",              False],
          543  +            [2,     "ez",           ":E:2p/*",              False]
          544  +        ],
          545  +
          546  +        "erer": [
          547  +            [2,     "er",           ":Y/*",                 False],
          548  +            [2,     "ant",          ":P/*",                 False],
          549  +            [4,     "ère",          ":Ip:Sp:1s:3s/*",       False],
          550  +            [2,     "è",            ":Ip:1ś/R",             False],
          551  +            [4,     "ères",         ":Ip:Sp:2s/*",          False],
          552  +            [2,     "ons",          ":Ip:1p/*",             False],
          553  +            [2,     "ez",           ":Ip:2p/*",             False],
          554  +            [4,     "èrent",        ":Ip:Sp:3p/*",          False],
          555  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
          556  +            [2,     "ait",          ":Iq:3s/*",             False],
          557  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          558  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          559  +            [2,     "aient",        ":Iq:3p/*",             False],
          560  +            [2,     "ai",           ":Is:1s/*",             False],
          561  +            [2,     "as",           ":Is:2s/*",             False],
          562  +            [2,     "a",            ":Is:3s/*",             False],
          563  +            [2,     "âmes",         ":Is:1p/*",             False],
          564  +            [2,     "âtes",         ":Is:2p/*",             False],
          565  +            [2,     "èrent",        ":Is:3p!/*",            False],
          566  +            [4,     "èrerai",       ":If:1s/*",             False],
          567  +            [4,     "èreras",       ":If:2s/*",             False],
          568  +            [4,     "èrera",        ":If:3s/*",             False],
          569  +            [4,     "èrerons",      ":If:1p/*",             False],
          570  +            [4,     "èrerez",       ":If:2p/*",             False],
          571  +            [4,     "èreront",      ":If:3p!/*",            False],
          572  +            [4,     "èrerais",      ":K:1s:2s/*",           False],
          573  +            [4,     "èrerait",      ":K:3s/*",              False],
          574  +            [4,     "èrerions",     ":K:1p/*",              False],
          575  +            [4,     "èreriez",      ":K:2p/*",              False],
          576  +            [4,     "èreraient",    ":K:3p/*",              False],
          577  +            [2,     "asse",         ":Sq:1s/*",             False],
          578  +            [2,     "asses",        ":Sq:2s/*",             False],
          579  +            [2,     "ât",           ":Sq:3s/*",             False],
          580  +            [2,     "assions",      ":Sq:1p/*",             False],
          581  +            [2,     "assiez",       ":Sq:2p/*",             False],
          582  +            [2,     "assent",       ":Sq:3p/*",             False],
          583  +            [4,     "ère",          ":E:2s/*",              False],
          584  +            [2,     "ons",          ":E:1p/*",              False],
          585  +            [2,     "ez",           ":E:2p/*",              False]
          586  +        ],
          587  +
          588  +        "eser": [
          589  +            [2,     "er",           ":Y/*",                 False],
          590  +            [2,     "ant",          ":P/*",                 False],
          591  +            [4,     "èse",          ":Ip:Sp:1s:3s/*",       False],
          592  +            [2,     "è",            ":Ip:1ś/R",             False],
          593  +            [4,     "èses",         ":Ip:Sp:2s/*",          False],
          594  +            [2,     "ons",          ":Ip:1p/*",             False],
          595  +            [2,     "ez",           ":Ip:2p/*",             False],
          596  +            [4,     "èsent",        ":Ip:Sp:3p/*",          False],
          597  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
          598  +            [2,     "ait",          ":Iq:3s/*",             False],
          599  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          600  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          601  +            [2,     "aient",        ":Iq:3p/*",             False],
          602  +            [2,     "ai",           ":Is:1s/*",             False],
          603  +            [2,     "as",           ":Is:2s/*",             False],
          604  +            [2,     "a",            ":Is:3s/*",             False],
          605  +            [2,     "âmes",         ":Is:1p/*",             False],
          606  +            [2,     "âtes",         ":Is:2p/*",             False],
          607  +            [2,     "èrent",        ":Is:3p!/*",            False],
          608  +            [4,     "èserai",       ":If:1s/*",             False],
          609  +            [4,     "èseras",       ":If:2s/*",             False],
          610  +            [4,     "èsera",        ":If:3s/*",             False],
          611  +            [4,     "èserons",      ":If:1p/*",             False],
          612  +            [4,     "èserez",       ":If:2p/*",             False],
          613  +            [4,     "èseront",      ":If:3p!/*",            False],
          614  +            [4,     "èserais",      ":K:1s:2s/*",           False],
          615  +            [4,     "èserait",      ":K:3s/*",              False],
          616  +            [4,     "èserions",     ":K:1p/*",              False],
          617  +            [4,     "èseriez",      ":K:2p/*",              False],
          618  +            [4,     "èseraient",    ":K:3p/*",              False],
          619  +            [2,     "asse",         ":Sq:1s/*",             False],
          620  +            [2,     "asses",        ":Sq:2s/*",             False],
          621  +            [2,     "ât",           ":Sq:3s/*",             False],
          622  +            [2,     "assions",      ":Sq:1p/*",             False],
          623  +            [2,     "assiez",       ":Sq:2p/*",             False],
          624  +            [2,     "assent",       ":Sq:3p/*",             False],
          625  +            [4,     "èse",          ":E:2s/*",              False],
          626  +            [2,     "ons",          ":E:1p/*",              False],
          627  +            [2,     "ez",           ":E:2p/*",              False]
          628  +        ],
          629  +
          630  +        "eter": {
          631  +            "1": [
          632  +                [2,     "er",           ":Y/*",                 False],
          633  +                [2,     "ant",          ":P/*",                 False],
          634  +                [4,     "ète",          ":Ip:Sp:1s:3s/*",       False],
          635  +                [2,     "è",            ":Ip:1ś/R",             False],
          636  +                [4,     "ètes",         ":Ip:Sp:2s/*",          False],
          637  +                [2,     "ons",          ":Ip:1p/*",             False],
          638  +                [2,     "ez",           ":Ip:2p/*",             False],
          639  +                [4,     "ètent",        ":Ip:Sp:3p/*",          False],
          640  +                [2,     "ais",          ":Iq:1s:2s/*",          False],
          641  +                [2,     "ait",          ":Iq:3s/*",             False],
          642  +                [2,     "ions",         ":Iq:Sp:1p/*",          False],
          643  +                [2,     "iez",          ":Iq:Sp:2p/*",          False],
          644  +                [2,     "aient",        ":Iq:3p/*",             False],
          645  +                [2,     "ai",           ":Is:1s/*",             False],
          646  +                [2,     "as",           ":Is:2s/*",             False],
          647  +                [2,     "a",            ":Is:3s/*",             False],
          648  +                [2,     "âmes",         ":Is:1p/*",             False],
          649  +                [2,     "âtes",         ":Is:2p/*",             False],
          650  +                [2,     "èrent",        ":Is:3p!/*",            False],
          651  +                [4,     "èterai",       ":If:1s/*",             False],
          652  +                [4,     "èteras",       ":If:2s/*",             False],
          653  +                [4,     "ètera",        ":If:3s/*",             False],
          654  +                [4,     "èterons",      ":If:1p/*",             False],
          655  +                [4,     "èterez",       ":If:2p/*",             False],
          656  +                [4,     "èteront",      ":If:3p!/*",            False],
          657  +                [4,     "èterais",      ":K:1s:2s/*",           False],
          658  +                [4,     "èterait",      ":K:3s/*",              False],
          659  +                [4,     "èterions",     ":K:1p/*",              False],
          660  +                [4,     "èteriez",      ":K:2p/*",              False],
          661  +                [4,     "èteraient",    ":K:3p/*",              False],
          662  +                [2,     "asse",         ":Sq:1s/*",             False],
          663  +                [2,     "asses",        ":Sq:2s/*",             False],
          664  +                [2,     "ât",           ":Sq:3s/*",             False],
          665  +                [2,     "assions",      ":Sq:1p/*",             False],
          666  +                [2,     "assiez",       ":Sq:2p/*",             False],
          667  +                [2,     "assent",       ":Sq:3p/*",             False],
          668  +                [4,     "ète",          ":E:2s/*",              False],
          669  +                [2,     "ons",          ":E:1p/*",              False],
          670  +                [2,     "ez",           ":E:2p/*",              False]
          671  +            ],
          672  +            "2": [
          673  +                # d. verbes en -eter : doublement de la consonne t
          674  +                [2,     "er",           ":Y/*",                 False],
          675  +                [2,     "ant",          ":P/*",                 False],
          676  +                [4,     "ette",         ":Ip:Sp:1s:3s/*",       "jeter$"],
          677  +                [4,     "ette",         ":Ip:Sp:1s:3s/M",       "[^j]eter$"],
          678  +                [4,     "ète",          ":Ip:Sp:1s:3s/R",       "[^j]eter$"],
          679  +                [2,     "è",            ":Ip:1ś/R",             False],
          680  +                [4,     "ettes",        ":Ip:Sp:2s/*",          "jeter$"],
          681  +                [4,     "ettes",        ":Ip:Sp:2s/M",          "[^j]eter$"],
          682  +                [4,     "ètes",         ":Ip:Sp:2s/R",          "[^j]eter$"],
          683  +                [2,     "ons",          ":Ip:1p/*",             False],
          684  +                [2,     "ez",           ":Ip:2p/*",             False],
          685  +                [4,     "ettent",       ":Ip:Sp:3p/*",          "jeter$"],
          686  +                [4,     "ettent",       ":Ip:Sp:3p/M",          "[^j]eter$"],
          687  +                [4,     "ètent",        ":Ip:Sp:3p/R",          "[^j]eter$"],
          688  +                [2,     "ais",          ":Iq:1s:2s/*",          False],
          689  +                [2,     "ait",          ":Iq:3s/*",             False],
          690  +                [2,     "ions",         ":Iq:Sp:1p/*",          False],
          691  +                [2,     "iez",          ":Iq:Sp:2p/*",          False],
          692  +                [2,     "aient",        ":Iq:3p/*",             False],
          693  +                [2,     "ai",           ":Is:1s/*",             False],
          694  +                [2,     "as",           ":Is:2s/*",             False],
          695  +                [2,     "a",            ":Is:3s/*",             False],
          696  +                [2,     "âmes",         ":Is:1p/*",             False],
          697  +                [2,     "âtes",         ":Is:2p/*",             False],
          698  +                [2,     "èrent",        ":Is:3p!/*",            False],
          699  +                [4,     "etterai",      ":If:1s/*",             "jeter$"],
          700  +                [4,     "etterai",      ":If:1s/M",             "[^j]eter$"],
          701  +                [4,     "èterai",       ":If:1s/R",             "[^j]eter$"],
          702  +                [4,     "etteras",      ":If:2s/*",             "jeter$"],
          703  +                [4,     "etteras",      ":If:2s/M",             "[^j]eter$"],
          704  +                [4,     "èteras",       ":If:2s/R",             "[^j]eter$"],
          705  +                [4,     "ettera",       ":If:3s/*",             "jeter$"],
          706  +                [4,     "ettera",       ":If:3s/M",             "[^j]eter$"],
          707  +                [4,     "ètera",        ":If:3s/R",             "[^j]eter$"],
          708  +                [4,     "etterons",     ":If:1p/*",             "jeter$"],
          709  +                [4,     "etterons",     ":If:1p/M",             "[^j]eter$"],
          710  +                [4,     "èterons",      ":If:1p/R",             "[^j]eter$"],
          711  +                [4,     "etterez",      ":If:2p/*",             "jeter$"],
          712  +                [4,     "etterez",      ":If:2p/M",             "[^j]eter$"],
          713  +                [4,     "èterez",       ":If:2p/R",             "[^j]eter$"],
          714  +                [4,     "etteront",     ":If:3p!/*",            "jeter$"],
          715  +                [4,     "etteront",     ":If:3p!/M",            "[^j]eter$"],
          716  +                [4,     "èteront",      ":If:3p!/R",            "[^j]eter$"],
          717  +                [4,     "etterais",     ":K:1s:2s/*",           "jeter$"],
          718  +                [4,     "etterais",     ":K:1s:2s/M",           "[^j]eter$"],
          719  +                [4,     "èterais",      ":K:1s:2s/R",           "[^j]eter$"],
          720  +                [4,     "etterait",     ":K:3s/*",              "jeter$"],
          721  +                [4,     "etterait",     ":K:3s/M",              "[^j]eter$"],
          722  +                [4,     "èterait",      ":K:3s/R",              "[^j]eter$"],
          723  +                [4,     "etterions",    ":K:1p/*",              "jeter$"],
          724  +                [4,     "etterions",    ":K:1p/M",              "[^j]eter$"],
          725  +                [4,     "èterions",     ":K:1p/R",              "[^j]eter$"],
          726  +                [4,     "etteriez",     ":K:2p/*",              "jeter$"],
          727  +                [4,     "etteriez",     ":K:2p/M",              "[^j]eter$"],
          728  +                [4,     "èteriez",      ":K:2p/R",              "[^j]eter$"],
          729  +                [4,     "etteraient",   ":K:3p/*",              "jeter$"],
          730  +                [4,     "etteraient",   ":K:3p/M",              "[^j]eter$"],
          731  +                [4,     "èteraient",    ":K:3p/R",              "[^j]eter$"],
          732  +                [2,     "asse",         ":Sq:1s/*",             False],
          733  +                [2,     "asses",        ":Sq:2s/*",             False],
          734  +                [2,     "ât",           ":Sq:3s/*",             False],
          735  +                [2,     "assions",      ":Sq:1p/*",             False],
          736  +                [2,     "assiez",       ":Sq:2p/*",             False],
          737  +                [2,     "assent",       ":Sq:3p/*",             False],
          738  +                [4,     "ette",         ":E:2s/*",              "jeter$"],
          739  +                [4,     "ette",         ":E:2s/M",              "[^j]eter$"],
          740  +                [4,     "ète",          ":E:2s/R",              "[^j]eter$"],
          741  +                [2,     "ons",          ":E:1p/*",              False],
          742  +                [2,     "ez",           ":E:2p/*",              False]
          743  +            ]
          744  +        },
          745  +
          746  +        "ever": [
          747  +            [2,     "er",           ":Y/*",                 False],
          748  +            [2,     "ant",          ":P/*",                 False],
          749  +            [4,     "ève",          ":Ip:Sp:1s:3s/*",       False],
          750  +            [2,     "è",            ":Ip:1ś/R",             False],
          751  +            [4,     "èves",         ":Ip:Sp:2s/*",          False],
          752  +            [2,     "ons",          ":Ip:1p/*",             False],
          753  +            [2,     "ez",           ":Ip:2p/*",             False],
          754  +            [4,     "èvent",        ":Ip:Sp:3p/*",          False],
          755  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
          756  +            [2,     "ait",          ":Iq:3s/*",             False],
          757  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          758  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          759  +            [2,     "aient",        ":Iq:3p/*",             False],
          760  +            [2,     "ai",           ":Is:1s/*",             False],
          761  +            [2,     "as",           ":Is:2s/*",             False],
          762  +            [2,     "a",            ":Is:3s/*",             False],
          763  +            [2,     "âmes",         ":Is:1p/*",             False],
          764  +            [2,     "âtes",         ":Is:2p/*",             False],
          765  +            [2,     "èrent",        ":Is:3p!/*",            False],
          766  +            [4,     "èverai",       ":If:1s/*",             False],
          767  +            [4,     "èveras",       ":If:2s/*",             False],
          768  +            [4,     "èvera",        ":If:3s/*",             False],
          769  +            [4,     "èverons",      ":If:1p/*",             False],
          770  +            [4,     "èverez",       ":If:2p/*",             False],
          771  +            [4,     "èveront",      ":If:3p!/*",            False],
          772  +            [4,     "èverais",      ":K:1s:2s/*",           False],
          773  +            [4,     "èverait",      ":K:3s/*",              False],
          774  +            [4,     "èverions",     ":K:1p/*",              False],
          775  +            [4,     "èveriez",      ":K:2p/*",              False],
          776  +            [4,     "èveraient",    ":K:3p/*",              False],
          777  +            [2,     "asse",         ":Sq:1s/*",             False],
          778  +            [2,     "asses",        ":Sq:2s/*",             False],
          779  +            [2,     "ât",           ":Sq:3s/*",             False],
          780  +            [2,     "assions",      ":Sq:1p/*",             False],
          781  +            [2,     "assiez",       ":Sq:2p/*",             False],
          782  +            [2,     "assent",       ":Sq:3p/*",             False],
          783  +            [4,     "ève",          ":E:2s/*",              False],
          784  +            [2,     "ons",          ":E:1p/*",              False],
          785  +            [2,     "ez",           ":E:2p/*",              False]
          786  +        ],
          787  +
          788  +        "evrer": [
          789  +            [2,     "er",           ":Y/*",                 False],
          790  +            [2,     "ant",          ":P/*",                 False],
          791  +            [5,     "èvre",         ":Ip:Sp:1s:3s/*",       False],
          792  +            [2,     "è",            ":Ip:1ś/R",             False],
          793  +            [5,     "èvres",        ":Ip:Sp:2s/*",          False],
          794  +            [2,     "ons",          ":Ip:1p/*",             False],
          795  +            [2,     "ez",           ":Ip:2p/*",             False],
          796  +            [5,     "èvrent",       ":Ip:Sp:3p/*",          False],
          797  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
          798  +            [2,     "ait",          ":Iq:3s/*",             False],
          799  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          800  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          801  +            [2,     "aient",        ":Iq:3p/*",             False],
          802  +            [2,     "ai",           ":Is:1s/*",             False],
          803  +            [2,     "as",           ":Is:2s/*",             False],
          804  +            [2,     "a",            ":Is:3s/*",             False],
          805  +            [2,     "âmes",         ":Is:1p/*",             False],
          806  +            [2,     "âtes",         ":Is:2p/*",             False],
          807  +            [2,     "èrent",        ":Is:3p!/*",            False],
          808  +            [5,     "èvrerai",      ":If:1s/*",             False],
          809  +            [5,     "èvreras",      ":If:2s/*",             False],
          810  +            [5,     "èvrera",       ":If:3s/*",             False],
          811  +            [5,     "èvrerons",     ":If:1p/*",             False],
          812  +            [5,     "èvrerez",      ":If:2p/*",             False],
          813  +            [5,     "èvreront",     ":If:3p!/*",            False],
          814  +            [5,     "èvrerais",     ":K:1s:2s/*",           False],
          815  +            [5,     "èvrerait",     ":K:3s/*",              False],
          816  +            [5,     "èvrerions",    ":K:1p/*",              False],
          817  +            [5,     "èvreriez",     ":K:2p/*",              False],
          818  +            [5,     "èvreraient",   ":K:3p/*",              False],
          819  +            [2,     "asse",         ":Sq:1s/*",             False],
          820  +            [2,     "asses",        ":Sq:2s/*",             False],
          821  +            [2,     "ât",           ":Sq:3s/*",             False],
          822  +            [2,     "assions",      ":Sq:1p/*",             False],
          823  +            [2,     "assiez",       ":Sq:2p/*",             False],
          824  +            [2,     "assent",       ":Sq:3p/*",             False],
          825  +            [5,     "èvre",         ":E:2s/*",              False],
          826  +            [2,     "ons",          ":E:1p/*",              False],
          827  +            [2,     "ez",           ":E:2p/*",              False]
          828  +        ],
          829  +
          830  +        # c
          831  +        # verbes en -ébrer, -écer, -écher, -écrer, -éder, -éger, -égler, -égner, -égrer, -éguer,
          832  +        #           -éler, -émer, -éner, -éper, -équer, -érer, -éser, -éter, -étrer, -évrer, -éyer
          833  +        # changement du é en è
          834  +
          835  +        "écer": [
          836  +            [2,     "er",           ":Y/*",                 False],
          837  +            [4,     "éçant",        ":P/*",                 False],
          838  +            [4,     "èce",          ":Ip:Sp:1s:3s/*",       False],
          839  +            [2,     "è",            ":Ip:1ś/R",             False],
          840  +            [4,     "èces",         ":Ip:Sp:2s/*",          False],
          841  +            [4,     "éçons",        ":Ip:1p/*",             False],
          842  +            [2,     "ez",           ":Ip:2p/*",             False],
          843  +            [4,     "ècent",        ":Ip:Sp:3p/*",          False],
          844  +            [4,     "éçais",        ":Iq:1s:2s/*",          False],
          845  +            [4,     "éçait",        ":Iq:3s/*",             False],
          846  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          847  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          848  +            [4,     "éçaient",      ":Iq:3p/*",             False],
          849  +            [4,     "éçai",         ":Is:1s/*",             False],
          850  +            [4,     "éças",         ":Is:2s/*",             False],
          851  +            [4,     "éça",          ":Is:3s/*",             False],
          852  +            [4,     "éçâmes",       ":Is:1p/*",             False],
          853  +            [4,     "éçâtes",       ":Is:2p/*",             False],
          854  +            [2,     "èrent",        ":Is:3p!/*",            False],
          855  +            [2,     "erai",         ":If:1s/M",             False],
          856  +            [4,     "ècerai",       ":If:1s/R",             False],
          857  +            [2,     "eras",         ":If:2s/M",             False],
          858  +            [4,     "èceras",       ":If:2s/R",             False],
          859  +            [2,     "era",          ":If:3s/M",             False],
          860  +            [4,     "ècera",        ":If:3s/R",             False],
          861  +            [2,     "erons",        ":If:1p/M",             False],
          862  +            [4,     "ècerons",      ":If:1p/R",             False],
          863  +            [2,     "erez",         ":If:2p/M",             False],
          864  +            [4,     "ècerez",       ":If:2p/R",             False],
          865  +            [2,     "eront",        ":If:3p!/M",            False],
          866  +            [4,     "èceront",      ":If:3p!/R",            False],
          867  +            [2,     "erais",        ":K:1s:2s/M",           False],
          868  +            [4,     "ècerais",      ":K:1s:2s/R",           False],
          869  +            [2,     "erait",        ":K:3s/M",              False],
          870  +            [4,     "ècerait",      ":K:3s/R",              False],
          871  +            [2,     "erions",       ":K:1p/M",              False],
          872  +            [4,     "ècerions",     ":K:1p/R",              False],
          873  +            [2,     "eriez",        ":K:2p/M",              False],
          874  +            [4,     "èceriez",      ":K:2p/R",              False],
          875  +            [2,     "eraient",      ":K:3p/M",              False],
          876  +            [4,     "èceraient",    ":K:3p/R",              False],
          877  +            [4,     "éçasse",       ":Sq:1s/*",             False],
          878  +            [4,     "éçasses",      ":Sq:2s/*",             False],
          879  +            [4,     "éçât",         ":Sq:3s/*",             False],
          880  +            [4,     "éçassions",    ":Sq:1p/*",             False],
          881  +            [4,     "éçassiez",     ":Sq:2p/*",             False],
          882  +            [4,     "éçassent",     ":Sq:3p/*",             False],
          883  +            [4,     "èce",          ":E:2s/*",              False],
          884  +            [4,     "éçons",        ":E:1p/*",              False],
          885  +            [2,     "ez",           ":E:2p/*",              False]
          886  +        ],
          887  +
          888  +        "éger": [
          889  +            [2,     "er",           ":Y/*",                 False],
          890  +            [4,     "égeant",       ":P/*",                 False],
          891  +            [4,     "ège",          ":Ip:Sp:1s:3s/*",       False],
          892  +            [2,     "è",            ":Ip:1ś/R",             False],
          893  +            [4,     "èges",         ":Ip:Sp:2s/*",          False],
          894  +            [4,     "égeons",       ":Ip:1p/*",             False],
          895  +            [2,     "ez",           ":Ip:2p/*",             False],
          896  +            [4,     "ègent",        ":Ip:Sp:3p/*",          False],
          897  +            [4,     "égeais",       ":Iq:1s:2s/*",          False],
          898  +            [4,     "égeait",       ":Iq:3s/*",             False],
          899  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          900  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          901  +            [4,     "égeaient",     ":Iq:3p/*",             False],
          902  +            [4,     "égeai",        ":Is:1s/*",             False],
          903  +            [4,     "égeas",        ":Is:2s/*",             False],
          904  +            [4,     "égea",         ":Is:3s/*",             False],
          905  +            [4,     "égeâmes",      ":Is:1p/*",             False],
          906  +            [4,     "égeâtes",      ":Is:2p/*",             False],
          907  +            [2,     "èrent",        ":Is:3p!/*",            False],
          908  +            [2,     "erai",         ":If:1s/M",             False],
          909  +            [4,     "ègerai",       ":If:1s/R",             False],
          910  +            [2,     "eras",         ":If:2s/M",             False],
          911  +            [4,     "ègeras",       ":If:2s/R",             False],
          912  +            [2,     "era",          ":If:3s/M",             False],
          913  +            [4,     "ègera",        ":If:3s/R",             False],
          914  +            [2,     "erons",        ":If:1p/M",             False],
          915  +            [4,     "ègerons",      ":If:1p/R",             False],
          916  +            [2,     "erez",         ":If:2p/M",             False],
          917  +            [4,     "ègerez",       ":If:2p/R",             False],
          918  +            [2,     "eront",        ":If:3p!/M",            False],
          919  +            [4,     "ègeront",      ":If:3p!/R",            False],
          920  +            [2,     "erais",        ":K:1s:2s/M",           False],
          921  +            [4,     "ègerais",      ":K:1s:2s/R",           False],
          922  +            [2,     "erait",        ":K:3s/M",              False],
          923  +            [4,     "ègerait",      ":K:3s/R",              False],
          924  +            [2,     "erions",       ":K:1p/M",              False],
          925  +            [4,     "ègerions",     ":K:1p/R",              False],
          926  +            [2,     "eriez",        ":K:2p/M",              False],
          927  +            [4,     "ègeriez",      ":K:2p/R",              False],
          928  +            [2,     "eraient",      ":K:3p/M",              False],
          929  +            [4,     "ègeraient",    ":K:3p/R",              False],
          930  +            [4,     "égeasse",      ":Sq:1s/*",             False],
          931  +            [4,     "égeasses",     ":Sq:2s/*",             False],
          932  +            [4,     "égeât",        ":Sq:3s/*",             False],
          933  +            [4,     "égeassions",   ":Sq:1p/*",             False],
          934  +            [4,     "égeassiez",    ":Sq:2p/*",             False],
          935  +            [4,     "égeassent",    ":Sq:3p/*",             False],
          936  +            [4,     "ège",          ":E:2s/*",              False],
          937  +            [4,     "égeons",       ":E:1p/*",              False],
          938  +            [2,     "ez",           ":E:2p/*",              False]
          939  +        ],
          940  +
          941  +        "ébrer": [
          942  +            [2,     "er",           ":Y/*",                 False],
          943  +            [2,     "ant",          ":P/*",                 False],
          944  +            [5,     "èbre",         ":Ip:Sp:1s:3s/*",       False],
          945  +            [2,     "è",            ":Ip:1ś/R",             False],
          946  +            [5,     "èbres",        ":Ip:Sp:2s/*",          False],
          947  +            [2,     "ons",          ":Ip:1p/*",             False],
          948  +            [2,     "ez",           ":Ip:2p/*",             False],
          949  +            [5,     "èbrent",       ":Ip:Sp:3p/*",          False],
          950  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
          951  +            [2,     "ait",          ":Iq:3s/*",             False],
          952  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
          953  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
          954  +            [2,     "aient",        ":Iq:3p/*",             False],
          955  +            [2,     "ai",           ":Is:1s/*",             False],
          956  +            [2,     "as",           ":Is:2s/*",             False],
          957  +            [2,     "a",            ":Is:3s/*",             False],
          958  +            [2,     "âmes",         ":Is:1p/*",             False],
          959  +            [2,     "âtes",         ":Is:2p/*",             False],
          960  +            [2,     "èrent",        ":Is:3p!/*",            False],
          961  +            [2,     "erai",         ":If:1s/M",             False],
          962  +            [5,     "èbrerai",      ":If:1s/R",             False],
          963  +            [2,     "eras",         ":If:2s/M",             False],
          964  +            [5,     "èbreras",      ":If:2s/R",             False],
          965  +            [2,     "era",          ":If:3s/M",             False],
          966  +            [5,     "èbrera",       ":If:3s/R",             False],
          967  +            [2,     "erons",        ":If:1p/M",             False],
          968  +            [5,     "èbrerons",     ":If:1p/R",             False],
          969  +            [2,     "erez",         ":If:2p/M",             False],
          970  +            [5,     "èbrerez",      ":If:2p/R",             False],
          971  +            [2,     "eront",        ":If:3p!/M",            False],
          972  +            [5,     "èbreront",     ":If:3p!/R",            False],
          973  +            [2,     "erais",        ":K:1s:2s/M",           False],
          974  +            [5,     "èbrerais",     ":K:1s:2s/R",           False],
          975  +            [2,     "erait",        ":K:3s/M",              False],
          976  +            [5,     "èbrerait",     ":K:3s/R",              False],
          977  +            [2,     "erions",       ":K:1p/M",              False],
          978  +            [5,     "èbrerions",    ":K:1p/R",              False],
          979  +            [2,     "eriez",        ":K:2p/M",              False],
          980  +            [5,     "èbreriez",     ":K:2p/R",              False],
          981  +            [2,     "eraient",      ":K:3p/M",              False],
          982  +            [5,     "èbreraient",   ":K:3p/R",              False],
          983  +            [2,     "asse",         ":Sq:1s/*",             False],
          984  +            [2,     "asses",        ":Sq:2s/*",             False],
          985  +            [2,     "ât",           ":Sq:3s/*",             False],
          986  +            [2,     "assions",      ":Sq:1p/*",             False],
          987  +            [2,     "assiez",       ":Sq:2p/*",             False],
          988  +            [2,     "assent",       ":Sq:3p/*",             False],
          989  +            [5,     "èbre",         ":E:2s/*",              False],
          990  +            [2,     "ons",          ":E:1p/*",              False],
          991  +            [2,     "ez",           ":E:2p/*",              False]
          992  +        ],
          993  +
          994  +        "écher": [
          995  +            [2,     "er",           ":Y/*",                 False],
          996  +            [2,     "ant",          ":P/*",                 False],
          997  +            [5,     "èche",         ":Ip:Sp:1s:3s/*",       False],
          998  +            [2,     "è",            ":Ip:1ś/R",             False],
          999  +            [5,     "èches",        ":Ip:Sp:2s/*",          False],
         1000  +            [2,     "ons",          ":Ip:1p/*",             False],
         1001  +            [2,     "ez",           ":Ip:2p/*",             False],
         1002  +            [5,     "èchent",       ":Ip:Sp:3p/*",          False],
         1003  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1004  +            [2,     "ait",          ":Iq:3s/*",             False],
         1005  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1006  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1007  +            [2,     "aient",        ":Iq:3p/*",             False],
         1008  +            [2,     "ai",           ":Is:1s/*",             False],
         1009  +            [2,     "as",           ":Is:2s/*",             False],
         1010  +            [2,     "a",            ":Is:3s/*",             False],
         1011  +            [2,     "âmes",         ":Is:1p/*",             False],
         1012  +            [2,     "âtes",         ":Is:2p/*",             False],
         1013  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1014  +            [2,     "erai",         ":If:1s/M",             False],
         1015  +            [5,     "ècherai",      ":If:1s/R",             False],
         1016  +            [2,     "eras",         ":If:2s/M",             False],
         1017  +            [5,     "ècheras",      ":If:2s/R",             False],
         1018  +            [2,     "era",          ":If:3s/M",             False],
         1019  +            [5,     "èchera",       ":If:3s/R",             False],
         1020  +            [2,     "erons",        ":If:1p/M",             False],
         1021  +            [5,     "ècherons",     ":If:1p/R",             False],
         1022  +            [2,     "erez",         ":If:2p/M",             False],
         1023  +            [5,     "ècherez",      ":If:2p/R",             False],
         1024  +            [2,     "eront",        ":If:3p!/M",            False],
         1025  +            [5,     "ècheront",     ":If:3p!/R",            False],
         1026  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1027  +            [5,     "ècherais",     ":K:1s:2s/R",           False],
         1028  +            [2,     "erait",        ":K:3s/M",              False],
         1029  +            [5,     "ècherait",     ":K:3s/R",              False],
         1030  +            [2,     "erions",       ":K:1p/M",              False],
         1031  +            [5,     "ècherions",    ":K:1p/R",              False],
         1032  +            [2,     "eriez",        ":K:2p/M",              False],
         1033  +            [5,     "ècheriez",     ":K:2p/R",              False],
         1034  +            [2,     "eraient",      ":K:3p/M",              False],
         1035  +            [5,     "ècheraient",   ":K:3p/R",              False],
         1036  +            [2,     "asse",         ":Sq:1s/*",             False],
         1037  +            [2,     "asses",        ":Sq:2s/*",             False],
         1038  +            [2,     "ât",           ":Sq:3s/*",             False],
         1039  +            [2,     "assions",      ":Sq:1p/*",             False],
         1040  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1041  +            [2,     "assent",       ":Sq:3p/*",             False],
         1042  +            [5,     "èche",         ":E:2s/*",              False],
         1043  +            [2,     "ons",          ":E:1p/*",              False],
         1044  +            [2,     "ez",           ":E:2p/*",              False]
         1045  +        ],
         1046  +
         1047  +        "écrer": [
         1048  +            [2,     "er",           ":Y/*",                 False],
         1049  +            [2,     "ant",          ":P/*",                 False],
         1050  +            [5,     "ècre",         ":Ip:Sp:1s:3s/*",       False],
         1051  +            [2,     "è",            ":Ip:1ś/R",             False],
         1052  +            [5,     "ècres",        ":Ip:Sp:2s/*",          False],
         1053  +            [2,     "ons",          ":Ip:1p/*",             False],
         1054  +            [2,     "ez",           ":Ip:2p/*",             False],
         1055  +            [5,     "ècrent",       ":Ip:Sp:3p/*",          False],
         1056  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1057  +            [2,     "ait",          ":Iq:3s/*",             False],
         1058  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1059  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1060  +            [2,     "aient",        ":Iq:3p/*",             False],
         1061  +            [2,     "ai",           ":Is:1s/*",             False],
         1062  +            [2,     "as",           ":Is:2s/*",             False],
         1063  +            [2,     "a",            ":Is:3s/*",             False],
         1064  +            [2,     "âmes",         ":Is:1p/*",             False],
         1065  +            [2,     "âtes",         ":Is:2p/*",             False],
         1066  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1067  +            [2,     "erai",         ":If:1s/M",             False],
         1068  +            [5,     "ècrerai",      ":If:1s/R",             False],
         1069  +            [2,     "eras",         ":If:2s/M",             False],
         1070  +            [5,     "ècreras",      ":If:2s/R",             False],
         1071  +            [2,     "era",          ":If:3s/M",             False],
         1072  +            [5,     "ècrera",       ":If:3s/R",             False],
         1073  +            [2,     "erons",        ":If:1p/M",             False],
         1074  +            [5,     "ècrerons",     ":If:1p/R",             False],
         1075  +            [2,     "erez",         ":If:2p/M",             False],
         1076  +            [5,     "ècrerez",      ":If:2p/R",             False],
         1077  +            [2,     "eront",        ":If:3p!/M",            False],
         1078  +            [5,     "ècreront",     ":If:3p!/R",            False],
         1079  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1080  +            [5,     "ècrerais",     ":K:1s:2s/R",           False],
         1081  +            [2,     "erait",        ":K:3s/M",              False],
         1082  +            [5,     "ècrerait",     ":K:3s/R",              False],
         1083  +            [2,     "erions",       ":K:1p/M",              False],
         1084  +            [5,     "ècrerions",    ":K:1p/R",              False],
         1085  +            [2,     "eriez",        ":K:2p/M",              False],
         1086  +            [5,     "ècreriez",     ":K:2p/R",              False],
         1087  +            [2,     "eraient",      ":K:3p/M",              False],
         1088  +            [5,     "ècreraient",   ":K:3p/R",              False],
         1089  +            [2,     "asse",         ":Sq:1s/*",             False],
         1090  +            [2,     "asses",        ":Sq:2s/*",             False],
         1091  +            [2,     "ât",           ":Sq:3s/*",             False],
         1092  +            [2,     "assions",      ":Sq:1p/*",             False],
         1093  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1094  +            [2,     "assent",       ":Sq:3p/*",             False],
         1095  +            [5,     "ècre",         ":E:2s/*",              False],
         1096  +            [2,     "ons",          ":E:1p/*",              False],
         1097  +            [2,     "ez",           ":E:2p/*",              False]
         1098  +        ],
         1099  +
         1100  +        "éder": [
         1101  +            [2,     "er",           ":Y/*",                 False],
         1102  +            [2,     "ant",          ":P/*",                 False],
         1103  +            [4,     "ède",          ":Ip:Sp:1s:3s/*",       False],
         1104  +            [2,     "è",            ":Ip:1ś/R",             False],
         1105  +            [4,     "èdes",         ":Ip:Sp:2s/*",          False],
         1106  +            [2,     "ons",          ":Ip:1p/*",             False],
         1107  +            [2,     "ez",           ":Ip:2p/*",             False],
         1108  +            [4,     "èdent",        ":Ip:Sp:3p/*",          False],
         1109  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1110  +            [2,     "ait",          ":Iq:3s/*",             False],
         1111  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1112  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1113  +            [2,     "aient",        ":Iq:3p/*",             False],
         1114  +            [2,     "ai",           ":Is:1s/*",             False],
         1115  +            [2,     "as",           ":Is:2s/*",             False],
         1116  +            [2,     "a",            ":Is:3s/*",             False],
         1117  +            [2,     "âmes",         ":Is:1p/*",             False],
         1118  +            [2,     "âtes",         ":Is:2p/*",             False],
         1119  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1120  +            [2,     "erai",         ":If:1s/M",             False],
         1121  +            [4,     "èderai",       ":If:1s/R",             False],
         1122  +            [2,     "eras",         ":If:2s/M",             False],
         1123  +            [4,     "èderas",       ":If:2s/R",             False],
         1124  +            [2,     "era",          ":If:3s/M",             False],
         1125  +            [4,     "èdera",        ":If:3s/R",             False],
         1126  +            [2,     "erons",        ":If:1p/M",             False],
         1127  +            [4,     "èderons",      ":If:1p/R",             False],
         1128  +            [2,     "erez",         ":If:2p/M",             False],
         1129  +            [4,     "èderez",       ":If:2p/R",             False],
         1130  +            [2,     "eront",        ":If:3p!/M",            False],
         1131  +            [4,     "èderont",      ":If:3p!/R",            False],
         1132  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1133  +            [4,     "èderais",      ":K:1s:2s/R",           False],
         1134  +            [2,     "erait",        ":K:3s/M",              False],
         1135  +            [4,     "èderait",      ":K:3s/R",              False],
         1136  +            [2,     "erions",       ":K:1p/M",              False],
         1137  +            [4,     "èderions",     ":K:1p/R",              False],
         1138  +            [2,     "eriez",        ":K:2p/M",              False],
         1139  +            [4,     "èderiez",      ":K:2p/R",              False],
         1140  +            [2,     "eraient",      ":K:3p/M",              False],
         1141  +            [4,     "èderaient",    ":K:3p/R",              False],
         1142  +            [2,     "asse",         ":Sq:1s/*",             False],
         1143  +            [2,     "asses",        ":Sq:2s/*",             False],
         1144  +            [2,     "ât",           ":Sq:3s/*",             False],
         1145  +            [2,     "assions",      ":Sq:1p/*",             False],
         1146  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1147  +            [2,     "assent",       ":Sq:3p/*",             False],
         1148  +            [4,     "ède",          ":E:2s/*",              False],
         1149  +            [2,     "ons",          ":E:1p/*",              False],
         1150  +            [2,     "ez",           ":E:2p/*",              False]
         1151  +        ],
         1152  +
         1153  +        "égler": [
         1154  +            [2,     "er",           ":Y/*",                 False],
         1155  +            [2,     "ant",          ":P/*",                 False],
         1156  +            [5,     "ègle",         ":Ip:Sp:1s:3s/*",       False],
         1157  +            [2,     "è",            ":Ip:1ś/R",             False],
         1158  +            [5,     "ègles",        ":Ip:Sp:2s/*",          False],
         1159  +            [2,     "ons",          ":Ip:1p/*",             False],
         1160  +            [2,     "ez",           ":Ip:2p/*",             False],
         1161  +            [5,     "èglent",       ":Ip:Sp:3p/*",          False],
         1162  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1163  +            [2,     "ait",          ":Iq:3s/*",             False],
         1164  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1165  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1166  +            [2,     "aient",        ":Iq:3p/*",             False],
         1167  +            [2,     "ai",           ":Is:1s/*",             False],
         1168  +            [2,     "as",           ":Is:2s/*",             False],
         1169  +            [2,     "a",            ":Is:3s/*",             False],
         1170  +            [2,     "âmes",         ":Is:1p/*",             False],
         1171  +            [2,     "âtes",         ":Is:2p/*",             False],
         1172  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1173  +            [2,     "erai",         ":If:1s/M",             False],
         1174  +            [5,     "èglerai",      ":If:1s/R",             False],
         1175  +            [2,     "eras",         ":If:2s/M",             False],
         1176  +            [5,     "ègleras",      ":If:2s/R",             False],
         1177  +            [2,     "era",          ":If:3s/M",             False],
         1178  +            [5,     "èglera",       ":If:3s/R",             False],
         1179  +            [2,     "erons",        ":If:1p/M",             False],
         1180  +            [5,     "èglerons",     ":If:1p/R",             False],
         1181  +            [2,     "erez",         ":If:2p/M",             False],
         1182  +            [5,     "èglerez",      ":If:2p/R",             False],
         1183  +            [2,     "eront",        ":If:3p!/M",            False],
         1184  +            [5,     "ègleront",     ":If:3p!/R",            False],
         1185  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1186  +            [5,     "èglerais",     ":K:1s:2s/R",           False],
         1187  +            [2,     "erait",        ":K:3s/M",              False],
         1188  +            [5,     "èglerait",     ":K:3s/R",              False],
         1189  +            [2,     "erions",       ":K:1p/M",              False],
         1190  +            [5,     "èglerions",    ":K:1p/R",              False],
         1191  +            [2,     "eriez",        ":K:2p/M",              False],
         1192  +            [5,     "ègleriez",     ":K:2p/R",              False],
         1193  +            [2,     "eraient",      ":K:3p/M",              False],
         1194  +            [5,     "ègleraient",   ":K:3p/R",              False],
         1195  +            [2,     "asse",         ":Sq:1s/*",             False],
         1196  +            [2,     "asses",        ":Sq:2s/*",             False],
         1197  +            [2,     "ât",           ":Sq:3s/*",             False],
         1198  +            [2,     "assions",      ":Sq:1p/*",             False],
         1199  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1200  +            [2,     "assent",       ":Sq:3p/*",             False],
         1201  +            [5,     "ègle",         ":E:2s/*",              False],
         1202  +            [2,     "ons",          ":E:1p/*",              False],
         1203  +            [2,     "ez",           ":E:2p/*",              False]
         1204  +        ],
         1205  +
         1206  +        "égner": [
         1207  +            [2,     "er",           ":Y/*",                 False],
         1208  +            [2,     "ant",          ":P/*",                 False],
         1209  +            [5,     "ègne",         ":Ip:Sp:1s:3s/*",       False],
         1210  +            [2,     "è",            ":Ip:1ś/R",             False],
         1211  +            [5,     "ègnes",        ":Ip:Sp:2s/*",          False],
         1212  +            [2,     "ons",          ":Ip:1p/*",             False],
         1213  +            [2,     "ez",           ":Ip:2p/*",             False],
         1214  +            [5,     "ègnent",       ":Ip:Sp:3p/*",          False],
         1215  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1216  +            [2,     "ait",          ":Iq:3s/*",             False],
         1217  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1218  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1219  +            [2,     "aient",        ":Iq:3p/*",             False],
         1220  +            [2,     "ai",           ":Is:1s/*",             False],
         1221  +            [2,     "as",           ":Is:2s/*",             False],
         1222  +            [2,     "a",            ":Is:3s/*",             False],
         1223  +            [2,     "âmes",         ":Is:1p/*",             False],
         1224  +            [2,     "âtes",         ":Is:2p/*",             False],
         1225  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1226  +            [2,     "erai",         ":If:1s/M",             False],
         1227  +            [5,     "ègnerai",      ":If:1s/R",             False],
         1228  +            [2,     "eras",         ":If:2s/M",             False],
         1229  +            [5,     "ègneras",      ":If:2s/R",             False],
         1230  +            [2,     "era",          ":If:3s/M",             False],
         1231  +            [5,     "ègnera",       ":If:3s/R",             False],
         1232  +            [2,     "erons",        ":If:1p/M",             False],
         1233  +            [5,     "ègnerons",     ":If:1p/R",             False],
         1234  +            [2,     "erez",         ":If:2p/M",             False],
         1235  +            [5,     "ègnerez",      ":If:2p/R",             False],
         1236  +            [2,     "eront",        ":If:3p!/M",            False],
         1237  +            [5,     "ègneront",     ":If:3p!/R",            False],
         1238  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1239  +            [5,     "ègnerais",     ":K:1s:2s/R",           False],
         1240  +            [2,     "erait",        ":K:3s/M",              False],
         1241  +            [5,     "ègnerait",     ":K:3s/R",              False],
         1242  +            [2,     "erions",       ":K:1p/M",              False],
         1243  +            [5,     "ègnerions",    ":K:1p/R",              False],
         1244  +            [2,     "eriez",        ":K:2p/M",              False],
         1245  +            [5,     "ègneriez",     ":K:2p/R",              False],
         1246  +            [2,     "eraient",      ":K:3p/M",              False],
         1247  +            [5,     "ègneraient",   ":K:3p/R",              False],
         1248  +            [2,     "asse",         ":Sq:1s/*",             False],
         1249  +            [2,     "asses",        ":Sq:2s/*",             False],
         1250  +            [2,     "ât",           ":Sq:3s/*",             False],
         1251  +            [2,     "assions",      ":Sq:1p/*",             False],
         1252  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1253  +            [2,     "assent",       ":Sq:3p/*",             False],
         1254  +            [5,     "ègne",         ":E:2s/*",              False],
         1255  +            [2,     "ons",          ":E:1p/*",              False],
         1256  +            [2,     "ez",           ":E:2p/*",              False]
         1257  +        ],
         1258  +
         1259  +        "égrer": [
         1260  +            [2,     "er",           ":Y/*",                 False],
         1261  +            [2,     "ant",          ":P/*",                 False],
         1262  +            [5,     "ègre",         ":Ip:Sp:1s:3s/*",       False],
         1263  +            [2,     "è",            ":Ip:1ś/R",             False],
         1264  +            [5,     "ègres",        ":Ip:Sp:2s/*",          False],
         1265  +            [2,     "ons",          ":Ip:1p/*",             False],
         1266  +            [2,     "ez",           ":Ip:2p/*",             False],
         1267  +            [5,     "ègrent",       ":Ip:Sp:3p/*",          False],
         1268  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1269  +            [2,     "ait",          ":Iq:3s/*",             False],
         1270  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1271  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1272  +            [2,     "aient",        ":Iq:3p/*",             False],
         1273  +            [2,     "ai",           ":Is:1s/*",             False],
         1274  +            [2,     "as",           ":Is:2s/*",             False],
         1275  +            [2,     "a",            ":Is:3s/*",             False],
         1276  +            [2,     "âmes",         ":Is:1p/*",             False],
         1277  +            [2,     "âtes",         ":Is:2p/*",             False],
         1278  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1279  +            [2,     "erai",         ":If:1s/M",             False],
         1280  +            [5,     "ègrerai",      ":If:1s/R",             False],
         1281  +            [2,     "eras",         ":If:2s/M",             False],
         1282  +            [5,     "ègreras",      ":If:2s/R",             False],
         1283  +            [2,     "era",          ":If:3s/M",             False],
         1284  +            [5,     "ègrera",       ":If:3s/R",             False],
         1285  +            [2,     "erons",        ":If:1p/M",             False],
         1286  +            [5,     "ègrerons",     ":If:1p/R",             False],
         1287  +            [2,     "erez",         ":If:2p/M",             False],
         1288  +            [5,     "ègrerez",      ":If:2p/R",             False],
         1289  +            [2,     "eront",        ":If:3p!/M",            False],
         1290  +            [5,     "ègreront",     ":If:3p!/R",            False],
         1291  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1292  +            [5,     "ègrerais",     ":K:1s:2s/R",           False],
         1293  +            [2,     "erait",        ":K:3s/M",              False],
         1294  +            [5,     "ègrerait",     ":K:3s/R",              False],
         1295  +            [2,     "erions",       ":K:1p/M",              False],
         1296  +            [5,     "ègrerions",    ":K:1p/R",              False],
         1297  +            [2,     "eriez",        ":K:2p/M",              False],
         1298  +            [5,     "ègreriez",     ":K:2p/R",              False],
         1299  +            [2,     "eraient",      ":K:3p/M",              False],
         1300  +            [5,     "ègreraient",   ":K:3p/R",              False],
         1301  +            [2,     "asse",         ":Sq:1s/*",             False],
         1302  +            [2,     "asses",        ":Sq:2s/*",             False],
         1303  +            [2,     "ât",           ":Sq:3s/*",             False],
         1304  +            [2,     "assions",      ":Sq:1p/*",             False],
         1305  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1306  +            [2,     "assent",       ":Sq:3p/*",             False],
         1307  +            [5,     "ègre",         ":E:2s/*",              False],
         1308  +            [2,     "ons",          ":E:1p/*",              False],
         1309  +            [2,     "ez",           ":E:2p/*",              False]
         1310  +        ],
         1311  +
         1312  +        "éguer": [
         1313  +            [2,     "er",           ":Y/*",                 False],
         1314  +            [2,     "ant",          ":P/*",                 False],
         1315  +            [5,     "ègue",         ":Ip:Sp:1s:3s/*",       False],
         1316  +            [2,     "è",            ":Ip:1ś/R",             False],
         1317  +            [5,     "ègues",        ":Ip:Sp:2s/*",          False],
         1318  +            [2,     "ons",          ":Ip:1p/*",             False],
         1319  +            [2,     "ez",           ":Ip:2p/*",             False],
         1320  +            [5,     "èguent",       ":Ip:Sp:3p/*",          False],
         1321  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1322  +            [2,     "ait",          ":Iq:3s/*",             False],
         1323  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1324  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1325  +            [2,     "aient",        ":Iq:3p/*",             False],
         1326  +            [2,     "ai",           ":Is:1s/*",             False],
         1327  +            [2,     "as",           ":Is:2s/*",             False],
         1328  +            [2,     "a",            ":Is:3s/*",             False],
         1329  +            [2,     "âmes",         ":Is:1p/*",             False],
         1330  +            [2,     "âtes",         ":Is:2p/*",             False],
         1331  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1332  +            [2,     "erai",         ":If:1s/M",             False],
         1333  +            [5,     "èguerai",      ":If:1s/R",             False],
         1334  +            [2,     "eras",         ":If:2s/M",             False],
         1335  +            [5,     "ègueras",      ":If:2s/R",             False],
         1336  +            [2,     "era",          ":If:3s/M",             False],
         1337  +            [5,     "èguera",       ":If:3s/R",             False],
         1338  +            [2,     "erons",        ":If:1p/M",             False],
         1339  +            [5,     "èguerons",     ":If:1p/R",             False],
         1340  +            [2,     "erez",         ":If:2p/M",             False],
         1341  +            [5,     "èguerez",      ":If:2p/R",             False],
         1342  +            [2,     "eront",        ":If:3p!/M",            False],
         1343  +            [5,     "ègueront",     ":If:3p!/R",            False],
         1344  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1345  +            [5,     "èguerais",     ":K:1s:2s/R",           False],
         1346  +            [2,     "erait",        ":K:3s/M",              False],
         1347  +            [5,     "èguerait",     ":K:3s/R",              False],
         1348  +            [2,     "erions",       ":K:1p/M",              False],
         1349  +            [5,     "èguerions",    ":K:1p/R",              False],
         1350  +            [2,     "eriez",        ":K:2p/M",              False],
         1351  +            [5,     "ègueriez",     ":K:2p/R",              False],
         1352  +            [2,     "eraient",      ":K:3p/M",              False],
         1353  +            [5,     "ègueraient",   ":K:3p/R",              False],
         1354  +            [2,     "asse",         ":Sq:1s/*",             False],
         1355  +            [2,     "asses",        ":Sq:2s/*",             False],
         1356  +            [2,     "ât",           ":Sq:3s/*",             False],
         1357  +            [2,     "assions",      ":Sq:1p/*",             False],
         1358  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1359  +            [2,     "assent",       ":Sq:3p/*",             False],
         1360  +            [5,     "ègue",         ":E:2s/*",              False],
         1361  +            [2,     "ons",          ":E:1p/*",              False],
         1362  +            [2,     "ez",           ":E:2p/*",              False]
         1363  +        ],
         1364  +
         1365  +        "éler": [
         1366  +            [2,     "er",           ":Y/*",                 False],
         1367  +            [2,     "ant",          ":P/*",                 False],
         1368  +            [4,     "èle",          ":Ip:Sp:1s:3s/*",       False],
         1369  +            [2,     "è",            ":Ip:1ś/R",             False],
         1370  +            [4,     "èles",         ":Ip:Sp:2s/*",          False],
         1371  +            [2,     "ons",          ":Ip:1p/*",             False],
         1372  +            [2,     "ez",           ":Ip:2p/*",             False],
         1373  +            [4,     "èlent",        ":Ip:Sp:3p/*",          False],
         1374  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1375  +            [2,     "ait",          ":Iq:3s/*",             False],
         1376  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1377  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1378  +            [2,     "aient",        ":Iq:3p/*",             False],
         1379  +            [2,     "ai",           ":Is:1s/*",             False],
         1380  +            [2,     "as",           ":Is:2s/*",             False],
         1381  +            [2,     "a",            ":Is:3s/*",             False],
         1382  +            [2,     "âmes",         ":Is:1p/*",             False],
         1383  +            [2,     "âtes",         ":Is:2p/*",             False],
         1384  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1385  +            [2,     "erai",         ":If:1s/M",             False],
         1386  +            [4,     "èlerai",       ":If:1s/R",             False],
         1387  +            [2,     "eras",         ":If:2s/M",             False],
         1388  +            [4,     "èleras",       ":If:2s/R",             False],
         1389  +            [2,     "era",          ":If:3s/M",             False],
         1390  +            [4,     "èlera",        ":If:3s/R",             False],
         1391  +            [2,     "erons",        ":If:1p/M",             False],
         1392  +            [4,     "èlerons",      ":If:1p/R",             False],
         1393  +            [2,     "erez",         ":If:2p/M",             False],
         1394  +            [4,     "èlerez",       ":If:2p/R",             False],
         1395  +            [2,     "eront",        ":If:3p!/M",            False],
         1396  +            [4,     "èleront",      ":If:3p!/R",            False],
         1397  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1398  +            [4,     "èlerais",      ":K:1s:2s/R",           False],
         1399  +            [2,     "erait",        ":K:3s/M",              False],
         1400  +            [4,     "èlerait",      ":K:3s/R",              False],
         1401  +            [2,     "erions",       ":K:1p/M",              False],
         1402  +            [4,     "èlerions",     ":K:1p/R",              False],
         1403  +            [2,     "eriez",        ":K:2p/M",              False],
         1404  +            [4,     "èleriez",      ":K:2p/R",              False],
         1405  +            [2,     "eraient",      ":K:3p/M",              False],
         1406  +            [4,     "èleraient",    ":K:3p/R",              False],
         1407  +            [2,     "asse",         ":Sq:1s/*",             False],
         1408  +            [2,     "asses",        ":Sq:2s/*",             False],
         1409  +            [2,     "ât",           ":Sq:3s/*",             False],
         1410  +            [2,     "assions",      ":Sq:1p/*",             False],
         1411  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1412  +            [2,     "assent",       ":Sq:3p/*",             False],
         1413  +            [4,     "èle",          ":E:2s/*",              False],
         1414  +            [2,     "ons",          ":E:1p/*",              False],
         1415  +            [2,     "ez",           ":E:2p/*",              False]
         1416  +        ],
         1417  +
         1418  +        "émer": [
         1419  +            [2,     "er",           ":Y/*",                 False],
         1420  +            [2,     "ant",          ":P/*",                 False],
         1421  +            [4,     "ème",          ":Ip:Sp:1s:3s/*",       False],
         1422  +            [2,     "è",            ":Ip:1ś/R",             False],
         1423  +            [4,     "èmes",         ":Ip:Sp:2s/*",          False],
         1424  +            [2,     "ons",          ":Ip:1p/*",             False],
         1425  +            [2,     "ez",           ":Ip:2p/*",             False],
         1426  +            [4,     "èment",        ":Ip:Sp:3p/*",          False],
         1427  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1428  +            [2,     "ait",          ":Iq:3s/*",             False],
         1429  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1430  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1431  +            [2,     "aient",        ":Iq:3p/*",             False],
         1432  +            [2,     "ai",           ":Is:1s/*",             False],
         1433  +            [2,     "as",           ":Is:2s/*",             False],
         1434  +            [2,     "a",            ":Is:3s/*",             False],
         1435  +            [2,     "âmes",         ":Is:1p/*",             False],
         1436  +            [2,     "âtes",         ":Is:2p/*",             False],
         1437  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1438  +            [2,     "erai",         ":If:1s/M",             False],
         1439  +            [4,     "èmerai",       ":If:1s/R",             False],
         1440  +            [2,     "eras",         ":If:2s/M",             False],
         1441  +            [4,     "èmeras",       ":If:2s/R",             False],
         1442  +            [2,     "era",          ":If:3s/M",             False],
         1443  +            [4,     "èmera",        ":If:3s/R",             False],
         1444  +            [2,     "erons",        ":If:1p/M",             False],
         1445  +            [4,     "èmerons",      ":If:1p/R",             False],
         1446  +            [2,     "erez",         ":If:2p/M",             False],
         1447  +            [4,     "èmerez",       ":If:2p/R",             False],
         1448  +            [2,     "eront",        ":If:3p!/M",            False],
         1449  +            [4,     "èmeront",      ":If:3p!/R",            False],
         1450  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1451  +            [4,     "èmerais",      ":K:1s:2s/R",           False],
         1452  +            [2,     "erait",        ":K:3s/M",              False],
         1453  +            [4,     "èmerait",      ":K:3s/R",              False],
         1454  +            [2,     "erions",       ":K:1p/M",              False],
         1455  +            [4,     "èmerions",     ":K:1p/R",              False],
         1456  +            [2,     "eriez",        ":K:2p/M",              False],
         1457  +            [4,     "èmeriez",      ":K:2p/R",              False],
         1458  +            [2,     "eraient",      ":K:3p/M",              False],
         1459  +            [4,     "èmeraient",    ":K:3p/R",              False],
         1460  +            [2,     "asse",         ":Sq:1s/*",             False],
         1461  +            [2,     "asses",        ":Sq:2s/*",             False],
         1462  +            [2,     "ât",           ":Sq:3s/*",             False],
         1463  +            [2,     "assions",      ":Sq:1p/*",             False],
         1464  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1465  +            [2,     "assent",       ":Sq:3p/*",             False],
         1466  +            [4,     "ème",          ":E:2s/*",              False],
         1467  +            [2,     "ons",          ":E:1p/*",              False],
         1468  +            [2,     "ez",           ":E:2p/*",              False]
         1469  +        ],
         1470  +
         1471  +        "éner": [
         1472  +            [2,     "er",           ":Y/*",                 False],
         1473  +            [2,     "ant",          ":P/*",                 False],
         1474  +            [4,     "ène",          ":Ip:Sp:1s:3s/*",       False],
         1475  +            [2,     "è",            ":Ip:1ś/R",             False],
         1476  +            [4,     "ènes",         ":Ip:Sp:2s/*",          False],
         1477  +            [2,     "ons",          ":Ip:1p/*",             False],
         1478  +            [2,     "ez",           ":Ip:2p/*",             False],
         1479  +            [4,     "ènent",        ":Ip:Sp:3p/*",          False],
         1480  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1481  +            [2,     "ait",          ":Iq:3s/*",             False],
         1482  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1483  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1484  +            [2,     "aient",        ":Iq:3p/*",             False],
         1485  +            [2,     "ai",           ":Is:1s/*",             False],
         1486  +            [2,     "as",           ":Is:2s/*",             False],
         1487  +            [2,     "a",            ":Is:3s/*",             False],
         1488  +            [2,     "âmes",         ":Is:1p/*",             False],
         1489  +            [2,     "âtes",         ":Is:2p/*",             False],
         1490  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1491  +            [2,     "erai",         ":If:1s/M",             False],
         1492  +            [4,     "ènerai",       ":If:1s/R",             False],
         1493  +            [2,     "eras",         ":If:2s/M",             False],
         1494  +            [4,     "èneras",       ":If:2s/R",             False],
         1495  +            [2,     "era",          ":If:3s/M",             False],
         1496  +            [4,     "ènera",        ":If:3s/R",             False],
         1497  +            [2,     "erons",        ":If:1p/M",             False],
         1498  +            [4,     "ènerons",      ":If:1p/R",             False],
         1499  +            [2,     "erez",         ":If:2p/M",             False],
         1500  +            [4,     "ènerez",       ":If:2p/R",             False],
         1501  +            [2,     "eront",        ":If:3p!/M",            False],
         1502  +            [4,     "èneront",      ":If:3p!/R",            False],
         1503  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1504  +            [4,     "ènerais",      ":K:1s:2s/R",           False],
         1505  +            [2,     "erait",        ":K:3s/M",              False],
         1506  +            [4,     "ènerait",      ":K:3s/R",              False],
         1507  +            [2,     "erions",       ":K:1p/M",              False],
         1508  +            [4,     "ènerions",     ":K:1p/R",              False],
         1509  +            [2,     "eriez",        ":K:2p/M",              False],
         1510  +            [4,     "èneriez",      ":K:2p/R",              False],
         1511  +            [2,     "eraient",      ":K:3p/M",              False],
         1512  +            [4,     "èneraient",    ":K:3p/R",              False],
         1513  +            [2,     "asse",         ":Sq:1s/*",             False],
         1514  +            [2,     "asses",        ":Sq:2s/*",             False],
         1515  +            [2,     "ât",           ":Sq:3s/*",             False],
         1516  +            [2,     "assions",      ":Sq:1p/*",             False],
         1517  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1518  +            [2,     "assent",       ":Sq:3p/*",             False],
         1519  +            [4,     "ène",          ":E:2s/*",              False],
         1520  +            [2,     "ons",          ":E:1p/*",              False],
         1521  +            [2,     "ez",           ":E:2p/*",              False]
         1522  +        ],
         1523  +
         1524  +        "éper": [
         1525  +            [2,     "er",           ":Y/*",                 False],
         1526  +            [2,     "ant",          ":P/*",                 False],
         1527  +            [4,     "èpe",          ":Ip:Sp:1s:3s/*",       False],
         1528  +            [2,     "è",            ":Ip:1ś/R",             False],
         1529  +            [4,     "èpes",         ":Ip:Sp:2s/*",          False],
         1530  +            [2,     "ons",          ":Ip:1p/*",             False],
         1531  +            [2,     "ez",           ":Ip:2p/*",             False],
         1532  +            [4,     "èpent",        ":Ip:Sp:3p/*",          False],
         1533  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1534  +            [2,     "ait",          ":Iq:3s/*",             False],
         1535  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1536  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1537  +            [2,     "aient",        ":Iq:3p/*",             False],
         1538  +            [2,     "ai",           ":Is:1s/*",             False],
         1539  +            [2,     "as",           ":Is:2s/*",             False],
         1540  +            [2,     "a",            ":Is:3s/*",             False],
         1541  +            [2,     "âmes",         ":Is:1p/*",             False],
         1542  +            [2,     "âtes",         ":Is:2p/*",             False],
         1543  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1544  +            [2,     "erai",         ":If:1s/M",             False],
         1545  +            [4,     "èperai",       ":If:1s/R",             False],
         1546  +            [2,     "eras",         ":If:2s/M",             False],
         1547  +            [4,     "èperas",       ":If:2s/R",             False],
         1548  +            [2,     "era",          ":If:3s/M",             False],
         1549  +            [4,     "èpera",        ":If:3s/R",             False],
         1550  +            [2,     "erons",        ":If:1p/M",             False],
         1551  +            [4,     "èperons",      ":If:1p/R",             False],
         1552  +            [2,     "erez",         ":If:2p/M",             False],
         1553  +            [4,     "èperez",       ":If:2p/R",             False],
         1554  +            [2,     "eront",        ":If:3p!/M",            False],
         1555  +            [4,     "èperont",      ":If:3p!/R",            False],
         1556  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1557  +            [4,     "èperais",      ":K:1s:2s/R",           False],
         1558  +            [2,     "erait",        ":K:3s/M",              False],
         1559  +            [4,     "èperait",      ":K:3s/R",              False],
         1560  +            [2,     "erions",       ":K:1p/M",              False],
         1561  +            [4,     "èperions",     ":K:1p/R",              False],
         1562  +            [2,     "eriez",        ":K:2p/M",              False],
         1563  +            [4,     "èperiez",      ":K:2p/R",              False],
         1564  +            [2,     "eraient",      ":K:3p/M",              False],
         1565  +            [4,     "èperaient",    ":K:3p/R",              False],
         1566  +            [2,     "asse",         ":Sq:1s/*",             False],
         1567  +            [2,     "asses",        ":Sq:2s/*",             False],
         1568  +            [2,     "ât",           ":Sq:3s/*",             False],
         1569  +            [2,     "assions",      ":Sq:1p/*",             False],
         1570  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1571  +            [2,     "assent",       ":Sq:3p/*",             False],
         1572  +            [4,     "èpe",          ":E:2s/*",              False],
         1573  +            [2,     "ons",          ":E:1p/*",              False],
         1574  +            [2,     "ez",           ":E:2p/*",              False]
         1575  +        ],
         1576  +
         1577  +        "équer": [
         1578  +            [2,     "er",           ":Y/*",                 False],
         1579  +            [2,     "ant",          ":P/*",                 False],
         1580  +            [5,     "èque",         ":Ip:Sp:1s:3s/*",       False],
         1581  +            [2,     "è",            ":Ip:1ś/R",             False],
         1582  +            [5,     "èques",        ":Ip:Sp:2s/*",          False],
         1583  +            [2,     "ons",          ":Ip:1p/*",             False],
         1584  +            [2,     "ez",           ":Ip:2p/*",             False],
         1585  +            [5,     "èquent",       ":Ip:Sp:3p/*",          False],
         1586  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1587  +            [2,     "ait",          ":Iq:3s/*",             False],
         1588  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1589  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1590  +            [2,     "aient",        ":Iq:3p/*",             False],
         1591  +            [2,     "ai",           ":Is:1s/*",             False],
         1592  +            [2,     "as",           ":Is:2s/*",             False],
         1593  +            [2,     "a",            ":Is:3s/*",             False],
         1594  +            [2,     "âmes",         ":Is:1p/*",             False],
         1595  +            [2,     "âtes",         ":Is:2p/*",             False],
         1596  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1597  +            [2,     "erai",         ":If:1s/M",             False],
         1598  +            [5,     "èquerai",      ":If:1s/R",             False],
         1599  +            [2,     "eras",         ":If:2s/M",             False],
         1600  +            [5,     "èqueras",      ":If:2s/R",             False],
         1601  +            [2,     "era",          ":If:3s/M",             False],
         1602  +            [5,     "èquera",       ":If:3s/R",             False],
         1603  +            [2,     "erons",        ":If:1p/M",             False],
         1604  +            [5,     "èquerons",     ":If:1p/R",             False],
         1605  +            [2,     "erez",         ":If:2p/M",             False],
         1606  +            [5,     "èquerez",      ":If:2p/R",             False],
         1607  +            [2,     "eront",        ":If:3p!/M",            False],
         1608  +            [5,     "èqueront",     ":If:3p!/R",            False],
         1609  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1610  +            [5,     "èquerais",     ":K:1s:2s/R",           False],
         1611  +            [2,     "erait",        ":K:3s/M",              False],
         1612  +            [5,     "èquerait",     ":K:3s/R",              False],
         1613  +            [2,     "erions",       ":K:1p/M",              False],
         1614  +            [5,     "èquerions",    ":K:1p/R",              False],
         1615  +            [2,     "eriez",        ":K:2p/M",              False],
         1616  +            [5,     "èqueriez",     ":K:2p/R",              False],
         1617  +            [2,     "eraient",      ":K:3p/M",              False],
         1618  +            [5,     "èqueraient",   ":K:3p/R",              False],
         1619  +            [2,     "asse",         ":Sq:1s/*",             False],
         1620  +            [2,     "asses",        ":Sq:2s/*",             False],
         1621  +            [2,     "ât",           ":Sq:3s/*",             False],
         1622  +            [2,     "assions",      ":Sq:1p/*",             False],
         1623  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1624  +            [2,     "assent",       ":Sq:3p/*",             False],
         1625  +            [5,     "èque",         ":E:2s/*",              False],
         1626  +            [2,     "ons",          ":E:1p/*",              False],
         1627  +            [2,     "ez",           ":E:2p/*",              False]
         1628  +        ],
         1629  +
         1630  +        "érer": [
         1631  +            [2,     "er",           ":Y/*",                 False],
         1632  +            [2,     "ant",          ":P/*",                 False],
         1633  +            [4,     "ère",          ":Ip:Sp:1s:3s/*",       False],
         1634  +            [2,     "è",            ":Ip:1ś/R",             False],
         1635  +            [4,     "ères",         ":Ip:Sp:2s/*",          False],
         1636  +            [2,     "ons",          ":Ip:1p/*",             False],
         1637  +            [2,     "ez",           ":Ip:2p/*",             False],
         1638  +            [4,     "èrent",        ":Ip:Sp:3p/*",          False],
         1639  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1640  +            [2,     "ait",          ":Iq:3s/*",             False],
         1641  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1642  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1643  +            [2,     "aient",        ":Iq:3p/*",             False],
         1644  +            [2,     "ai",           ":Is:1s/*",             False],
         1645  +            [2,     "as",           ":Is:2s/*",             False],
         1646  +            [2,     "a",            ":Is:3s/*",             False],
         1647  +            [2,     "âmes",         ":Is:1p/*",             False],
         1648  +            [2,     "âtes",         ":Is:2p/*",             False],
         1649  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1650  +            [2,     "erai",         ":If:1s/M",             False],
         1651  +            [4,     "èrerai",       ":If:1s/R",             False],
         1652  +            [2,     "eras",         ":If:2s/M",             False],
         1653  +            [4,     "èreras",       ":If:2s/R",             False],
         1654  +            [2,     "era",          ":If:3s/M",             False],
         1655  +            [4,     "èrera",        ":If:3s/R",             False],
         1656  +            [2,     "erons",        ":If:1p/M",             False],
         1657  +            [4,     "èrerons",      ":If:1p/R",             False],
         1658  +            [2,     "erez",         ":If:2p/M",             False],
         1659  +            [4,     "èrerez",       ":If:2p/R",             False],
         1660  +            [2,     "eront",        ":If:3p!/M",            False],
         1661  +            [4,     "èreront",      ":If:3p!/R",            False],
         1662  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1663  +            [4,     "èrerais",      ":K:1s:2s/R",           False],
         1664  +            [2,     "erait",        ":K:3s/M",              False],
         1665  +            [4,     "èrerait",      ":K:3s/R",              False],
         1666  +            [2,     "erions",       ":K:1p/M",              False],
         1667  +            [4,     "èrerions",     ":K:1p/R",              False],
         1668  +            [2,     "eriez",        ":K:2p/M",              False],
         1669  +            [4,     "èreriez",      ":K:2p/R",              False],
         1670  +            [2,     "eraient",      ":K:3p/M",              False],
         1671  +            [4,     "èreraient",    ":K:3p/R",              False],
         1672  +            [2,     "asse",         ":Sq:1s/*",             False],
         1673  +            [2,     "asses",        ":Sq:2s/*",             False],
         1674  +            [2,     "ât",           ":Sq:3s/*",             False],
         1675  +            [2,     "assions",      ":Sq:1p/*",             False],
         1676  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1677  +            [2,     "assent",       ":Sq:3p/*",             False],
         1678  +            [4,     "ère",          ":E:2s/*",              False],
         1679  +            [2,     "ons",          ":E:1p/*",              False],
         1680  +            [2,     "ez",           ":E:2p/*",              False]
         1681  +        ],
         1682  +
         1683  +        "éser": [
         1684  +            [2,     "er",           ":Y/*",                 False],
         1685  +            [2,     "ant",          ":P/*",                 False],
         1686  +            [4,     "èse",          ":Ip:Sp:1s:3s/*",       False],
         1687  +            [2,     "è",            ":Ip:1ś/R",             False],
         1688  +            [4,     "èses",         ":Ip:Sp:2s/*",          False],
         1689  +            [2,     "ons",          ":Ip:1p/*",             False],
         1690  +            [2,     "ez",           ":Ip:2p/*",             False],
         1691  +            [4,     "èsent",        ":Ip:Sp:3p/*",          False],
         1692  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1693  +            [2,     "ait",          ":Iq:3s/*",             False],
         1694  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1695  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1696  +            [2,     "aient",        ":Iq:3p/*",             False],
         1697  +            [2,     "ai",           ":Is:1s/*",             False],
         1698  +            [2,     "as",           ":Is:2s/*",             False],
         1699  +            [2,     "a",            ":Is:3s/*",             False],
         1700  +            [2,     "âmes",         ":Is:1p/*",             False],
         1701  +            [2,     "âtes",         ":Is:2p/*",             False],
         1702  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1703  +            [2,     "erai",         ":If:1s/M",             False],
         1704  +            [4,     "èserai",       ":If:1s/R",             False],
         1705  +            [2,     "eras",         ":If:2s/M",             False],
         1706  +            [4,     "èseras",       ":If:2s/R",             False],
         1707  +            [2,     "era",          ":If:3s/M",             False],
         1708  +            [4,     "èsera",        ":If:3s/R",             False],
         1709  +            [2,     "erons",        ":If:1p/M",             False],
         1710  +            [4,     "èserons",      ":If:1p/R",             False],
         1711  +            [2,     "erez",         ":If:2p/M",             False],
         1712  +            [4,     "èserez",       ":If:2p/R",             False],
         1713  +            [2,     "eront",        ":If:3p!/M",            False],
         1714  +            [4,     "èseront",      ":If:3p!/R",            False],
         1715  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1716  +            [4,     "èserais",      ":K:1s:2s/R",           False],
         1717  +            [2,     "erait",        ":K:3s/M",              False],
         1718  +            [4,     "èserait",      ":K:3s/R",              False],
         1719  +            [2,     "erions",       ":K:1p/M",              False],
         1720  +            [4,     "èserions",     ":K:1p/R",              False],
         1721  +            [2,     "eriez",        ":K:2p/M",              False],
         1722  +            [4,     "èseriez",      ":K:2p/R",              False],
         1723  +            [2,     "eraient",      ":K:3p/M",              False],
         1724  +            [4,     "èseraient",    ":K:3p/R",              False],
         1725  +            [2,     "asse",         ":Sq:1s/*",             False],
         1726  +            [2,     "asses",        ":Sq:2s/*",             False],
         1727  +            [2,     "ât",           ":Sq:3s/*",             False],
         1728  +            [2,     "assions",      ":Sq:1p/*",             False],
         1729  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1730  +            [2,     "assent",       ":Sq:3p/*",             False],
         1731  +            [4,     "èse",          ":E:2s/*",              False],
         1732  +            [2,     "ons",          ":E:1p/*",              False],
         1733  +            [2,     "ez",           ":E:2p/*",              False]
         1734  +        ],
         1735  +
         1736  +        "éter": [
         1737  +            [2,     "er",           ":Y/*",                 False],
         1738  +            [2,     "ant",          ":P/*",                 False],
         1739  +            [4,     "ète",          ":Ip:Sp:1s:3s/*",       False],
         1740  +            [2,     "è",            ":Ip:1ś/R",             False],
         1741  +            [4,     "ètes",         ":Ip:Sp:2s/*",          False],
         1742  +            [2,     "ons",          ":Ip:1p/*",             False],
         1743  +            [2,     "ez",           ":Ip:2p/*",             False],
         1744  +            [4,     "ètent",        ":Ip:Sp:3p/*",          False],
         1745  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1746  +            [2,     "ait",          ":Iq:3s/*",             False],
         1747  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1748  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1749  +            [2,     "aient",        ":Iq:3p/*",             False],
         1750  +            [2,     "ai",           ":Is:1s/*",             False],
         1751  +            [2,     "as",           ":Is:2s/*",             False],
         1752  +            [2,     "a",            ":Is:3s/*",             False],
         1753  +            [2,     "âmes",         ":Is:1p/*",             False],
         1754  +            [2,     "âtes",         ":Is:2p/*",             False],
         1755  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1756  +            [2,     "erai",         ":If:1s/M",             False],
         1757  +            [4,     "èterai",       ":If:1s/R",             False],
         1758  +            [2,     "eras",         ":If:2s/M",             False],
         1759  +            [4,     "èteras",       ":If:2s/R",             False],
         1760  +            [2,     "era",          ":If:3s/M",             False],
         1761  +            [4,     "ètera",        ":If:3s/R",             False],
         1762  +            [2,     "erons",        ":If:1p/M",             False],
         1763  +            [4,     "èterons",      ":If:1p/R",             False],
         1764  +            [2,     "erez",         ":If:2p/M",             False],
         1765  +            [4,     "èterez",       ":If:2p/R",             False],
         1766  +            [2,     "eront",        ":If:3p!/M",            False],
         1767  +            [4,     "èteront",      ":If:3p!/R",            False],
         1768  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1769  +            [4,     "èterais",      ":K:1s:2s/R",           False],
         1770  +            [2,     "erait",        ":K:3s/M",              False],
         1771  +            [4,     "èterait",      ":K:3s/R",              False],
         1772  +            [2,     "erions",       ":K:1p/M",              False],
         1773  +            [4,     "èterions",     ":K:1p/R",              False],
         1774  +            [2,     "eriez",        ":K:2p/M",              False],
         1775  +            [4,     "èteriez",      ":K:2p/R",              False],
         1776  +            [2,     "eraient",      ":K:3p/M",              False],
         1777  +            [4,     "èteraient",    ":K:3p/R",              False],
         1778  +            [2,     "asse",         ":Sq:1s/*",             False],
         1779  +            [2,     "asses",        ":Sq:2s/*",             False],
         1780  +            [2,     "ât",           ":Sq:3s/*",             False],
         1781  +            [2,     "assions",      ":Sq:1p/*",             False],
         1782  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1783  +            [2,     "assent",       ":Sq:3p/*",             False],
         1784  +            [4,     "ète",          ":E:2s/*",              False],
         1785  +            [2,     "ons",          ":E:1p/*",              False],
         1786  +            [2,     "ez",           ":E:2p/*",              False]
         1787  +        ],
         1788  +
         1789  +        "étrer": [
         1790  +            [2,     "er",           ":Y/*",                 False],
         1791  +            [2,     "ant",          ":P/*",                 False],
         1792  +            [5,     "ètre",         ":Ip:Sp:1s:3s/*",       False],
         1793  +            [2,     "è",            ":Ip:1ś/R",             False],
         1794  +            [5,     "ètres",        ":Ip:Sp:2s/*",          False],
         1795  +            [2,     "ons",          ":Ip:1p/*",             False],
         1796  +            [2,     "ez",           ":Ip:2p/*",             False],
         1797  +            [5,     "ètrent",       ":Ip:Sp:3p/*",          False],
         1798  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1799  +            [2,     "ait",          ":Iq:3s/*",             False],
         1800  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1801  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1802  +            [2,     "aient",        ":Iq:3p/*",             False],
         1803  +            [2,     "ai",           ":Is:1s/*",             False],
         1804  +            [2,     "as",           ":Is:2s/*",             False],
         1805  +            [2,     "a",            ":Is:3s/*",             False],
         1806  +            [2,     "âmes",         ":Is:1p/*",             False],
         1807  +            [2,     "âtes",         ":Is:2p/*",             False],
         1808  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1809  +            [2,     "erai",         ":If:1s/M",             False],
         1810  +            [5,     "ètrerai",      ":If:1s/R",             False],
         1811  +            [2,     "eras",         ":If:2s/M",             False],
         1812  +            [5,     "ètreras",      ":If:2s/R",             False],
         1813  +            [2,     "era",          ":If:3s/M",             False],
         1814  +            [5,     "ètrera",       ":If:3s/R",             False],
         1815  +            [2,     "erons",        ":If:1p/M",             False],
         1816  +            [5,     "ètrerons",     ":If:1p/R",             False],
         1817  +            [2,     "erez",         ":If:2p/M",             False],
         1818  +            [5,     "ètrerez",      ":If:2p/R",             False],
         1819  +            [2,     "eront",        ":If:3p!/M",            False],
         1820  +            [5,     "ètreront",     ":If:3p!/R",            False],
         1821  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1822  +            [5,     "ètrerais",     ":K:1s:2s/R",           False],
         1823  +            [2,     "erait",        ":K:3s/M",              False],
         1824  +            [5,     "ètrerait",     ":K:3s/R",              False],
         1825  +            [2,     "erions",       ":K:1p/M",              False],
         1826  +            [5,     "ètrerions",    ":K:1p/R",              False],
         1827  +            [2,     "eriez",        ":K:2p/M",              False],
         1828  +            [5,     "ètreriez",     ":K:2p/R",              False],
         1829  +            [2,     "eraient",      ":K:3p/M",              False],
         1830  +            [5,     "ètreraient",   ":K:3p/R",              False],
         1831  +            [2,     "asse",         ":Sq:1s/*",             False],
         1832  +            [2,     "asses",        ":Sq:2s/*",             False],
         1833  +            [2,     "ât",           ":Sq:3s/*",             False],
         1834  +            [2,     "assions",      ":Sq:1p/*",             False],
         1835  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1836  +            [2,     "assent",       ":Sq:3p/*",             False],
         1837  +            [5,     "ètre",         ":E:2s/*",              False],
         1838  +            [2,     "ons",          ":E:1p/*",              False],
         1839  +            [2,     "ez",           ":E:2p/*",              False]
         1840  +        ],
         1841  +
         1842  +        "évrer": [
         1843  +            [2,     "er",           ":Y/*",                 False],
         1844  +            [2,     "ant",          ":P/*",                 False],
         1845  +            [5,     "èvre",         ":Ip:Sp:1s:3s/*",       False],
         1846  +            [2,     "è",            ":Ip:1ś/R",             False],
         1847  +            [5,     "èvres",        ":Ip:Sp:2s/*",          False],
         1848  +            [2,     "ons",          ":Ip:1p/*",             False],
         1849  +            [2,     "ez",           ":Ip:2p/*",             False],
         1850  +            [5,     "èvrent",       ":Ip:Sp:3p/*",          False],
         1851  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1852  +            [2,     "ait",          ":Iq:3s/*",             False],
         1853  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1854  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1855  +            [2,     "aient",        ":Iq:3p/*",             False],
         1856  +            [2,     "ai",           ":Is:1s/*",             False],
         1857  +            [2,     "as",           ":Is:2s/*",             False],
         1858  +            [2,     "a",            ":Is:3s/*",             False],
         1859  +            [2,     "âmes",         ":Is:1p/*",             False],
         1860  +            [2,     "âtes",         ":Is:2p/*",             False],
         1861  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1862  +            [2,     "erai",         ":If:1s/M",             False],
         1863  +            [5,     "èvrerai",      ":If:1s/R",             False],
         1864  +            [2,     "eras",         ":If:2s/M",             False],
         1865  +            [5,     "èvreras",      ":If:2s/R",             False],
         1866  +            [2,     "era",          ":If:3s/M",             False],
         1867  +            [5,     "èvrera",       ":If:3s/R",             False],
         1868  +            [2,     "erons",        ":If:1p/M",             False],
         1869  +            [5,     "èvrerons",     ":If:1p/R",             False],
         1870  +            [2,     "erez",         ":If:2p/M",             False],
         1871  +            [5,     "èvrerez",      ":If:2p/R",             False],
         1872  +            [2,     "eront",        ":If:3p!/M",            False],
         1873  +            [5,     "èvreront",     ":If:3p!/R",            False],
         1874  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1875  +            [5,     "èvrerais",     ":K:1s:2s/R",           False],
         1876  +            [2,     "erait",        ":K:3s/M",              False],
         1877  +            [5,     "èvrerait",     ":K:3s/R",              False],
         1878  +            [2,     "erions",       ":K:1p/M",              False],
         1879  +            [5,     "èvrerions",    ":K:1p/R",              False],
         1880  +            [2,     "eriez",        ":K:2p/M",              False],
         1881  +            [5,     "èvreriez",     ":K:2p/R",              False],
         1882  +            [2,     "eraient",      ":K:3p/M",              False],
         1883  +            [5,     "èvreraient",   ":K:3p/R",              False],
         1884  +            [2,     "asse",         ":Sq:1s/*",             False],
         1885  +            [2,     "asses",        ":Sq:2s/*",             False],
         1886  +            [2,     "ât",           ":Sq:3s/*",             False],
         1887  +            [2,     "assions",      ":Sq:1p/*",             False],
         1888  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1889  +            [2,     "assent",       ":Sq:3p/*",             False],
         1890  +            [5,     "èvre",         ":E:2s/*",              False],
         1891  +            [2,     "ons",          ":E:1p/*",              False],
         1892  +            [2,     "ez",           ":E:2p/*",              False]
         1893  +        ],
         1894  +
         1895  +        "éyer": [
         1896  +            [2,     "er",           ":Y/*",                 False],
         1897  +            [2,     "ant",          ":P/*",                 False],
         1898  +            [4,     "èye",          ":Ip:Sp:1s:3s/*",       False],
         1899  +            [2,     "è",            ":Ip:1ś/R",             False],
         1900  +            [4,     "èyes",         ":Ip:Sp:2s/*",          False],
         1901  +            [2,     "ons",          ":Ip:1p/*",             False],
         1902  +            [2,     "ez",           ":Ip:2p/*",             False],
         1903  +            [4,     "èyent",        ":Ip:Sp:3p/*",          False],
         1904  +            [2,     "ais",          ":Iq:1s:2s/*",          False],
         1905  +            [2,     "ait",          ":Iq:3s/*",             False],
         1906  +            [2,     "ions",         ":Iq:Sp:1p/*",          False],
         1907  +            [2,     "iez",          ":Iq:Sp:2p/*",          False],
         1908  +            [2,     "aient",        ":Iq:3p/*",             False],
         1909  +            [2,     "ai",           ":Is:1s/*",             False],
         1910  +            [2,     "as",           ":Is:2s/*",             False],
         1911  +            [2,     "a",            ":Is:3s/*",             False],
         1912  +            [2,     "âmes",         ":Is:1p/*",             False],
         1913  +            [2,     "âtes",         ":Is:2p/*",             False],
         1914  +            [2,     "èrent",        ":Is:3p!/*",            False],
         1915  +            [2,     "erai",         ":If:1s/M",             False],
         1916  +            [4,     "èyerai",       ":If:1s/R",             False],
         1917  +            [2,     "eras",         ":If:2s/M",             False],
         1918  +            [4,     "èyeras",       ":If:2s/R",             False],
         1919  +            [2,     "era",          ":If:3s/M",             False],
         1920  +            [4,     "èyera",        ":If:3s/R",             False],
         1921  +            [2,     "erons",        ":If:1p/M",             False],
         1922  +            [4,     "èyerons",      ":If:1p/R",             False],
         1923  +            [2,     "erez",         ":If:2p/M",             False],
         1924  +            [4,     "èyerez",       ":If:2p/R",             False],
         1925  +            [2,     "eront",        ":If:3p!/M",            False],
         1926  +            [4,     "èyeront",      ":If:3p!/R",            False],
         1927  +            [2,     "erais",        ":K:1s:2s/M",           False],
         1928  +            [4,     "èyerais",      ":K:1s:2s/R",           False],
         1929  +            [2,     "erait",        ":K:3s/M",              False],
         1930  +            [4,     "èyerait",      ":K:3s/R",              False],
         1931  +            [2,     "erions",       ":K:1p/M",              False],
         1932  +            [4,     "èyerions",     ":K:1p/R",              False],
         1933  +            [2,     "eriez",        ":K:2p/M",              False],
         1934  +            [4,     "èyeriez",      ":K:2p/R",              False],
         1935  +            [2,     "eraient",      ":K:3p/M",              False],
         1936  +            [4,     "èyeraient",    ":K:3p/R",              False],
         1937  +            [2,     "asse",         ":Sq:1s/*",             False],
         1938  +            [2,     "asses",        ":Sq:2s/*",             False],
         1939  +            [2,     "ât",           ":Sq:3s/*",             False],
         1940  +            [2,     "assions",      ":Sq:1p/*",             False],
         1941  +            [2,     "assiez",       ":Sq:2p/*",             False],
         1942  +            [2,     "assent",       ":Sq:3p/*",             False],
         1943  +            [4,     "èye",          ":E:2s/*",              False],
         1944  +            [2,     "ons",          ":E:1p/*",              False],
         1945  +            [2,     "ez",           ":E:2p/*",              False]
         1946  +        ]
         1947  +    }
         1948  +}

Modified gc_lang/fr/oxt/DictOptions/lxe_strings.py from [1bb5475e12] to [d169176bce].

     6      6   dStrings = {
     7      7       "fr": {
     8      8           "title": "Grammalecte · Éditeur lexical",
     9      9   
    10     10           # Ajout
    11     11           "add_section": "Nouveau mot (lemme)",
    12     12           "lemma": "Lemme",
           13  +        "generate_button": "Créer",
    13     14   
    14     15           # catégories
    15     16           "common_name": "Nom commun",
    16     17           "nom_adj": "Nom et adjectif",
    17     18           "nom": "Nom",
    18     19           "adj": "Adjectif",
    19     20           "alt_lemma": "[optionnel] Autre forme (masculine, féminine, variante, etc.)",