@@@@@@ To be read with charset=utf-8
@@@@@@ All text is available under the terms of the GNU Free Documentation License
@@@@@@ (FR) Cette page sert à reconstruire les tables
@@@@@@ (EN) This page is for rebuilding tables
@@@@@@ extraire les séquences de saisie des méthodes de saisie de Yudit
bash-3.00$ mytool -convert mys -my /usr/share/yudit/data/Chinese-WB.my -write Chinese-WB.txt
@@@@@@ extraire les séquences à un caractère
bash-3.00$ cat Chinese-WB.txt | sed -e "s/> 7A/> 7a/g" -e "s/ 7A/ 'z/g" -e "s/ 7a/ 7A/g" | grep "^'[^']*->" | head -30000 | tr -d '\011' | tr -d "'" | sed -e 's/ 20//' -e 's/\(.*-> \)\([0-9a-fA-F]*\)\(.*\)/print "\1\\x{\2}\3\\n" ; /' > rang1.pl ; perl -w rang1.pl > rang1.ut8 2>/dev/null
@@@@@@ extraire les séquences à deux caractères
bash-3.00$ cat Chinese-WB.txt | sed -e "s/> 7A/> 7a/g" -e "s/ 7A/ 'z/g" -e "s/ 7a/ 7A/g" | grep "^'[^']*'[^']*->" | head -30000 | tr -d '\011' | tr -d "'" | sed -e 's/ 20//' -e 's/\(.*-> \)\([0-9a-fA-F]*\)\(.*\)/print "\1\\x{\2}\3\\n" ; /' > rang2.pl ; perl -w rang2.pl > rang2.ut8 2>/dev/null
@@@@@@ extraire les séquences à trois caractères ou plus
bash-3.00$ cat Chinese-WB.txt | sed -e "s/> 7A/> 7a/g" -e "s/ 7A/ 'z/g" -e "s/ 7a/ 7A/g" | grep "^'[^']*'[^']*'[^-]*->" | head -30000 | tr -d '\011' | tr -d "'" | sed -e 's/ 20//' -e 's/\(.*-> \)\([0-9a-fA-F]*\)\(.*\)/print "\1\\x{\2}\3\\n" ; /' > rang3+.pl ; perl -w rang3+.pl > rang3+.ut8 2>/dev/null
@@@@@@ trier les séquences à un caractère suivant l'ordre wubi avec remplacement des combinaisons manquantes par la séquence _
bash-3.00$ ( cat rang1.ut8 | sed 's/->.*//' > rang1.rac1 ; for i in a b c d e f g h i j k l m n o p q r s t u v w x y ; do echo "$i " ; done > rang1.rac2 ; cat rang1.rac1 rang1.rac2 | sort | uniq -u | sed 's/$/-> _ /' > rang1.rac3 ; cat rang1.ut8 rang1.rac3 | tr 'gfdsahjklmtrewqyuiopnbvcx-' 'abcdefghijklmnopqrstuvwxy1' | sort -u -t '>' -k 1 | tr 'abcdefghijklmnopqrstuvwxy1' 'gfdsahjklmtrewqyuiopnbvcx-' > rang1w.ut8 )
@@@@@@ trier les séquences à deux caractères suivant l'ordre wubi avec remplacement des combinaisons manquantes par la séquence _
bash-3.00$ ( cat rang2.ut8 | sed 's/->.*//' > rang2.rac1 ; for i in a b c d e f g h i j k l m n o p q r s t u v w x y ; do for j in a b c d e f g h i j k l m n o p q r s t u v w x y ; do echo "$i $j " ; done ; done > rang2.rac2 ; cat rang2.rac1 rang2.rac2 | sort | uniq -u | sed 's/$/-> _ /' > rang2.rac3 ; cat rang2.ut8 rang2.rac3 | tr 'gfdsahjklmtrewqyuiopnbvcx-' 'abcdefghijklmnopqrstuvwxy1' | sort -u -t '>' -k 1 | tr 'abcdefghijklmnopqrstuvwxy1' 'gfdsahjklmtrewqyuiopnbvcx-' > rang2w.ut8 )
@@@@@@ trier les séquences à plus de deux caractères suivant l'ordre wubi
bash-3.00$ ( cat rang3+.ut8 | tr 'gfdsahjklmtrewqyuiopnbvcx-' 'abcdefghijklmnopqrstuvwxy1' | sort -u -t '>' -k 1 | tr 'abcdefghijklmnopqrstuvwxy1' 'gfdsahjklmtrewqyuiopnbvcx-' > rang3+w.ut8 )
@@@@@@ placer les listes de séquence de un ou deux caractères dans une table avec les séquences en légende des cellules
@@@ version avec bords
bash-3.00$ ( COL=0 ; COLMAX=26 ; TABLE="Table wubizixing with one or two keys" ; echo '
'$TABLE' '$TABLE'
' ; cat rang1w.ut8 rang2w.ut8 | tr '\000' '_' | tr 'gfdsahjklmtrewqyuiopnbvcx-' 'abcdefghijklmnopqrstuvwxy1' | sort -u -t '>' -k 1 | tr 'abcdefghijklmnopqrstuvwxy1' 'gfdsahjklmtrewqyuiopnbvcx-' | sed "s@\(.*\) -> \(.\).*@\2 | @" | while read CAR ; do if [ "$COL" == 0 ] ; then echo '' ; fi ; echo "$CAR" ; COL=`expr $COL + 1` ; if [ "$COL" == "$COLMAX" ] ; then COL=0 ; fi ; done ; echo '
' ) > rang1-2w.html
@@@ version sans bords
bash-3.00$ ( COL=0 ; COLMAX=26 ; TABLE="Table wubizixing with one or two keys" ; echo ' '$TABLE' '$TABLE'
' ; cat rang1w.ut8 rang2w.ut8 | tr '\000' '_' | tr 'gfdsahjklmtrewqyuiopnbvcx-' 'abcdefghijklmnopqrstuvwxy1' | sort -u -t '>' -k 1 | tr 'abcdefghijklmnopqrstuvwxy1' 'gfdsahjklmtrewqyuiopnbvcx-' | sed "s@\(.*\) -> \(.\).*@\2 | @" | while read CAR ; do if [ "$COL" == 0 ] ; then echo '' ; fi ; echo "$CAR" ; COL=`expr $COL + 1` ; if [ "$COL" == "$COLMAX" ] ; then COL=0 ; fi ; done ; echo '
' ) > rang1-2w.html
@@@ visualisation de la page
bash-3.00$ mozilla-firefox rang1-2w.html
@@@@@@ placer les listes de séquence de plus de deux caractères dans des tables avec les séquences en légende des cellules
@@@ version avec bords
bash-3.00$ for PRE in gfdsa hjklm trewq yuiop nbvcx ; do for SEC in gfdsa hjklm trewq yuiop nbvcx ; do ( COL=0 ; COLMAX=25 ; TABLE="Table wubizixing with more than two keys, starting with $PRE continuing with $SEC" ; echo ' '$TABLE' '$TABLE'
' ; cat rang3+w.ut8 | tr '\000' '_' | grep "^[$PRE] [$SEC]" | sed "s@\(.*\) -> \(.\).*@\2 | @" | while read CAR ; do if [ "$COL" == 0 ] ; then echo '' ; fi ; echo "$CAR" ; COL=`expr $COL + 1` ; if [ "$COL" == "$COLMAX" ] ; then COL=0 ; fi ; done ; echo '
' ) > rang3+w_${PRE}_${SEC}.html ; done ; done
@@@ version sans bords
bash-3.00$ for PRE in gfdsa hjklm trewq yuiop nbvcx ; do for SEC in gfdsa hjklm trewq yuiop nbvcx ; do ( COL=0 ; COLMAX=25 ; TABLE="Table wubizixing with more than two keys, starting with $PRE continuing with $SEC" ; echo ' '$TABLE' '$TABLE'
' ; cat rang3+w.ut8 | tr '\000' '_' | grep "^[$PRE] [$SEC]" | sed "s@\(.*\) -> \(.\).*@\2 | @" | while read CAR ; do if [ "$COL" == 0 ] ; then echo '' ; fi ; echo "$CAR" ; COL=`expr $COL + 1` ; if [ "$COL" == "$COLMAX" ] ; then COL=0 ; fi ; done ; echo '
' ) > rang3+w_${PRE}_${SEC}.html ; done ; done
@@@ visualisation des pages
bash-3.00$ for PRE in gfdsa hjklm trewq yuiop nbvcx ; do for SEC in gfdsa hjklm trewq yuiop nbvcx ; do mozilla-firefox rang3+w_${PRE}_${SEC}.html ; done ; done
@@@@@@ placer, dans plusieurs fichiers, les listes de toutes les séquences dans des tables numérotées avec les séquences en légende des cellules
@@@ version sans bords
bash-3.00$ ( export NUM_TABLE=1 ; ( echo '' ; echo "Wubizixing table $NUM_TABLE " ; echo ; COL=0 ; COLMAX=26 ; TABLE="Table $NUM_TABLE : wubizixing with one or two keys" ; echo $TABLE'
' ; cat rang1w.ut8 rang2w.ut8 | tr '\000' '_' | tr 'gfdsahjklmtrewqyuiopnbvcx-' 'abcdefghijklmnopqrstuvwxy1' | sort -u -t '>' -k 1 | tr 'abcdefghijklmnopqrstuvwxy1' 'gfdsahjklmtrewqyuiopnbvcx-' | sed "s@\(.*\) -> \(.\).*@\2 | @" | while read CAR ; do if [ "$COL" == 0 ] ; then echo '' ; fi ; echo "$CAR" ; COL=`expr $COL + 1` ; if [ "$COL" == "$COLMAX" ] ; then COL=0 ; fi ; done ; echo '
' ; echo ; echo '' ) > rang1-2w.html ; NUM_TABLE=`expr $NUM_TABLE + 1` ; for PRE in gfdsa hjklm trewq yuiop nbvcx ; do for SEC in gfdsa hjklm trewq yuiop nbvcx ; do ( echo '' ; echo "Wubizixing table $NUM_TABLE " ; echo ; COL=0 ; COLMAX=25 ; TABLE="Table $NUM_TABLE : wubizixing with more than two keys, starting with $PRE continuing with $SEC" ; echo $TABLE'
' ; cat rang3+w.ut8 | tr '\000' '_' | grep "^[$PRE] [$SEC]" | sed "s@\(.*\) -> \(.\).*@\2 | @" | while read CAR ; do if [ "$COL" == 0 ] ; then echo '' ; fi ; echo "$CAR" ; COL=`expr $COL + 1` ; if [ "$COL" == "$COLMAX" ] ; then COL=0 ; fi ; done ; echo '
' ; echo ; echo '' ) > rang3+w_${PRE}_${SEC}.html ; NUM_TABLE=`expr $NUM_TABLE + 1` ; done ; done )
@@@@@@ placer, dans un fichier, les listes de toutes les séquences dans des tables numérotées avec les séquences en légende des cellules
@@@ version sans bords
bash-3.00$ ( export NUM_TABLE=1 ; echo '' ; echo "Wubizixing tables " ; echo ; ( COL=0 ; COLMAX=26 ; TABLE="Table $NUM_TABLE : wubizixing with one or two keys" ; echo $TABLE'
' ; cat rang1w.ut8 rang2w.ut8 | tr '\000' '_' | tr 'gfdsahjklmtrewqyuiopnbvcx-' 'abcdefghijklmnopqrstuvwxy1' | sort -u -t '>' -k 1 | tr 'abcdefghijklmnopqrstuvwxy1' 'gfdsahjklmtrewqyuiopnbvcx-' | sed "s@\(.*\) -> \(.\).*@\2 | @" | while read CAR ; do if [ "$COL" == 0 ] ; then echo '' ; fi ; echo "$CAR" ; COL=`expr $COL + 1` ; if [ "$COL" == "$COLMAX" ] ; then COL=0 ; fi ; done ; echo '
' ) ; NUM_TABLE=`expr $NUM_TABLE + 1` ; for PRE in gfdsa hjklm trewq yuiop nbvcx ; do for SEC in gfdsa hjklm trewq yuiop nbvcx ; do ( COL=0 ; COLMAX=25 ; TABLE="Table $NUM_TABLE : wubizixing with more than two keys, starting with $PRE continuing with $SEC" ; echo $TABLE'
' ; cat rang3+w.ut8 | tr '\000' '_' | grep "^[$PRE] [$SEC]" | sed "s@\(.*\) -> \(.\).*@\2 | @" | while read CAR ; do if [ "$COL" == 0 ] ; then echo '' ; fi ; echo "$CAR" ; COL=`expr $COL + 1` ; if [ "$COL" == "$COLMAX" ] ; then COL=0 ; fi ; done ; echo '
' ) ; NUM_TABLE=`expr $NUM_TABLE + 1` ; done ; done ; echo ; echo '' ) > rang1+w_tables.html
@@@@@@ filtrer la page rang1+w_tables.html pour publication dans wikipedia
bash-3.00$ cat rang1+w_tables.html | egrep -v '^(||)' | sed -e 's///' -e 's/<\/tbody>//' -e 's/^\(Table[^<]*\)
/== \1 ==@/' | tr '@' '\012' > rang1+w_tables.html.wiki
@@@@@@ générer la table de pointeur à inserer dans le site
bash-3.00$ ls rang1-2w.html rang3+w_*.html | tr 'gfdsahjklmtrewqyuiopnbvcx' 'abcdefghijklmnopqrstuvwxy' | sort | tr 'abcdefghijklmnopqrstuvwxy' 'gfdsahjklmtrewqyuiopnbvcx' | while read FIC ; do grep Table $FIC | sed -e 's@^\([^<]*\).*@\1
@' -e "s/¤/$FIC/" ; done