...
|
...
|
@@ -353,7 +353,8 @@ OPTS=$( getopt -l no-db-update,\
|
353
|
353
|
conf:,\
|
354
|
354
|
database:,\
|
355
|
355
|
progrès-génération:\
|
356
|
|
- progrès-update: \
|
|
356
|
+ progrès-update:,\
|
|
357
|
+ help \
|
357
|
358
|
-- "$@" )
|
358
|
359
|
|
359
|
360
|
eval set --$OPTS
|
...
|
...
|
@@ -361,47 +362,61 @@ eval set --$OPTS
|
361
|
362
|
while [[ $# -gt 0 ]]; do
|
362
|
363
|
case "$1" in
|
363
|
364
|
"--no-db-update")
|
|
365
|
+#|ne met pas à jour la base de données
|
364
|
366
|
no_db_update=$true_flag;;
|
365
|
367
|
"--db-update-only")
|
|
368
|
+#|ne génère pas de fichier de résultat
|
366
|
369
|
db_update_only=$true_flag;;
|
367
|
370
|
"--cible")
|
|
371
|
+#<nom court du groupe>|génère un comparatif pour ce groupe (par défaut LREM)
|
368
|
372
|
groupe="${2^^}"
|
369
|
373
|
shift;;
|
370
|
374
|
"--ref")
|
|
375
|
+#<nom court du groupe>|compare avec ce groupe (par défaut GDR)
|
371
|
376
|
groupe_ref="${2^^}"
|
372
|
377
|
shift;;
|
373
|
378
|
"--député")
|
|
379
|
+#<nom>|filtre la cible sur un-e député-e sur le groupe cible (par défaut LREM). <nom> est insensible à la casse. Tout ou partie du nom ou du prénom peut être donné, espace compris. Caractère % utilisé comme caractère joker. Si aucune correspondance n'est trouvée avec un-e député-é, sortie en erreur. Si plusieurs député-e-s correspondent la liste est affichée et sortie en erreur.
|
374
|
380
|
depute=$true_flag
|
375
|
381
|
nom="$2"
|
376
|
382
|
shift;;
|
377
|
383
|
"--premier-scrutin")
|
|
384
|
+#<numéro>|commence la génération du résultat à partir du scrutin <numéro>
|
378
|
385
|
no_db_update=$true_flag
|
379
|
386
|
first="$2"
|
380
|
387
|
shift;;
|
381
|
388
|
"--dernier-scrutin")
|
|
389
|
+#<numéro>|termine la génération du résultat au scrutin <numéro>
|
382
|
390
|
no_db_update=$true_flag
|
383
|
391
|
last="$2"
|
384
|
392
|
shift;;
|
385
|
393
|
"--période")
|
|
394
|
+#<jj/mm/aaaa:JJ/MM/AAAA>|génère un résultat pour les scrutins allant de jj/mm/aaaa à JJ/MM/AAAA
|
386
|
395
|
periode=$true_flag
|
387
|
396
|
no_db_update=$true_flag
|
388
|
397
|
periode_value="$2"
|
389
|
398
|
shift;;
|
390
|
399
|
"--liste-députés-du-groupe")
|
|
400
|
+#<nom court du groupe>|liste les député-e-s du groupe <nom court du groupe> sur la mandature
|
391
|
401
|
liste_deputes=$true_flag
|
392
|
402
|
liste_deputes_value="${2^^}"
|
393
|
403
|
shift;;
|
394
|
404
|
"--liste-députés")
|
|
405
|
+#|liste tou-te-s les député-e-s de la mandature
|
395
|
406
|
liste_deputes=$true_flag;;
|
396
|
407
|
"--liste-dossiers")
|
|
408
|
+#|affiche une liste numérotée des dossiers et sort
|
397
|
409
|
liste_dossiers=$true_flag;;
|
398
|
410
|
"--dossier")
|
|
411
|
+#<numéro>|génère un résultat pour le dossier numéroté <numéro>
|
399
|
412
|
dossier=$true_flag
|
400
|
413
|
dossier_value="$2"
|
401
|
414
|
shift;;
|
402
|
415
|
"--dossiers")
|
|
416
|
+#|sélection interactive du dossier
|
403
|
417
|
dossier=$true_flag;;
|
404
|
418
|
"--conf")
|
|
419
|
+#<fichier>|indique le chemin vers le fichier de configuration. Par défaut "{_}.conf"
|
405
|
420
|
test -r "$2" || {
|
406
|
421
|
echo "config introuvable $2" >&2
|
407
|
422
|
options_error=$true_flag
|
...
|
...
|
@@ -409,6 +424,7 @@ while [[ $# -gt 0 ]]; do
|
409
|
424
|
config_file="$2"
|
410
|
425
|
shift;;
|
411
|
426
|
"--database")
|
|
427
|
+#<fichier>|indique le chemin vers la base de données SQLite3 contenant les informations. Par défaut "{_}.db"
|
412
|
428
|
test -r "$2" && file -b "$2" | grep -q '^SQLite 3.x database' || {
|
413
|
429
|
echo "erreur sur option database: fichier '$2' introuvable ou pas une base SQLite 3" >&2
|
414
|
430
|
options_error=$true_flag
|
...
|
...
|
@@ -416,11 +432,23 @@ while [[ $# -gt 0 ]]; do
|
416
|
432
|
database="$2"
|
417
|
433
|
shift;;
|
418
|
434
|
"--progrès-génération")
|
|
435
|
+#<chiffre>|affiche de la progression de la génération du fichier tous les <chiffre>%. Par défaut 5
|
419
|
436
|
generation_progress="$2"
|
420
|
437
|
shift;;
|
421
|
438
|
"--progrès-update")
|
|
439
|
+#<chiffre>|affiche de la progression de la mise à jour de la base de données tous les <chiffre>%. Par défaut 1
|
422
|
440
|
update_progress="$2"
|
423
|
441
|
shift;;
|
|
442
|
+ "--help")
|
|
443
|
+#|affiche cette aide et quitte
|
|
444
|
+ echo "$0 [options]"
|
|
445
|
+ echo "génère un classeur ODS pour comparer les scrutins publics de la 15ème mandature à l'Assemblée Nationale"
|
|
446
|
+ echo
|
|
447
|
+ sed -rn '/^ *"--.+"\)/N; s/^ *"(--.+)"\)\n#(.+)$/\1|\2/p' "$0" \
|
|
448
|
+ | awk -F'|' -v marge=' ' -v prog="$0" '{
|
|
449
|
+ printf("%s %s\n" marge "%s\n\n", $1, $2, gensub("\\. ", "\\\n" marge, "g", gensub("\\{_\\}", prog, "g", $3)))
|
|
450
|
+ }'
|
|
451
|
+ exit;;
|
424
|
452
|
esac
|
425
|
453
|
shift
|
426
|
454
|
done
|