drime

French rhyme dictionary with web and CLI interface
git clone https://a3nm.net/git/drime/
Log | Files | Refs | README

about.html (10955B)


      1 {% extends "page.html" %}
      2 
      3 {% block body %}
      4 {% if lang == 'fr' %}
      5 <p>Bienvenue sur <strong>drime</strong>&nbsp;!</p>
      6 
      7 <h2 id="info">Qu'est-ce que c'est&nbsp;?</h2>
      8 <p>C'est un dictionnaire de rimes (par <a href="https://a3nm.net">a3nm</a>). Il
      9 utilise la base de données <a href="http://www.lexique.org/">Lexique</a> avec
     10 quelques changements, et utilise également <a
     11   href="http://python.org">Python</a>, <a href="http://mysql.com">MySQL</a> et
     12 <a href="http://flask.pocoo.org">Flask</a>. Vous pouvez téléchager le code sur
     13 le <a href="https://a3nm.net/git/drime">dépôt git de drime</a> si vous voulez le
     14 faire fonctionner sur votre machine.</p>
     15 
     16 <p>Publicité gratuite&nbsp;: si vous aimez drime, peut-être serez-vous intéressé
     17 par le vérificateur de poèmes <a href="https://plint.a3nm.net/">plint</a>.</p>
     18 
     19 <h2 id="help">Comment je m'en sers&nbsp;?</h2>
     20 <p>Dans le champ <strong>mot</strong>, entrez le mot pour lequel vous voulez
     21 obtenir des rimes.</p>
     22 
     23 <p>Dans le champ <strong>n_syllabes</strong>, vous pouvez indiquer un nombre de
     24 syllabes pour limiter les résultats retournés. Vous pouvez spécifier un nombre
     25 exact ou un intervalle (par exemple "1-3"). Vous pouvez ajouter "+" à la fin
     26 pour indiquer que vous autorisez une syllabe supplémentaire à condition que le
     27 mot commence par une voyelle ou un "h" non-aspiré, ce qui est peut être utile
     28 dans le cas où le mot précédent dans votre poème se termine par un "e" qui
     29 serait alors élidé. Le comptage des syllabes est approximatif&nbsp;: si le
     30 système a un doute sur un mot, il l'incluera à tort plutôt que de le rejeter à
     31 tort.</p>
     32 
     33 <p>En cochant la case <strong>genre</strong>, vous forcez les résultats à
     34 fournir une rime de même genre que votre requête. Si vous ne savez pas ce que
     35 sont les rimes masculines ou féminines, vous pouvez regarder. <a
     36   href="https://fr.wikipedia.org/wiki/Rime#Genre_des_rimes_:_rimes_f.C3.A9minines_et_masculines">la
     37 page Wikipédia à ce propos</a>.</p>
     38 
     39 <p>En cochant la case <strong>classique</strong>, vous forcez les résultats à
     40 être une rime classique. (Ce sont les contraintes classiques qui disent que
     41 "rang" rime avec "sang" ou "flanc" mais pas avec "grand".) Cette option ne fait
     42 pas grand-sens sans imposer également le respect du genre. (Désolé, je ne trouve
     43 pas de bonne référence pour en savoir plus là-dessus.)</p>
     44 
     45 <h2 id="badpron">La prononciation indiquée n'est pas correcte&nbsp;!</h2>
     46 
     47 <p>drime utilise Lexique pour déterminer la prononciation des mots, et utilise
     48 un <a href="https://a3nm.net/git/fryhme">autre système</a> pour deviner celle
     49 des mots inconnus. En cas d'échec, il est possible de fournir une prononcation <a
     50   href="#pron">X-SAMPA</a> entre crochets après le mot. Cela permet aussi de
     51 résoudre les ambiguïtés entre plusieurs prononciations pour une même graphie. Par exemple&nbsp;: <a
     52   href="/query?query=fils%20%5Bfis%5D">fils [fis]</a>, <a
     53   href="/query?query=leicester%20%5BlEstER%5D">leicester [lEstER]</a>.</p>
     54 
     55 <h2>Quels sont les résultats manquants&nbsp;? (faux négatifs)</h2>
     56 <ul>
     57 <li>Le système ne fournira que des mots de son dictionnaire comme rimes. En
     58 particulier, il ne fournira pas de noms propres.</li>
     59 <li>Le système ne fournira que des mots qui riment (ie. tous les sons jusqu'à la
     60 dernière voyelle incluse correspondent exactement) ou dont les trois derniers
     61 caratères au moins sont les mêmes (pour les rimes normandes).</li>
     62 <li>Le système peut se tromper si la prononciation qu'il connaît pour un mot est
     63 mauvaise, ou s'il manque des variantes. Du reste, le système exige des
     64 correspondances exactes (par exemple, il fait la distinction "brun/brin",
     65 c'est-à-dire la distinction entre "9~" et "E~").</li>
     66 <li>Le système éliminera les résultats qu'il considère comme redondants, ie. des
     67 résultats dérivés d'un autre résultat mieux classé.</li>
     68 <li>Le système ne produira pas de résultats suivant la règle classique de la
     69 liaison supposée.</li>
     70 <li>Le système ne renvoie que les {{ pagesize }} meilleurs résulats.</li>
     71 <li>Le système peut faire une interprétation trop stricte des règles classiques
     72 (ça ne devrait pas arriver souvent).</li>
     73 </ul>
     74 
     75 <h2>Quels sont les résultats surnuméraires&nbsp;? (faux positifs)</h2>
     76 <ul>
     77 <li>Le système fournira des mots qui sont trop similaires à la requête pour
     78 faire une rime acceptable (par exemple "reprendre" et "prendre").</li>
     79 <li>Le système fournira des résultats avec le mauvais nombre de syllabes.</li>
     80 <li>Le système autorisera des rimes pour l'œil abusives (vers la fin des
     81 résultats).</li>
     82 <li>Le système autorisera des rimes qui ne sont pas acceptables pour les règles
     83 classiques, parce qu'il est trop tolérant quant à l'interprétation des règles
     84 classiques.</li>
     85 </ul>
     86 
     87 
     88 <h2>Comment les résultats sont-ils triés&nbsp;?</h2>
     89 <p>Les critères appliqués, dans l'ordre, sont&nbsp;: le nombre de phonèmes
     90 communs, le nombre de caractères communs, et la fréquence du mot dans un
     91 corpus.</p>
     92 
     93 <h2 id="pron">Comment la prononciation est-elle indiquée&nbsp;?</h2>
     94 <p>Avec <a href="http://en.wikipedia.org/wiki/X-SAMPA">X-SAMPA</a>. Voyez aussi <a
     95   href="https://fr.wiktionary.org/wiki/Annexe:Prononciation/fran%C3%A7ais">l'annexe
     96   de Wiktionnaire sur la prononciation du français</a>. Notez qu'en raison de
     97 limitations de Lexique, la prononciation indiquée est une prononciation orale et
     98 non une prononciation poétique. Par exemple, "placement" est référencé comme
     99 "plasmA~" but serait "plas@mA~"). Des heuristiques sont utilisées afin de
    100 compenser ça lorsque les résultats sont filtrés sur le nombre de syllabes.</p>
    101 
    102 <h2>Y a-t-il une API&nbsp;?</h2>
    103 <p>Plus ou moins. Fournissez un paramètre GET "json" et vous obtiendrez la page
    104 en JSON.</p>
    105 
    106 <h2>D'où vient le nom&nbsp;?</h2>
    107 
    108 <p>Ça se prononce [dRim]. C'est une abréviation de "dictionnaire de rimes", et
    109 un jeu de mots avec l'anglais "dream".</p>
    110 {% else %}
    111 <p>Welcome to <strong>drime</strong>!</p>
    112 <h2 id="info">Wait, what is this?</h2>
    113 <p>This is <a href="https://a3nm.net">a3nm</a>'s attempt to build a better French
    114 rhyme dictionary. It uses the <a href="http://www.lexique.org/">Lexique</a>
    115 database with some customisations, and is powered by <a
    116   href="http://python.org">Python</a>, <a href="http://mysql.com">MySQL</a> and
    117 <a href="http://flask.pocoo.org">Flask</a>. You can get the code on the <a
    118   href="https://a3nm.net/git/drime">drime repository</a> to run it locally.</p>
    119 <p>Ad: if you like drime, you might enjoy the French poetry checker <a
    120   href="https://plint.a3nm.net/">plint</a>.</p>
    121 
    122 <h2 id="help">How do I use it?</h2>
    123 <p>In the <strong>word</strong> field, enter the word you want to get rhymes
    124 for.</p>
    125 <p>In the <strong>n_syllables</strong> field, you can specify a number of
    126 syllables to limit on. You can either specify an exact number or a range (eg.
    127 "1-3"). You can suffix a "+" to indicate that you can accept one syllable more
    128 if the word starts with a vowel or non-aspirated 'h', ie. the previous word ends
    129 with an elidable 'e'. The syllable counts for words are approximate: the
    130 estimation is always done to overapproximate the results of a given query.</p>
    131 <p>The <strong>gender</strong> checkbox limits to rhymes that respect rhyme
    132 gender. If you're unsure about what this is, see <a
    133   href="https://fr.wikipedia.org/wiki/Rime#Genre_des_rimes_:_rimes_f.C3.A9minines_et_masculines">the
    134   relevant Wikipedia page (in French)</a>.</p>
    135 
    136 <p>The <strong>classical</strong> checkbox restricts the rhymes to those that
    137 are allowed by French classical poetry constraints (according to which, e.g.,
    138 "rang" rhymes with "sang" or "flanc" but not with "grand"). If you select this
    139 option, you should probably also enable the "gender" option. (Sorry, I can't
    140 find a reference online to explain more about how classical rhymes work.)</p>
    141 
    142 <h2 id="badpron">The pronunciation indicated by drime is not correct!</h2>
    143 
    144 <p>drime uses Lexique to find out about the pronunciation of words, and uses
    145 a <a href="https://a3nm.net/git/fryhme">different system</a> to guess that of
    146 unknown words. If it fails, you can provide a pronunciation written
    147 between square brackets using <a href="#pron">X-SAMPA</a>. You can also use this
    148 to disambiguate between multiple possible pronunciations. For instance: <a
    149 href="/query?query=fils%20%5Bfis%5D">fils [fis]</a>, <a
    150 href="/query?query=leicester%20%5BlEstER%5D">leicester [lEstER]</a>.</p>
    151 
    152 <h2>Which results are missing? (false negatives)</h2>
    153 <ul>
    154 <li>The system will only provide words from its dictionary. No proper nouns, for
    155 instance.</li>
    156 <li>The system will only provide words which either rhyme (ie. all sounds up to
    157 and including the last vowel match exactly) or which share the last three
    158 characters (for visual rhymes).</li>
    159 <li>The system might be fooled because its pronunciation for a word is mistaken
    160 or does not include all variants. Besides, the system is picky about phonemic
    161 distinctions (notably "brun/brin", ie. "9~/E~").</li>
    162 <li>The system will eliminate results that it considers redundant, ie. results
    163 derived from a previous result.</li>
    164 <li>The system will not accept rhymes for the classical rule of <em>liason
    165   supposée</em>.</li>
    166 <li>The system will only return the {{ pagesize }} best results.</li>
    167 <li>The system may be too strict when enforcing classical rules (it shouldn't
    168 happen very often, though).</li>
    169 </ul>
    170 
    171 <h2>Which results are unnecessary? (false positives)</h2>
    172 <ul>
    173 <li>The system will provide words which are too similar to the query word to
    174 make a decent rhyme with it (eg. "reprendre" for "prendre").</li>
    175 <li>The system will provide results with a wrong syllable count.</li>
    176 <li>The system will provide abusive visual rhymes (at the end of the results).</li>
    177 <li>The system will provide rhymes which do not follow classical constraints,
    178 because its interpretation of them may be too liberal.</li>
    179 </ul>
    180 
    181 <h2>How are results sorted?</h2>
    182 <p>Results favor, in this order, the number of common phonemes, the number of
    183 common letters, and the frequency of the word.</p>
    184 
    185 <h2 id="pron">How is pronunciation written?</h2>
    186 <p>It is <a href="http://en.wikipedia.org/wiki/X-SAMPA">X-SAMPA</a>. Information
    187 about French pronunciation can be found on the <a
    188   href="https://fr.wiktionary.org/wiki/Annexe:Prononciation/fran%C3%A7ais">French
    189   Wiktionary</a>. Be aware that because of Lexique limitations, the
    190 pronunciation indicated is a colloquial one and not the one that you would use to
    191 versify (for instance, "placement" is reported as "plasmA~" but would be read as
    192 "plas@mA~"). Heuristics are used to work around this when filtering on the
    193 number of syllables.</p>
    194 
    195 <h2>Is there an API?</h2>
    196 <p>Sort of. Provide a "json" GET parameter and you'll get the page in JSON.</p>
    197 
    198 <h2>What about the name?</h2>
    199 
    200 <p>It's pronounced [dRim], as a pun with "dream" (the dream rhyme dictionary)
    201 but also because it is short for "dictionnaire de rimes" in French.</p>
    202 {% endif %}
    203 {% endblock %}
    204