From a3b76e82d935d78e41aa54c3228dbd6fb9e36fc1 Mon Sep 17 00:00:00 2001 From: Kévin Le Gouguec Date: Wed, 23 Feb 2022 20:29:50 +0100 Subject: Fix instructions HTMLization & tidy up Thank Humanity for linters. --- Makefile | 2 +- admin/feeds/build-feed.py | 12 ++++++++---- build-concerts.py | 15 ++++++++------- en/feed.xml | 42 +++++++++++++++++++++++++++--------------- feed.xml | 43 ++++++++++++++++++++++++++++--------------- helpers.py | 2 ++ 6 files changed, 74 insertions(+), 42 deletions(-) diff --git a/Makefile b/Makefile index 055daf8..ca01374 100644 --- a/Makefile +++ b/Makefile @@ -46,7 +46,7 @@ scripts_folders = $(call dirnames,$(scripts)) all: site -feeds: $(feeds_folders) +feeds: ./admin/feeds/build-feeds.sh $(feeds_src) upload: site diff --git a/admin/feeds/build-feed.py b/admin/feeds/build-feed.py index e835ad7..e010b63 100755 --- a/admin/feeds/build-feed.py +++ b/admin/feeds/build-feed.py @@ -70,10 +70,12 @@ def join(sequence, joiner_factory): result.append(item) if i == len(sequence): - return result + break result.append(joiner_factory()) + return result + def cdata_concert(concert, lang): formatters = DATE_FORMATTERS[lang] @@ -89,13 +91,15 @@ def cdata_concert(concert, lang): E.p(formatters['time'](concert.time)), )) + pieces = touchup_plaintext(concert.pieces) + instructions = touchup_plaintext(concert.instructions) + blocks.extend(( E.p(*join(concert.address.splitlines(), E.br)), E.ol( - *(XML(f'
  • {touchup_plaintext(p)}
  • ') - for p in concert.pieces.splitlines()) + *(XML(f'
  • {line}
  • ') for line in pieces.splitlines()) ), - *(E.p(line) for line in concert.instructions.splitlines()), + *(XML(f'

    {line}

    ') for line in instructions.splitlines()), )) # Do a silly dance to indent CDATA correctly. diff --git a/build-concerts.py b/build-concerts.py index 4f55f12..6e99673 100755 --- a/build-concerts.py +++ b/build-concerts.py @@ -2,7 +2,6 @@ from datetime import datetime from pathlib import Path -import re from sys import argv from helpers import ( @@ -71,17 +70,19 @@ THUMBNAIL_TEMPLATE = '''\ def format_credits(illustration): - credits = illustration.source_name + attribution = illustration.source_name if illustration.source_link is not None: - credits = (f'' - f'{illustration.source_name}' - '') + attribution = ( + f'' + f'{illustration.source_name}' + '' + ) if illustration.license_info is not None: - credits += ' / ' + illustration.license_info.format() + attribution += ' / ' + illustration.license_info.format() - return credits + return attribution def format_thumbnail(concert, imgdir, lang): diff --git a/en/feed.xml b/en/feed.xml index 02cdf81..72d5c8e 100644 --- a/en/feed.xml +++ b/en/feed.xml @@ -8,8 +8,8 @@ https://quatuorbellefeuille.com/images/logo.svg https://quatuorbellefeuille.com/en/concerts.html - 23 Feb 2022 10:27 +0100 - 23 Feb 2022 10:27 +0100 + 23 Feb 2022 20:28 +0100 + 23 Feb 2022 20:28 +0100 en October 5 2019 in Le Buisson de Cadouin @@ -23,7 +23,8 @@
  • Mendelssohn quartet No. 3, Op. 44 No. 1
  • Ravel string quartet
  • -

    Information and reservation: https://arcadesinfo.com/évènement/quatuor-a-cordes-bellefeuille/

    +

    Information and reservation: https://arcadesinfo.com/évènement/quatuor-a-cordes-bellefeuille/ +

    ]]>
    @@ -38,7 +39,8 @@
  • Chostakovitch quartet No. 11
  • Ravel string quartet
  • -

    Information and reservation: https://musiqueaucoeurdesbastides.jimdofree.com/

    +

    Information and reservation: https://musiqueaucoeurdesbastides.jimdofree.com/ +

    ]]>
    @@ -53,7 +55,8 @@
  • Beethoven quartet No. 7, Op. 59 No. 1
  • Free admission without reservation, subject to the number of available places.

    -

    For more information, please contact quatuorbellefeuille@gmail.com

    +

    For more information, please contact quatuorbellefeuille@gmail.com +

    ]]>
    @@ -67,7 +70,8 @@
  • Beethoven string trio Op. 9 No. 3
  • Free admission without reservation, subject to the number of available places.

    -

    For more information, please contact quatuorbellefeuille@gmail.com

    +

    For more information, please contact quatuorbellefeuille@gmail.com +

    ]]>
    @@ -83,7 +87,8 @@
  • Brahms quartet Op. 51 No. 2
  • Ravel string quartet
  • -

    Information and reservation: https://weekenddemusiqueclassique.fr

    +

    Information and reservation: https://weekenddemusiqueclassique.fr +

    ]]> 19 Mar 2021 16:00 +0100
    @@ -100,7 +105,8 @@
  • Beethoven quartet No. 7, Op. 59 No. 1
  • Free admission without reservation, subject to the number of available places.

    -

    For more information, please contact quatuorbellefeuille@gmail.com

    +

    For more information, please contact quatuorbellefeuille@gmail.com +

    ]]> 19 Mar 2021 16:00 +0100 @@ -115,7 +121,8 @@
  • Ravel string quartet
  • Free admission without reservation, subject to the number of available places.

    -

    For more information, please contact quatuorbellefeuille@gmail.com

    +

    For more information, please contact quatuorbellefeuille@gmail.com +

    ]]> @@ -129,7 +136,8 @@
  • Bartók quartet No. 2
  • Free admission without reservation, subject to the number of available places.

    -

    For more information, please contact quatuorbellefeuille@gmail.com

    +

    For more information, please contact quatuorbellefeuille@gmail.com +

    ]]>
    @@ -144,7 +152,8 @@
  • Schubert quartettsatz
  • Brahms quartet Op. 51 No. 2
  • -

    For more information, please refer to: https://www.ledimoredelquartetto.eu/en/october-25-2021-le-grand-mello-mello-france/

    +

    For more information, please refer to: https://www.ledimoredelquartetto.eu/en/october-25-2021-le-grand-mello-mello-france/ +

    ]]>
    @@ -159,7 +168,8 @@
  • Brahms quartet Op. 51 No. 2
  • Ravel string quartet
  • -

    For more information, please refer to: https://www.ledimoredelquartetto.eu/en/october-28-2021-casa-st-germain-des-pres-paris/

    +

    For more information, please refer to: https://www.ledimoredelquartetto.eu/en/october-28-2021-casa-st-germain-des-pres-paris/ +

    ]]>
    @@ -175,7 +185,8 @@
  • Beethoven quartet No. 7, Op. 59 No. 1
  • Free admission without reservation, subject to the number of available places.

    -

    For more information, please contact quatuorbellefeuille@gmail.com

    +

    For more information, please contact quatuorbellefeuille@gmail.com +

    ]]> 23 Nov 2021 23:28 +0100
    @@ -191,7 +202,8 @@
  • Schubert quartettsatz
  • Ravel string quaret
  • -

    For more information, please refer to: https://www.ledimoredelquartetto.eu/en/december-31-2021-grand-bigard-castle-brussels-belgium/

    +

    For more information, please refer to: https://www.ledimoredelquartetto.eu/en/december-31-2021-grand-bigard-castle-brussels-belgium/ +

    ]]> @@ -208,7 +220,7 @@
  • Shostakovich quartet
  • Free admission, subject to the number of available places.

    -

    Contact info@pianorium.fr to make a reservation.

    +

    Contact info@pianorium.fr to make a reservation.

    ]]>
    diff --git a/feed.xml b/feed.xml index 2e69710..026e284 100644 --- a/feed.xml +++ b/feed.xml @@ -8,8 +8,8 @@ https://quatuorbellefeuille.com/images/logo.svg https://quatuorbellefeuille.com/concerts.html - 23 Feb 2022 10:27 +0100 - 23 Feb 2022 10:27 +0100 + 23 Feb 2022 20:27 +0100 + 23 Feb 2022 20:27 +0100 fr 5 octobre 2019 à Le Buisson de Cadouin @@ -23,7 +23,8 @@
  • Mendelssohn quatuor n°3, op.44 n°1
  • Ravel quatuor à cordes
  • -

    Informations et réservations : https://arcadesinfo.com/évènement/quatuor-a-cordes-bellefeuille/

    +

    Informations et réservations : https://arcadesinfo.com/évènement/quatuor-a-cordes-bellefeuille/ +

    ]]>
    @@ -38,7 +39,8 @@
  • Chostakovitch quatuor n°11
  • Ravel quatuor à cordes
  • -

    Informations et réservations : https://musiqueaucoeurdesbastides.jimdofree.com/

    +

    Informations et réservations : https://musiqueaucoeurdesbastides.jimdofree.com/ +

    ]]>
    @@ -53,7 +55,8 @@
  • Beethoven quatuor n°7, op.59 n°1
  • Entrée libre sans réservation dans la limite des places disponibles.

    -

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com

    +

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com +

    ]]>
    @@ -67,7 +70,8 @@
  • Beethoven trio à cordes op.9 n°3
  • Entrée libre sans réservation, dans la limite des places disponibles.

    -

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com

    +

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com +

    ]]>
    @@ -83,7 +87,8 @@
  • Brahms quatuor op.51 n°2
  • Ravel quatuor à cordes
  • -

    Informations et réservations : https://weekenddemusiqueclassique.fr

    +

    Informations et réservations : https://weekenddemusiqueclassique.fr +

    ]]> 19 Mar 2021 16:00 +0100
    @@ -100,7 +105,8 @@
  • Beethoven quatuor n°7, op.59 n°1
  • Entrée libre sans réservation, dans la limite des places disponibles.

    -

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com

    +

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com +

    ]]> 19 Mar 2021 16:00 +0100 @@ -115,7 +121,8 @@
  • Ravel quatuor à cordes
  • Entrée libre sans réservation, dans la limite des places disponibles.

    -

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com

    +

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com +

    ]]> @@ -129,7 +136,8 @@
  • Bartók quatuor n°2
  • Entrée libre sans réservation, dans la limite des places disponibles.

    -

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com

    +

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com +

    ]]>
    @@ -144,7 +152,8 @@
  • Schubert quartettsatz
  • Brahms quatuor op.51 n°2
  • -

    Pour plus d'informations, rendez-vous sur : https://www.ledimoredelquartetto.eu/en/october-25-2021-le-grand-mello-mello-france/

    +

    Pour plus d'informations, rendez-vous sur : https://www.ledimoredelquartetto.eu/en/october-25-2021-le-grand-mello-mello-france/ +

    ]]>
    @@ -159,7 +168,8 @@
  • Brahms quatuor op.51 n°2
  • Ravel quatuor à cordes
  • -

    Pour plus d'informations, rendez-vous sur : https://www.ledimoredelquartetto.eu/en/october-28-2021-casa-st-germain-des-pres-paris/

    +

    Pour plus d'informations, rendez-vous sur : https://www.ledimoredelquartetto.eu/en/october-28-2021-casa-st-germain-des-pres-paris/ +

    ]]>
    @@ -175,7 +185,8 @@
  • Beethoven quatuor n°7, op.59 n°1
  • Entrée libre sans réservation dans la limite des places disponibles.

    -

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com

    +

    Pour plus d'informations, merci de contacter : quatuorbellefeuille@gmail.com +

    ]]> 23 Nov 2021 23:28 +0100
    @@ -191,7 +202,8 @@
  • Schubert quartettsatz
  • Ravel quatuor à cordes
  • -

    Pour plus d'informations, rendez-vous sur : https://www.ledimoredelquartetto.eu/en/december-31-2021-grand-bigard-castle-brussels-belgium/

    +

    Pour plus d'informations, rendez-vous sur : https://www.ledimoredelquartetto.eu/en/december-31-2021-grand-bigard-castle-brussels-belgium/ +

    ]]> @@ -208,7 +220,8 @@
  • Chostakovitch quatuor
  • Entrée libre dans la limite des places disponibles.

    -

    Réservation possible à l'adresse suivante : info@pianorium.fr

    +

    Réservation possible à l'adresse suivante : info@pianorium.fr +

    ]]>
    diff --git a/helpers.py b/helpers.py index a6c4de2..11a13ca 100644 --- a/helpers.py +++ b/helpers.py @@ -43,6 +43,7 @@ _LICENSE_RE = re.compile( '('+'|'.join(_LICENSE_URLS.keys())+')' + ' ([0-9.]+)' ) + @dataclass class LicenseInfo: tag: str @@ -103,6 +104,7 @@ class Concert: def _optional(line): return f'(?:{line})?' + _CONCERT_LINES = ( r'QUAND : (?P