commit 446d57781d8d1934f6572fe0c0b66fb475094a8b
parent 2bd9df4ef0eea5b0e62de57eb82ec671872533f1
Author: Antoine Amarilli <a3nm@a3nm.net>
Date: Sun, 27 Jul 2014 15:18:30 +0200
extract length from littre
Diffstat:
5 files changed, 115 insertions(+), 0 deletions(-)
diff --git a/littre/additions_poesie b/littre/additions_poesie
@@ -0,0 +1,14 @@
+ACACIA%a-ka-sia ; de trois OU quatre syllabes en poésie
+ADJURATION%dju-ra-sion ; en poésie, de quatre syllabes
+APOSTAT%a-po-sta ; en poésie, de trois syllabes
+DJURATION%dju-ra-sion ; en poésie, de quatre syllabes
+AÉRIEN, ENNE%a-é-riin, riè-n' ; en poésie, de quatre syllabes
+AFFECTION%a-fè-ksion ; de quatre syllabes en poésie
+ALTÉRATION%al-té-ra-sion ; en poésie, de cinq syllabes
+ALTIER, IÈRE%al-tié, tiê-r' ; en poésie, de deux syllabes
+CAPTATION%ka-pta-sion ; en poésie, de quatre syllabes
+COALITION%ko-a-li-sion ; en poésie, de cinq syllabes
+CONDITION%kon-di-sion ; en poésie, de quatre syllabes
+CONSCRIPTION%kon-skri-psion ; en poésie, de quatre syllabes
+HARNAIS ou HARNOIS%har-nê ; en poésie, de deux syllabes
+SANGLIER%san-gli-é ; de deux OU trois syllabes en poésie
diff --git a/littre/additions_vers b/littre/additions_vers
@@ -0,0 +1,16 @@
+ACADÉMICIEN%a-ka-dé-mi-siin ; de cinq OU six syllabes en vers
+AVANT-HIER%a-van-tièr ; de trois syllabes en vers
+BROC%bro ; de une syllabes en vers
+DIABLE%dia-bl' ; de deux syllabes en vers
+EXÉCUTION%è-gzé-ku-sion ; de cinq syllabes en vers
+GUÈRE ou GUÈRES%ghê-r'. de une syllabe en vers
+JUSQUE et JUSQUES%ju-sk'. de une syllabe en vers
+MISSIONNAIRE%mi-sio-nê-r' ; en vers, de quatre syllabes
+RÉFUSION%ré-fu-zion ; en vers, de quatre syllabes
+RÉMUNÉRATION%ré-mu-né-ra-sion ; en vers, de six syllabes
+SOUHAITABLE%souè-ta-bl' ; en vers, de trois syllabes
+SOUHAITÉ, ÉE%souè-té, tée ; en vers, de trois syllabes
+SOUHAITER%souè-té ; en vers, de trois syllabes
+STOÏCIEN, IENNE%sto-i-siin, siè-n' ; en vers, de quatre syllabes
+SUPPLICATION%su-pli-ka-sion ; en vers, de cinq syllabes
+VIELLE%viè-l' ; en vers, de deux OU trois syllabes
diff --git a/littre/compare_plint.py b/littre/compare_plint.py
@@ -0,0 +1,28 @@
+#!/usr/bin/python3
+
+"""compare file from littre and file from plint for disagreements"""
+
+import sys
+
+plint = open(sys.argv[1])
+littre = open(sys.argv[2])
+
+while True:
+ l_plint = plint.readline()
+ if not l_plint:
+ break
+ l_littre = littre.readline()
+ w_plint, p_plint = l_plint.split('%')
+ w_littre, p_littre = l_littre.split('%')
+ p_littre = int(p_littre)
+ assert(w_plint == w_littre)
+ w = w_plint
+ if '-' in p_plint:
+ lo, hi = p_plint.split('-')
+ lo = int(lo)
+ hi = int(hi)
+ else:
+ lo = int(p_plint)
+ hi = lo
+ if not (lo <= p_littre <= hi):
+ print ("%s : %d vs %d-%d" % (w, p_littre, lo, hi))
diff --git a/littre/littre_syll.sh b/littre/littre_syll.sh
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+# extract prononciation from xmllittre
+# https://bitbucket.org/Mytskine/xmlittre-data.git
+
+xmlstarlet sel -t -m "//entree" -v "@terme" -v "\"%\"" \
+ -v "entete/prononciation" -n "$1"/*.xml > prons
+cat prons | grep -E "(syllabes en poésie|en poésie,? de)" > prons_poesie
+cat prons | grep -E "(en vers,? de|syllabes en vers)" > prons_vers
+cat additions_poesie additions_vers prons_poesie prons_vers |
+ awk 'BEGIN {FS = "%";} !a[$1]++;' |
+ while read l; do
+ echo "$l" | cut -d '%' -f 1 | cut -d ' ' -f 1 | tr -d '\n'
+ echo -n '%'
+ echo "$l" | cut -d '%' -f 2- | tr ' ' '\n' |
+ sed '
+ s/^une$/1/;
+ s/^deux$/2/;
+ s/^trois$/3/;
+ s/^quatre$/4/;
+ s/^cinq$/5/;
+ s/^cinç$/5/;
+ s/^six$/6/;
+ s/^sept$/7/;
+ s/^disylla.*$/2/;
+ s/^trisylla.*$/3/;
+ ' | grep '[0-9]' | head -1
+ done > prons_special
+
+pv prons |
+ grep -v '%$' |
+ grep -v ' .*%' |
+ awk 'BEGIN {FS = "%";} !a[$1]++;' |
+ while read l; do
+ echo "$l" | cut -d '%' -f 1 | cut -d ' ' -f 1 | tr -d '\n'
+ echo -n '%'
+ echo "$l" | cut -d '%' -f 2- | sed 's/ *- */-/g' | cut -d ' ' -f 1 | tr -d ',' |
+ sed "s/-[^aâàeéêèiîoôuùûäëïöü-]*'//" | tr '-' '\n' | wc -l
+ done > prons_normal
+
+pv prons_special prons_normal |
+ awk 'BEGIN {FS = "%";} !a[$1]++;' |
+ tr -d ',' | sort | grep -v '^%' | sed 's/.*/\L&/' > prons_num
+
+pv prons_num | cut -d '%' -f1 |
+ ../plint.py raw.tpl 2>&1 |
+ grep 'total:' | cut -d ':' -f4 |
+ cut -d ')' -f1 > plint_raw_nums
+
+paste <(cat prons_num| cut -d'%' -f1) plint_raw_nums |
+ tr '\t' '%' | sed 's/ *% */%/' \
+ > plint_num
+
+./compare_plint.py plint_num prons_num > conflicts
+
diff --git a/littre/raw.tpl b/littre/raw.tpl
@@ -0,0 +1,2 @@
+!
+12 A X