conjugaison-light

Obtenir les terminaisons des verbes français - retour accueil

git clone git://bebou.netlib.re/conjugaison-light
Log | Files | Refs | README |

README (3163B)


      1 # Outils pour trouver rapidement la terminaison d'un verbe
      2 
      3 ## verbe
      4 
      5 verbe prend un verbe en argument et va chercher les données sur
      6 conjugaisonfrançaise.com
      7 Le script est assez velu, devrait y avoir moyen de le simplifier
      8 Peut-être tout faire en awk ?
      9 
     10 ## tabulate
     11 
     12 tabulate est un script awk qui met toutes les données au format
     13 mode	temps	conjugaison
     14 Cela fait beaucoup de données redondantes mais c'est utile pour...
     15 
     16 ## filter
     17 
     18 filter qui est un script qui prend jusqu'à trois arguments L'idée est de
     19 pouvoir par exemple renseigner "conditionnel passé tu" et avoir la seconde
     20 personne du singulier au conditionnel passé du verbe obtenu avec le script
     21 verbe
     22 
     23 ## colorate
     24 
     25 Pour rendre les terminaisons rouges dans la console
     26 
     27 ## Usage
     28 
     29 Un usage complet pourrait être
     30 
     31 	./verbe courir | ./colorate | ./tabulate | ./filter indicatif "futur antérieur" ils
     32 
     33 ## Questions
     34 
     35 Est-ce qu'il existe une base hors ligne ?
     36 
     37 Je sais pas mais on peut en construire une. En se basant sur ce pdf des fréquences :
     38 https://eduscol.education.fr/document/15661/download
     39 
     40 On peut constuire une liste des 421 verbes les lus fréquents (pdftotext a été utile)
     41 
     42 Par exemple pour construire les fichiers pour les trois verbes les plus
     43 fréquentes dans un dossier data :
     44 
     45 head -n 3 freq.txt | xargs -I {} -n1 sh -c './verbe  > data/.txt' -- {}
     46 
     47 Chaque fichier pèse environ 2Ko donc les 100 premiers verbes tiennent dans 200Ko
     48 
     49 On peut ensuite écrire une fonction du type
     50 
     51 	conj() {
     52 		if [ -f ~/git/conjugaison-light/data/"$1".txt ]
     53 		then
     54 			data=$(cat ~/git/conjugaison-light/data/"$1".txt)
     55 		else
     56 			data=$(~/git/conjugaison-light/verbe $1)
     57 		fi
     58 		echo $data | ~/git/conjugaison-light/tabulate | ~/git/conjugaison-light/colorate | ~/git/conjugaison-light/filter $2 $3 $4 | column -nts '	'
     59 	}
     60 
     61 Qui permet d'aller taper dans les verbes déjà téléchargés si le fichier existe
     62 et de demander au site s'il n'existe pas.
     63 On peut faire autrement en créant un nouveau fichier dans la "base" s'il
     64 n'existait pas encore. Ainsi on s'économise le téléchargement de n pages au
     65 préalable. On aurait donc aucun fichier à l'origine mais tout verbe requêté une
     66 seconde fois ne passerait plus par conjugaisonfrancaise.com. Ca evite de
     67 télécharger pleins de verbes en amont, même les plus fréquents, sans savoir
     68 s'ils seront utilisés.
     69 
     70 Avec un petit CGI monter un service ?
     71 
     72 ./cgi est un exemple de script faisant l'affaire.
     73 
     74 TODO le modifier pour que si on lui passe n'imp en premier argument il fasse quelque chose de plus intelligent que de créer un fichier vide au nom de l'argument
     75 
     76 Les pages de conjugaisonfrancaise.com font environ 670Ko, 200Ko transférés
     77 La version TSV avec la coloration des terminaisons fait environ 5,5Ko
     78 Avec les filtres on peut s'arranger pour ne transférer que quelques octets.
     79 
     80 Pour vérifier une terminaison on passerait donc de 200Ko transférés à 200Ko+~100o
     81 la première fois et 100o les suivantes. Je ne sais pas à quel point un site
     82 comme celui-ci est fréquenté mais sachant que le facteur par lequel on divise
     83 les données transférées peut être est de 2000 on est gagants même sur un nombre très
     84 faible de requêtes.