Faire des anagrammes à partir d’un ou plusieurs mots

Profile picture for user Patrice Grundmann
Soumis par Patrice Grundmann le 24/04/2016
Image-billet-blog
Faire des anagrammes à partir d’un ou plusieurs mots

Il peut arriver qu’on ait besoin de faire pour son rédactionnel un anagramme, en français, que ça soit à partir d’un ou plusieurs mots. Sous GNU/Linux, comme une distribution à partir d’un (X)ubuntu, la procédure est simple. Il suffit d’installer le paquet « wordplay ».

On fait donc un petit :

apt install wordplay

Les premiers pas

Tapons la commande vide pour voir les options dans un terminal comme Konsole :

wordplay                                                         
Wordplay Version 7.22  03-20-96, 1991   by Evans A Criswell
University of Alabama in Huntsville     criswell@cs.uah.edu

Usage:  wordplay string_to_anagram [-slxavnXmXdX] [-w word] [-f word_file]

Capital X represents an integer.

s  = silent operation (no header or line numbers)
l  = print candidate word list
x  = do not generate anagrams (useful with l option)
a  = multiple occurrences of a word in an anagram OK
v  = allow words with no vowels to be considered
nX = candidate words must have n characters minimum
mX = candidate words must have m characters maximum
dX = limit anagrams to d words

w word = word to start anagrams
f file = word file to use ("-f -" for stdin)

Suggestion:  Run "wordplay trymenow"  to get started

Faisons un anagramme de trois mots à partir d’un prénom et d’un nom :

wordplay patricegrundmann -d3

La sortie donne une longue liste de combinaisons. Par exemple « GRANDPARENT CUMIN » anagramme de mon nom et prénom. Mais comment avoir une réponse se basant sur un dictionnaire français ? C’est tout simple. Il suffit se se rendre à cette adresse http://www.pallier.org/ressources/dicofr/dicofr.htm et télécharger le fichier texte qui a été créé pour vous. En console on tape :

cd ~
wget http://www.pallier.org/ressources/dicofr/dicofr.htm
sudo -i
mv liste.de.mots.francais.frgut.txt /usr/share/games/wordplay/
cd /usr/share/games/wordplay/

À présent on peut spécifier un dico comme suit :

wordplay cestunebellejournée -d3 -f liste.de.mots.francais.frgut.txt

On constate qu’il y a un problème accentuation dans la sortie (et ils ne sont pas pris en compte dans les résultats, ou du moins sont rajoutés en plus à partir du fichier dico) et que les accents de la requête, eux, passent carrément à la trappe ainsi que toute la lettre. On tape donc cette commande pour effacer tous les accents du fichier de langue :

iconv -f utf8 -t ascii//TRANSLIT < liste.de.mots.francais.frgut.txt > fr.txt

Voyons ce que ça donne avec une requête accentuée, mais sans accent :

wordplay genial -d3 -f /usr/share/games/wordplay/fr.txt
Wordplay Version 7.22  03-20-96, 1991   by Evans A Criswell
University of Alabama in Huntsville     criswell@cs.uah.edu


Candidate word list :  no
Anagram Generation  :  yes
Adjacent duplicates :  no
Vowel-free words OK :  no

Max anagram depth   :  3
Maximum word length :  128
Minimum word length :  0

Word list file      :  "/usr/share/games/wordplay/fr.txt"
String to anagram   :  "GENIAL"


Initializing.  Please wait while words are being loaded
and unnecessary words are being filtered out ...

85 words loaded (4096 byte block).  Longest kept:  6 letters.

Anagrams found:
     1.  A LIGNE
     2.  A LINGE
     3.  A LINGE
     4.  A LIGNE
     5.  A GEL IN
     6.  A GEL NI
     7.  A LE GIN
     8.  A LIGNE
     9.  A LINGE
    10.  A LINGE
    11.  A LIGNE
    12.  A GEL IN
    13.  A GEL NI
    14.  A LE GIN
    15.  AGE LIN
    16.  AGE LIN
    17.  INEGAL
    18.  ALGINE
    19.  GENIAL
    20.  ALIGNE
    21.  ALIGNE
    22.  LINGEA
    23.  GELA IN
    24.  GELA NI
    25.  GALE IN
    26.  GALE NI
    27.  EGAL IN
    28.  EGAL NI
    29.  ANGE LI
    30.  ANGE IL
    31.  NAGE LI
    32.  NAGE IL
    33.  NAGE LI
    34.  NAGE IL
    35.  GENA LI
    36.  GENA IL
    37.  ALE GIN
    38.  GAIN LE
    39.  GAL NIE
    40.  GAL NIE
    41.  NIA GEL
    42.  LA IGNE
    43.  LA IGNE
    44.  NA LIGE
    45.  AN LIGE

CONCLUSION : nous savons à présent faire des anagrammes en français, et il ne nous reste plus qu'à replacer les accents sur les majuscules, au besoin, car elles s'accentuent.

Un bon anagramme de « génial » serait donc « aligné ».

Catégorie

Ajouter un commentaire

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.

Plain text

  • Aucune balise HTML autorisée.
  • Les lignes et les paragraphes vont à la ligne automatiquement.