fix template include for article

This commit is contained in:
Tykayn 2025-05-13 00:13:57 +02:00 committed by tykayn
parent a473479b83
commit 9ab4b98c1d
30 changed files with 115 additions and 87 deletions

View file

@ -52,7 +52,7 @@ except FileNotFoundError:
print(f"Impossible de trouver le fichier {json_file}")
exit(1)
except Exception as e:
print(f"Erreur lors de la lecture du fichier {json_file}: {e}")
print(f"gather tags in json: Erreur lors de la lecture du fichier {json_file}: {e}")
exit(1)
def find_org_files(directory):
@ -111,14 +111,6 @@ def generate_html_pages_for_all_tags(tag_to_files, html_output_folder):
sorted_tags = sorted(tag_to_files.items())
for tag, files in sorted_tags:
print('------------ tag', tag, len(files))
print('Files pour ce tag:', files)
print('Clés disponibles dans articles_info:', list(articles_info.keys())[:5], '...')
# Afficher un exemple détaillé de non-correspondance
for f in files:
if f not in articles_info:
print(f"Fichier non trouvé dans articles_info: {f}")
# Préparer les données pour le template
data = {

View file

@ -23,13 +23,13 @@ start_time = time.time()
# Configurer argparse pour prendre le blog en argument
parser = argparse.ArgumentParser(description='Générer une liste des derniers articles de blog.')
parser.add_argument('blog', type=str, help='Nom du dossier du blog à traiter', default='cipherbliss_blog')
parser.add_argument('--run_gemini', type=str, help='Activer ou non la génération des billets gemini', default=True)
parser.add_argument('--run_pandoc', type=str, help='Activer ou non la génération des fichiers html', default=True)
parser.add_argument('--enable_roam_id_rewrite', type=str, help='Activer ou non la réécriture des liens roam', default=False)
parser.add_argument('--generate_html_pages', type=str, help='Activer ou non la génération des pages html', default=True)
parser.add_argument('--generate_linkings_json', type=str, help='Activer ou non la génération du json des liens entre articles', default=True)
parser.add_argument('--force_html_regen', action='store_true', help='Forcer la régénération des fichiers HTML même s\'ils existent déjà', default=False)
parser.add_argument('--rebuild_articles_info_json', type=str, help='Reconstruire le fichier de données JSON des articles', default=False)
parser.add_argument('--run_gemini', type=bool, help='Activer ou non la génération des billets gemini', default=True)
parser.add_argument('--run_pandoc', type=bool, help='Activer ou non la génération des fichiers html', default=True)
parser.add_argument('--enable_roam_id_rewrite', type=bool, help='Activer ou non la réécriture des liens roam', default=False)
parser.add_argument('--generate_html_pages', type=bool, help='Activer ou non la génération des pages html', default=True)
parser.add_argument('--generate_linkings_json', type=bool, help='Activer ou non la génération du json des liens entre articles', default=True)
parser.add_argument('--force_html_regen', type=bool, help='Forcer la régénération des fichiers HTML même s\'ils existent déjà', default=False)
parser.add_argument('--rebuild_articles_info_json', type=bool, help='Reconstruire le fichier de données JSON des articles', default=False)
args = parser.parse_args()
run_gemini = args.run_gemini
@ -191,6 +191,8 @@ if generate_linkings_json :
# Vérifier si l'article doit être reconstruit
file_modified_time = os.path.getmtime(file_path)
rebuild_this_article_gemini = file_modified_time > last_gemini_build_time
if rebuild_this_article_gemini:
print("le dernier build gemini est plus ancien que la dernière modification de la source, on le rebuild")
except Exception as e:
print(f"Erreur lors de la vérification des dates pour {gemini_path}: {e}")
rebuild_this_article_gemini = True
@ -238,7 +240,7 @@ if generate_linkings_json :
if len(files_dict[slug_with_year]['html_content_without_h1']) > 0 :
html_content_without_h1 = files_dict[slug_with_year]['html_content_without_h1']
else:
print('========= pas de contenu html existant: ', title)
print('========= pas de contenu html existant: ', title , '|on le génère|',slug_with_year)
print(f"\033[91m {time.strftime('%H:%M:%S')} BRRRRRRRRRRRRR pandoc html_content : {title} en html\033[0m")
pandoc_runs_counter += 1
html_content = pypandoc.convert_text(content_without_h1, 'html', format='org')
@ -247,13 +249,13 @@ if generate_linkings_json :
if run_pandoc and rebuild_this_article_html or force_html_regen:
print(f"run_pandoc: {run_pandoc}")
print(f"rebuild_this_article_html: {rebuild_this_article_html}")
print(f"force_html_regen: {force_html_regen}")
# print(f"run_pandoc: {run_pandoc}")
# print(f"rebuild_this_article_html: {rebuild_this_article_html}")
# print(f"force_html_regen: {force_html_regen}")
# convertir le contenu d'article org vers html
print(f"\033[91m {time.strftime('%H:%M:%S')} BRRRRRRRRRRRRR pandoc : {title} en html\033[0m")
# print(f"\033[91m.\033[0m", end='', flush=True)
if not html_content:
print(f"\033[91m {time.strftime('%H:%M:%S')} BRRRRRRRRRRRRR pandoc : {title} en html\033[0m")
html_content = pypandoc.convert_text(content_without_h1, 'html', format='org')
html_content_without_h1 = re.sub(r'<h1>.*?</h1>', '', html_content)
pandoc_runs_counter += 1
@ -435,8 +437,11 @@ Dernière mise à jour: {dt.datetime.now().strftime('%Y-%m-%d, %H:%M:%S')}
=> tags.gmi Tags
-----------------------------------------------
{template_content['SOUTIEN']}
-----------------------------------------------
{template_content['WEBSITE_GENERATOR_DESCRIPTION']}
{template_content['WEBSITE_GENERATOR']}
"""
@ -535,7 +540,7 @@ def generate_article_pages(json_file, template_file, output_dir):
print(f"\033[94m Nombre d'articles gemini générés : {counter_gemini}\033[0m")
return
except IOError as e:
print(f"Erreur lors de la lecture du fichier {json_file}: {e}")
print(f"linking articles prev next: Erreur lors de la lecture du fichier {json_file}: {e}")
sys.exit(1)
except Exception as e:
print(f"Erreur inattendue lors de la lecture du fichier {json_file}: {e}")

View file

@ -7,7 +7,11 @@ sass templates/styles_src/style_general.scss templates/styles/style_general.css
echo "copier le style général et le js principal vers html-websites pour chaque site"
for i in $(ls html-websites); do
for i in $(ls sources); do
if [ -d "html-websites/$i" ]; then
cp templates/styles/style_general.css html-websites/$i/style.css
cp templates/js/main_script.js html-websites/$i/main_script.js
fi
done
echo "c'est fait!"

View file

@ -29,7 +29,7 @@ raconte pourquoi les femmes sont encore bien trop mises à l'écart des
corps de métier.
<<player>>
https://www.youtube.com/watch?v=FEeTLopLkEo
* Une erreur s'est produite.

View file

@ -19,7 +19,7 @@
#+retrieved_from_db_at: <2024-11-18 16:25:08>
* comment se délester de la charge mentale
* Comment se délester de la charge mentale
:PROPERTIES:
:CUSTOM_ID: comment-se-délester-de-la-charge-mentale
:END:
@ -463,12 +463,17 @@ intéressent. 
:END:
Et si c'était les évènements qui se rappelaient à
nous au bon moment, au lieu d'avoir tout le temps à y
penser?[[https://www.cipherbliss.com/wp-content/uploads/2017/11/odgn4Ry_700wa_0.jpg][https://www.cipherbliss.com/wp-content/uploads/2017/11/odgn4Ry_700wa_0.jpg]]Beaucoup
de gens ont un smartphone, mais assez peu utilisent des agendas
penser?
[[https://www.cipherbliss.com/wp-content/uploads/2017/11/odgn4Ry_700wa_0.jpg][https://www.cipherbliss.com/wp-content/uploads/2017/11/odgn4Ry_700wa_0.jpg]]
Beaucoup de gens ont un smartphone, mais assez peu utilisent des agendas
numériques sur leur téléphone. C'est bien dommage. Alors créez un agenda
numérique et faites en sorte de le partager avec votre conjoint de sorte
que lui/elle aussi puisse le mettre à jour sur des choses qui vous
concernent tous les deux. les options de partage se trouvent dans les
concernent tous les deux.
les options de partage se trouvent dans les
propriétés d'agenda, sur google calendar et d'autres c'est
pareil.Comme ça vous n'aurez pas en plus à penser à
rappeler à l'autre que vous avez des choses qui arrivent
@ -476,15 +481,14 @@ bientôt.Votre smartphone se chargera pour vous de ce
boulot de rappel. Vous venez d'avoir rendez-vous avec votre médecin et
il vous propose de vous revoir dans trois mois? Notez-le tout de suite
dans votre agenda. Votre chat doit se faire revisiter tous les ans?
faites un évènement récurrent.Faites plusieurs
agendas afin de ne pas polluer votre partenaire de notifications qui ne
le concernent pas.Ne mettez pas vos réunions de
boulot dans votre agenda partagé.Mais c'est un bon
endroit pour prévoir de recevoir des amis ou de partir en
vacances.Créez un agenda spécifique à la gestion des
RDV et évènements relatifs à vos enfants, que vous pourrez partager
également. Utiliser DES agendas évite énormément de charge mentale
inutile.
faites un évènement récurrent.
Faites plusieurs agendas afin de ne pas polluer votre partenaire de notifications qui ne le concernent pas.
Ne mettez pas vos réunions de boulot dans votre agenda partagé.Mais c'est un bon endroit pour prévoir de recevoir des amis ou de partir en
vacances.
Créez un agenda spécifique à la gestion des RDV et évènements relatifs à vos enfants, que vous pourrez partager également. Utiliser DES agendas évite énormément de charge mentale inutile.
*** Pour les tâches n'ayant pas spécialement de date, utiliser un tableau kanban

View file

@ -265,11 +265,6 @@ roulez jeunesse.
[[https://www.cipherbliss.com/wp-content/uploads/2021/05/vorta.png]]
 
 
Plus qu'a attendre quelques minutes ou heures selon le volume de trucs à
sauvegarder et la force de compression que vous avez choisi.

View file

@ -1,7 +1,7 @@
#+title: jeux-de-données-sur-datagouv
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: jeux-de-données-sur-datagouv
#+post_url: https://www.ciperbliss.com/2024/jeux-de-données-sur-datagouv
#+post_title: Jeux de données sur DataGouv
#+post_tags:

View file

@ -1,7 +1,7 @@
#+title: julia-de-l'ign---elles-font-le-libre---sotmfr-2024
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: julia-de-l'ign---elles-font-le-libre---sotmfr-2024
#+post_url: https://www.ciperbliss.com/2024/julia-de-l'ign---elles-font-le-libre---sotmfr-2024
#+post_title: Julia de l'IGN - Elles font le libre - sotmfr 2024
#+post_tags: sotm, ign, open-data

View file

@ -1,7 +1,7 @@
#+title: stitching-de-photo-gopro-fusion-pour-panoramax
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: stitching-de-photo-gopro-fusion-pour-panoramax
#+post_url: https://www.ciperbliss.com/2024/stitching-de-photo-gopro-fusion-pour-panoramax
#+post_title: Stitching de photo gopro fusion pour Panoramax
#+post_tags: panoramax, hugin, gopro, photo, 360

View file

@ -1,7 +1,7 @@
#+title: julie-de-la-fabrique-des-mobilités-elles-font-le-libre
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: julie-de-la-fabrique-des-mobilités-elles-font-le-libre
#+post_url: https://www.ciperbliss.com/2024/julie-de-la-fabrique-des-mobilités-elles-font-le-libre
#+post_title: Julie de la fabrique des mobilités - Elles font le libre
#+post_tags: openstreetmap, transport, sotm

View file

@ -1,7 +1,7 @@
#+title: dépasser-la-spécialisation
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: dépasser-la-spécialisation
#+post_url: https://www.ciperbliss.com/2024/dépasser-la-spécialisation
#+post_title: dépasser la spécialisation
#+post_tags: information, médias, internet, médias sociaux, mastodon

View file

@ -1,7 +1,7 @@
#+title: critères-de-qualité-de-votre-plan-de-sauvegarde
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: critères-de-qualité-de-votre-plan-de-sauvegarde
#+post_url: https://www.ciperbliss.com/2025/critères-de-qualité-de-votre-plan-de-sauvegarde
#+post_title: Critères de qualité de votre plan de sauvegarde
#+post_tags: backup, chiffrement

View file

@ -27,19 +27,19 @@ https://forge.chapril.org/tykayn/wololo
Vous pouvez par exemple voir ce que cela donne sur le jeu de données Data Gouv des bornes de recharge pour véhicules électriques qui contient une cinquantaine de propriétés différentes:
#+begin_src bash
#+BEGIN_SRC bash
git clone https://forge.chapril.org/tykayn/wololo
cd wololo
npm install
make irve
#+end_src
#+END_SRC
Le makefile permet de lancer des scripts prédéfinis sur le point d'entrée principal du projet, du Nodejs écrit en TypeScript à qui on donne un fichier à convertir et une configuration de conversion.
#+begin_src bash
#+BEGIN_SRC bash
ts-node convert_to_osm_tags.ts
#+end_src
#+END_SRC
Vous avez le fichier geojson qui a suivi les conversions selon le Mapper IRVE, et celui ci contient des tags OpenStreetMap. Ça se passe par ici:
https://forge.chapril.org/tykayn/wololo/src/branch/main/mappings/converters/configIRVE.ts
@ -185,7 +185,7 @@ Le projet Wololo permet aussi d'appliquer des conversions sur des geojson issus
https://osmose.openstreetmap.fr
* Extraction de données depuis OpenStreetMap
** Extraction de données depuis OpenStreetMap
On peut faire des extractions thématiques sur des données OpenStreetMap un peu à la façon Geodatamine.
https://geodatamine.fr/

View file

@ -66,8 +66,11 @@ https://www.cipherbliss.com/2025/contribuer-%c3%a0-un-projet-libre/
Avant d'aller vraiment modifier une analyse, on va faire tourner le projet sur son propre ordi et voir ce qui se passe dans une analayse simple.
** Analyser une zone localement
Disons que l'on veut modifier le Merger "merge_charging_station_FR", et que l'on veut voir ce que donne nos modifications en lançant une analyse. Pour éviter que cela prenne toute la journée, nous allons restreindre le champ d'analyse au patelin perdu de Monaco.
Après une installation locale avec docker-compose du dépot osmose-backend, nous pouvons lancer cette commande qui va demander au point d'entrée principal de faire marcher l'analyse "merge_charging_station_FR" sur la zone "monaco", sans supprimer les données en base si elles existent déjà:
Disons que l'on veut modifier le Merger `merge_charging_station_FR`, et que l'on veut voir ce que donne nos modifications en lançant une analyse. Pour éviter que cela prenne toute la journée, nous allons restreindre le champ d'analyse au patelin perdu de Monaco.
Après une installation locale avec docker-compose du dépot osmose-backend, nous pouvons lancer cette commande qui va demander au point d'entrée principal de faire marcher l'analyse `merge_charging_station_FR` sur la zone `monaco`, sans supprimer les données en base si elles existent déjà:
#+BEGIN_SRC shell
# je vous passe l'installation de docker et docker-compose

View file

@ -5,7 +5,7 @@
#+title: Rétrospective de blogs
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: rétrospective-de-blogs
#+post_url: https://www.ciperbliss.com/2025/rétrospective-de-blogs
#+post_title: Rétrospective de blogs
#+post_tags: blog, orgmode, gemini, python, bash, dessin

View file

@ -5,7 +5,7 @@
#+title: Stratégie de mitigation de laccident de fusion du cœur sur lEPR
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: stratégie-de-mitigation-de-laccident-de-fusion-du-cœur-sur-lepr
#+post_url: https://www.ciperbliss.com/2025/stratégie-de-mitigation-de-laccident-de-fusion-du-cœur-sur-lepr
#+post_title: Stratégie de mitigation de laccident de fusion du cœur sur lEPR
#+post_tags: nucléaire, fusion, EPR, corium, core catcher

View file

@ -1,7 +1,7 @@
#+title: les-récits-de-jeanine-chapitre-4
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-4
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-4
#+post_title: Les récits de Jeanine - chapitre 4
#+post_tags: récit

View file

@ -1,7 +1,7 @@
#+title: les-récits-de-jeanine-chapitre-5
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-5
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-5
#+post_title: Les récits de Jeanine - chapitre 5
#+post_tags: récit

View file

@ -1,7 +1,7 @@
#+title: les-récits-de-jeanine-chapitre-6
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-6
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-6
#+post_title: Les récits de Jeanine - chapitre 6
#+post_tags: récit

View file

@ -1,7 +1,7 @@
#+title: les-récits-de-jeanine-chapitre-7
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-7
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-7
#+post_title: Les récits de Jeanine - chapitre 7
#+post_tags:

View file

@ -1,7 +1,7 @@
#+title: les-récits-de-jeanine-chapitre-12
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-12
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-12
#+post_title: Les récits de Jeanine - chapitre 12
#+post_tags:

View file

@ -1,7 +1,7 @@
#+title: les-récits-de-jeanine-chapitre-13
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-13
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-13
#+post_title: Les récits de Jeanine - chapitre 13
#+post_tags:

View file

@ -1,7 +1,7 @@
#+title: les-récits-de-jeanine-chapitre-14
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-14
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-14
#+post_title: Les récits de Jeanine - chapitre 14
#+post_tags:

View file

@ -1,7 +1,7 @@
#+title: les-récits-de-jeanine-chapitre-15
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-15
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-15
#+post_title: Les récits de Jeanine - chapitre 15
#+post_tags:

View file

@ -1,7 +1,7 @@
#+title: les-récits-de-jeanine-chapitre-16
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-16
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-16
#+post_title: Les récits de Jeanine - chapitre 16
#+post_tags:

View file

@ -1,10 +1,10 @@
#+title: les-récits-de-jeanine-chapitre-17
#+post_ID:
#+post_slug: organisation-de-taches-orgmode
#+post_slug: les-récits-de-jeanine-chapitre-17
#+post_url: https://www.ciperbliss.com/2024/les-récits-de-jeanine-chapitre-17
#+post_title: Les récits de Jeanine - chapitre 17
#+post_tags:
#+post_tags: récits
#+post_type: post
#+post_mime_types:
#+post_guid:

View file

@ -1,7 +1,4 @@
{% include 'site_head.j2' %}
{% include 'templates/html/site_head.html.j2' %}
<body>

View file

@ -48,12 +48,17 @@ h6 {
line-height: 1.3em;
}
.article-title,
hr + h1 {
margin-top: 5rem;
border-left: 3px solid gray;
padding-left: 3rem;
margin-left: -4rem;
}
h1:first-letter {
text-transform: uppercase;
font-size: 4.5rem;
}
h1 {
@ -138,6 +143,8 @@ p {
text-wrap: pretty;
margin-top: 1.5rem;
margin-bottom: 1rem;
font-size: 1.25rem;
line-height: 1.75rem;
}
#root,
@ -315,6 +322,12 @@ q {
margin-right: 1rem;
}
.site-foot-soutien {
font-size: 0.8rem;
width: 75ch;
max-width: calc(100vw - 6rem);
}
@media (max-width: 75ch) {
body {
padding: 0;

View file

@ -1 +1 @@
{"version":3,"sourceRoot":"","sources":["../styles_src/style_general.scss","../styles_src/_variables.scss"],"names":[],"mappings":";AAAA;AAGA;EACE;EACA;EACA;;AAEA;EAEE;;;AAIJ;EACE,WCCe;EDAf,aCoBiB;;;ADjBnB;EACE;EACA,WCJe;EDKf;EACA,OCtBW;EDuBX,YCtBiB;EDuBjB;EACA,gBCGW;;;ADAb;AAAA;AAAA;AAAA;EAIE,WClBoB;EDmBpB;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;EAME,aCNoB;EDOpB,YCjBW;EDkBX,eChBW;EDiBX,OC3Cc;ED4Cd;EACA;EACA;EACA,aC3BoB;;;AD8BtB;EACE,YCxBW;;;AD2Bb;EACE;;;AAGF;EACE,OC1DiB;ED2DjB,WC5Ca;ED6Cb;;;AAGF;EACE,WChDa;EDiDb;;;AAGF;EACE,WCpDa;EDqDb;;;AAGF;EACE,WC5DkB;ED6DlB;;AAEA;AAAA;AAAA;AAAA;AAAA;EAKE,OCxEY;EDyEZ;EACA,YC7DS;ED8DT,eC9DS;ED+DT;;;AAIJ;AAAA;EAEE;;;AAIF;EACE;EACA,eCrEiB;EDsEjB,OClGW;EDmGX;EACA,SC9EW;;ADgFX;EACE,YCjGkB;EDkGlB,OCxGS;;AD0GT;EACE,OC3GO;;AD+GX;EAEE;EACA;EACA,cC7FS;ED8FT,eC9FS;;ADiGX;EACE;EACA;;;AAIJ;EACE,YC1Fe;;AD4Ff;EACE;EACA,YC/Fe;;;ADmGnB;AAAA;AAAA;AAAA;EAIE;;;AAGF;EACE;EACA;EACA,YCzHW;ED0HX,eC3HW;;;AD8Hb;AAAA;EAEE;;;AAGF;EACE;EACA;;;AAGF;EACE,eCzIW;;AD2IX;EACE;;AAGF;EACE;EACA,cCjJS;;;ADsJb;EACE;;;AAGF;EACE;EACA;;;AAIA;EACE;;;AAKF;EACE,OCrKS;EDsKT,QCtKS;EDuKT,cCzKS;;AD4KX;EACE;EACA;;;AAIJ;EACE,YClLW;EDmLX,eCnLW;EDoLX;;AAEA;EACE;EACA,SC1LS;ED2LT;EACA,eCtLe;;;AD0LnB;EACE;;AAEA;EACE;EACA;EACA;EACA;EACA,SCvMS;;;AD2Mb;EACE;EACA,SC7MW;ED8MX;EACA;;;AAGF;AAAA;EAEE,QCpNW;EDqNX,OC9OiB;ED+OjB;;;AAGF;EACE,YC7Oc;;;ADgPhB;EACE,YCvPiB;EDwPjB,SC3NkB;ED4NlB;EACA,YCjOW;EDkOX,eC5NiB;ED6NjB;;AAEA;EACE;;;AAIJ;EACE;EACA,SC1OW;ED2OX,YClQgB;EDmQhB,OClQkB;;;ADqQpB;EACE,OC/Pc;EDgQd;;;AAGF;EACE;EACA,SCxPW;;;AD2Pb;EACE,YC1PW;ED2PX,eC3PW;;AD6PX;EACE,eC9PS;;;ADkQb;EACE,YCrQW;EDsQX,eCtQW;;ADwQX;EACE;EACA,SC3QS;;;ADkRX;AAAA;EACE;;AAGF;AAAA;EACE;EACA;;AAEA;AAAA;EACE;EACA,SC5RO;;;ADiSb;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA,cCtSW;EDuSX,aCxSW;EDySX,gBCzSW;;;AD4Sb;EACE;;;AAIA;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;EACA,cC7TS;;;ADiUb;EACE;IACE;;EAGF;IACE,SCvUS","file":"style_general.css"}
{"version":3,"sourceRoot":"","sources":["../styles_src/style_general.scss","../styles_src/_variables.scss"],"names":[],"mappings":";AAAA;AAIA;EACE;EACA;EACA;;AAEA;EAEE;;;AAIJ;EACE;EACA,aCmBiB;;;ADhBnB;EACE;EACA,WCLe;EDMf,aCDiB;EDEjB,OCvBW;EDwBX,YCvBiB;EDwBjB;EACA,gBCEW;;;ADCb;AAAA;AAAA;AAAA;EAIE,WCnBoB;EDoBpB;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;EAME,aCPoB;EDQpB,YClBW;EDmBX,eCjBW;EDkBX,OC5Cc;ED6Cd;EACA;EACA;EACA,aC5BoB;;;ADgCtB;AAAA;EAEE,YAvDW;EAwDX;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE,OCjEiB;EDkEjB,WCnDa;EDoDb;;;AAGF;EACE,WCvDa;EDwDb;;;AAGF;EACE,WC3Da;ED4Db;;;AAGF;EACE,WCnEkB;EDoElB;;AAEA;AAAA;AAAA;AAAA;AAAA;EAKE,OC/EY;EDgFZ;EACA,YCpES;EDqET,eCrES;EDsET;;;AAIJ;AAAA;EAEE;;;AAIF;EACE;EACA,eC5EiB;ED6EjB,OCzGW;ED0GX;EACA,SCrFW;;ADuFX;EACE,YCxGkB;EDyGlB,OC/GS;;ADiHT;EACE,OClHO;;ADsHX;EAEE;EACA;EACA,cCpGS;EDqGT,eCrGS;;ADwGX;EACE;EACA;;;AAIJ;EACE,YCjGe;;ADmGf;EACE;EACA,YCtGe;;;AD0GnB;AAAA;AAAA;AAAA;EAIE;;;AAGF;EACE;EACA;EACA,YChIW;EDiIX,eClIW;EDmIX;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;;;AAGF;EACE,eClJW;;ADoJX;EACE;;AAGF;EACE;EACA,cC1JS;;;AD+Jb;EACE;;;AAGF;EACE;EACA;;;AAIA;EACE;;;AAKF;EACE,OC9KS;ED+KT,QC/KS;EDgLT,cClLS;;ADqLX;EACE;EACA;;;AAIJ;EACE,YC3LW;ED4LX,eC5LW;ED6LX;;AAEA;EACE;EACA,SCnMS;EDoMT;EACA,eC/Le;;;ADmMnB;EACE;;AAEA;EACE;EACA;EACA;EACA;EACA,SChNS;;;ADoNb;EACE;EACA,SCtNW;EDuNX;EACA;;;AAGF;AAAA;EAEE,QC7NW;ED8NX,OCvPiB;EDwPjB;;;AAGF;EACE,YCtPc;;;ADyPhB;EACE,YChQiB;EDiQjB,SCpOkB;EDqOlB;EACA,YC1OW;ED2OX,eCrOiB;EDsOjB;;AAEA;EACE;;;AAIJ;EACE;EACA,SCnPW;EDoPX,YC3QgB;ED4QhB,OC3QkB;;;AD8QpB;EACE,OCxQc;EDyQd;;;AAGF;EACE;EACA,SCjQW;;;ADoQb;EACE,YCnQW;EDoQX,eCpQW;;ADsQX;EACE,eCvQS;;;AD2Qb;EACE,YC9QW;ED+QX,eC/QW;;ADiRX;EACE;EACA,SCpRS;;;AD2RX;AAAA;EACE;;AAGF;AAAA;EACE;EACA;;AAEA;AAAA;EACE;EACA,SCrSO;;;AD0Sb;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA,cC/SW;EDgTX,aCjTW;EDkTX,gBClTW;;;ADqTb;EACE;;;AAIA;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;EACA,cCtUS;;;AD0Ub;EACE;EACA;EACA;;;AAGF;EACE;IACE;;EAGF;IACE,SCtVS","file":"style_general.css"}

View file

@ -1,5 +1,6 @@
/*style général scss*/
@use 'variables' as *;
$spacing-xl: 5rem;
* {
box-sizing: border-box;
@ -49,14 +50,20 @@ h6 {
overflow-wrap: break-word;
text-wrap: balance;
line-height: $line-height-heading;
}
.article-title,
hr+h1 {
margin-top: $spacing-xl;
border-left: 3px solid gray;
padding-left: 3rem;
margin-left: -4rem;
}
h1:first-letter {
text-transform: uppercase;
font-size: 4.5rem;
}
h1 {
@ -149,6 +156,8 @@ p {
text-wrap: pretty;
margin-top: $spacing-md;
margin-bottom: $spacing-sm;
font-size: 1.25rem;
line-height: 1.75rem;
}
#root,
@ -346,6 +355,12 @@ q {
}
}
.site-foot-soutien {
font-size: 0.8rem;
width: 75ch;
max-width: calc(100vw - 6rem);
}
@media (max-width: $article-width) {
body {
padding: 0;