Crearli richiede spesso fantasia e conoscenza della lingua. Chi come me ha difficoltà a risolverli può usare alcuni stratagemmi. Uno di questi è l'utilizzo di an, un semplice programma da eseguire nel terminale sulle nostre distribuzioni Linux tramite il quale potremo generare rapidamente tutti gli anagrammi che vogliamo.
Il funzionamento del programma è semplicissimo. Ovviamente la prima cosa da fare è installarlo. Se siete su Ubuntu e derivate potete installarlo da terminale dando
sudo apt-get install an
Una volta fatto vi basterà usare la seguente sintassi base (che potete scoprire grazie all'uso del manuale di an dando, sempre da terminale, man an)
Vediamo di fare un esempio. Se io voglio generare degli anagrammi formati da 2 parole del mio nome basterà dare
Come potete vedere ho messo 2 al (NUMERO DI PAROLE) e ho scritto il nome da anagrammare al posto di (PAROLA O PAROLE DA ANAGRAMMARE).
![]() |
faccio innamorare i cigni |
Alcuni risultati sono comici :D
Come potete vedere l'altra stringa usata nel comando è /usr/share/dict/italian che indica ad an di usare come base il dizionario italiano. Se abbiamo altri dizionari possiamo ovviamente cambiare.
Se per esempio siamo su Ubuntu abbiamo preinstallato sia il dizionario inglese che quello americano.
Per il dizionario inglese vi basterà sostituire a /usr/share/dict/italian la stringa /usr/share/dict/british-english mentre per quello americano /usr/share/dict/british-american
NOTA: nel caso non fosse presente per installare il dizionario italiano vi basterà dare
sudo apt-get install witalian
Per installare altri dizionari potete ricorrere a synaptic e cercare quello della lingua che volete installare tipo wbritish per l'inglese, wamerican per l'americano, wspanish per lo spagnolo etc.
Del tipo se voglio anagrammare il mio nome usando il dizionario inglese formando tre lettere basterà dare:
an -l3 -d /usr/share/dict/british-english "marco giannini"
La lista comandi di an è lunga
SYNOPSIS
an [-w] [-c string] [-d dictionary] [-l number_words] [-m word_length]
[-u string] [-n number_anagrams] [-h] [-v] [--words] [--contain string]
[--dict dictionary] [--length number_words] [--minimum word_length]
[--used string] [--number number_anagrams] [--help] [--version] PHRASE
DESCRIPTION
an finds all anagrams which can be made from the letters in PHRASE,
using words in the specified dictionary. The default is to use
/usr/share/dict/words.
OPTIONS
-w, --words
Print words that the letters in PHRASE can make, then exit.
-c, --contain string
Only print anagrams which contain string.
-d, --dict dictionary
Use dictionary file to find words which the letters in PHRASE
can make.
-m, --minimum word_length
Only include word which are at least word_length long.
-u, --used string
Considers that letters in string have already used when analyz‐
ing letters in PHRASE. Like --contain but doesn't print out
string.
-l, --length number_words
Finds anagrams which have a maximum of number_words words in
them. This is very useful when number of anagrams which are
output is large.
-n, --number number_anagrams
Stops after finding number_anagrams anagrams.
-h, --help
Print a usage message on standard output, then exit.
-v, --version
Print version information on standard output, then exit.
e come potete vedere possiamo specificare anche parametri come la lunghezza delle parole o la presenza di qualche stringa, del tipo voglio anagrammi di marco giannini di tre lettere che contengono la parola con dando
Insomma potete sbizzarrirvi.
Ringrazio +Luigi Iannoccaro di +Lubit Linux per avermi dato lo spunto per realizzare questo post grazie ad un suo post su facebook dove faceva vedere come anagrammare il suo nome con questo programma.