diff --git a/CHANGELOG.md b/CHANGELOG.md index 84ddd90..a63ffd3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,10 @@ Tyto - Littérateur # CURRENTLY IN DEV (in devel branch) ! +## [1.11.4] +- small changes when writing domain config in [WEBSITE_FOOTER] +- check: added marker check (default "=", "+") + ## [1.11.3] - Additional HTML code for accessibility diff --git a/debian/control b/debian/control index a4eff9c..a8fb607 100644 --- a/debian/control +++ b/debian/control @@ -1,5 +1,5 @@ Package: tyto -Version: 1.11.3 +Version: 1.11.4 Section: custom Priority: optional Architecture: all diff --git a/src/usr/bin/tyto b/src/usr/bin/tyto index 3556aa2..9434ed4 100755 --- a/src/usr/bin/tyto +++ b/src/usr/bin/tyto @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# version: 1.11.3 -# date: 2024-01-12 1705078779 +# version: 1.11.4 +# date: 2024-01-15 1705339348 # Tyto - Littérateur # Copyright (C) 2023 Cyrille Louarn diff --git a/src/var/lib/tyto/program/check.py b/src/var/lib/tyto/program/check.py index bee04a1..db60aa3 100644 --- a/src/var/lib/tyto/program/check.py +++ b/src/var/lib/tyto/program/check.py @@ -190,7 +190,9 @@ def header_sl_tags(): try: datetime.date.fromisoformat(post.needed_tags["date"]) except ValueError: - debug.out(34, "%s. date: %s ? (YYYY-MM-DD)"%(date_ln, post.needed_tags["date"]), post.uri, True, 2, out) + debug.out(34, "%s. date: %s ? (YYYY-MM-DD)"%( + date_ln, post.needed_tags["date"] + ), post.uri, True, 2, out) return False # Count authors @@ -413,6 +415,15 @@ def block_tags(tag): line.lstrip().startswith(mark_o): tag_i = line.index(mark_o[0]) mark_ln = ln + if tag == "lists": + nxt_l = article_writer[ln - stats["file"]["header_lines"]].lstrip() + if not nxt_l.startswith(post.list_marks): + debug.out(33, "%s. List: %s, %s ?"%( + (ln + 1), + post.list_marks[0], post.list_marks[1] + ), post.uri, True, 2, out) + return False + # bcode was opened and mark closed here elif tag_i != -1 and \ @@ -437,7 +448,7 @@ def block_tags(tag): nbr = stats["writer"][tag] # convert html signe, and convert bcode to base64 - bcode_H = tools.get_HID(block_source, False) + bcode_H = tools.get_HID(block_source, False) # Put bcode in dict with nbr bcode post.block_tags[tag]["sources"][nbr] = (block_source, bcode_H) @@ -451,7 +462,7 @@ def block_tags(tag): tag_c = False block_source = "" - # bcode wan NOT closed + # bcode was NOT closed if tag_i != -1 and not tag_c: debug.out(37, "%s. %s: '%s' ?"%( mark_ln, tag, mark_c diff --git a/src/var/lib/tyto/program/domain.py b/src/var/lib/tyto/program/domain.py index f07cbc5..d84d7eb 100644 --- a/src/var/lib/tyto/program/domain.py +++ b/src/var/lib/tyto/program/domain.py @@ -431,7 +431,7 @@ def cf_update(): cf_set( "WEBSITE_FOOTER", "link_1", - '("%s%s %s", "%s", "%s %s")'%( + '"%s%s %s", "%s", "%s %s"'%( langs.site.license, langs.logs.pp, license, license_url, langs.site.license_title, title @@ -440,21 +440,21 @@ def cf_update(): cf_set( "WEBSITE_FOOTER", "link_2", - '("%s", "/", "%s %s")'%( + '"%s", "/", "%s %s"'%( langs.site.legals, langs.site.legals_title, title ), False ) cf_set( "WEBSITE_FOOTER", "link_3", - '("%s", "/", "%s %s")'%( + '"%s", "/", "%s %s"'%( langs.site.terms, langs.site.terms_title, title ), False ) cf_set( "WEBSITE_FOOTER", "link_4", - '("%s", "/", "%s %s")'%( + '"%s", "/", "%s %s"'%( langs.site.bylaws, langs.site.bylaws_title, title ), False ) diff --git a/src/var/lib/tyto/program/modules.py b/src/var/lib/tyto/program/modules.py index 0298967..1ffc017 100644 --- a/src/var/lib/tyto/program/modules.py +++ b/src/var/lib/tyto/program/modules.py @@ -290,6 +290,11 @@ def set_footer_raw(mod): try: tupvalues = ast.literal_eval(value) + if not tupvalues[0] or \ + not tupvalues[1] or \ + not tupvalues[2]: + debug.out(102, "%s = %s"%(key, value), domain.cf_uri, True, 1, False) + continue footer_menu = footer_menu + \ footer_link%(tupvalues[1], tupvalues[2], "", tupvalues[0]) except: diff --git a/src/var/lib/tyto/program/post.py b/src/var/lib/tyto/program/post.py index e9a3f6b..8384b50 100644 --- a/src/var/lib/tyto/program/post.py +++ b/src/var/lib/tyto/program/post.py @@ -170,7 +170,7 @@ def cf_create(): # Set and reset vars (when multiple articles) # #---------------------------------------------# def set_default_vars(): - global anchors, block_tags, icodes, options_marks + global anchors, block_tags, list_marks, icodes, options_marks global needed_tags, option_tags, titles # form NBR : (source, html) @@ -193,6 +193,9 @@ def set_default_vars(): }, } + # markers in list + list_marks = (block_tags["lists"]["marks"][2], block_tags["lists"]["marks"][3]) + # Inline codes icodes = { "sources" : {}, # {} : {NBR : ("SOURCE", "B64")} @@ -277,4 +280,3 @@ words_tags = { } title_marks = ("#1", "#2", "#3", "#4", "#5") # h2 to h6 - diff --git a/src/var/lib/tyto/program/wip.py b/src/var/lib/tyto/program/wip.py index 17f7a70..b0a2243 100644 --- a/src/var/lib/tyto/program/wip.py +++ b/src/var/lib/tyto/program/wip.py @@ -307,7 +307,7 @@ def lists(): # So many THANX neox ! # # (Not sure, i was able to do it and even not in a so beautiful way) # #--------------------------------------------------------------------# -def convert_list(markdown_str, mark_ul, mark_c): +def convert_list(markdown_str, mark_ul, mark_ol): # First step : reshape lines items = [] inside_item = 0 @@ -323,7 +323,7 @@ def convert_list(markdown_str, mark_ul, mark_c): # = and + if strlist[i][0] != mark_ul and \ - strlist[i][0] != mark_c: + strlist[i][0] != mark_ol: if inside_item != 1: inside_item = 1 else: @@ -356,9 +356,9 @@ def convert_list(markdown_str, mark_ul, mark_c): text = items[i][items[i].find(" "):].lstrip() cur_rank = len(descriptor) - if "=" in descriptor: + if mark_ul in descriptor: state = UL - elif "+" in descriptor: + elif mark_ol in descriptor: state = OL else: raise(Exception) @@ -465,8 +465,8 @@ def images(): # Create HTML line - img = '%s'%( - params["c="], uri, alt, styles + img = '%s'%( + params["c="], uri, alt, alt, styles ) # Set figure if image has a legend diff --git a/website_doc/404.html b/website_doc/404.html new file mode 100644 index 0000000..24def85 --- /dev/null +++ b/website_doc/404.html @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Page non trouvée (echolib) | Tyto - Littérateur + + + +
+ + + + +
+ +
+ +
+ + + +
+ + + +
+ + + + diff --git a/website_doc/404.tyto b/website_doc/404.tyto new file mode 100644 index 0000000..dda5e2b --- /dev/null +++ b/website_doc/404.tyto @@ -0,0 +1,25 @@ +title: Page non trouvée +about: Page d'erreur 404, indiquant que la page demandée n'existe pas/plus +date: 2024-01-13 +tags: 404,erreur +authors: echolib + +image: 404 + VH_Tyto_404.png + Image montrant la chouette, Tyto, perdue + +------------------------------------------------------------------------------- + +#1 Ouh-Ouh ! Erreur 404 :( +[[ pic_err + (( pic_err + La page que vous avez demandée n'existe pas ou plus, sûrement parce que ce + site a été enièrement refait, pour convenir à la nouvelle version de + *`Tyto - Littérateur`*. + | + | + N'hésitez pas à me contacter, si vous estimez qu'une + information est manquante. + )) + ::404 "c=pic_err", "f=Licence : CC-by Valérie Honvault" +]] diff --git a/website_doc/VH_Tyto_404.png b/website_doc/VH_Tyto_404.png new file mode 100644 index 0000000..53b3e9d Binary files /dev/null and b/website_doc/VH_Tyto_404.png differ diff --git a/website_doc/a-propos/index.html b/website_doc/a-propos/index.html new file mode 100644 index 0000000..56b1e85 --- /dev/null +++ b/website_doc/a-propos/index.html @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Mentions Légales (echolib) | Tyto - Littérateur + + + +
+ + + + +
+ +
+ +
+ + + +
+ + + +
+ + + + diff --git a/website_doc/a-propos/index.tyto b/website_doc/a-propos/index.tyto new file mode 100644 index 0000000..5f8d87f --- /dev/null +++ b/website_doc/a-propos/index.tyto @@ -0,0 +1,78 @@ +title: Mentions Légales +about: Mentions légales, condition d'utilisation et licence du site web officiel de Tyto - Littérateur +date: 2024-01-14 +tags: mentions légales,C.G.U,licence +authors: echolib +logo: @logos/justice_scales_cc0.png + +link: https://pulseheberg.com/ + https://pulseheberg.com/ + L'univers des solutions web + +link: gfdl-1.3 + https://www.gnu.org/licenses/fdl-1.3.txt + GNU Free Documentation License Version 1.3, 3 November 2008 + +link: plus d'informations en français + https://fr.wikipedia.org/wiki/Licence_de_documentation_libre_GNU + Licence de documentation libre GNU (wikipédia) + +! LOGO +------------------------------------------------------------------------------- +! TOC + +#1 Informations +(( + (= + = Éditeur et directeur du site : :`Cyrille Louarn`: + = courriel : [`echolib+tyto@a-lec.org`] + = XMPP: echolib@a-lec.org + )= + (( + Pour toute question ou réclamation concernant ce site, n'hésitez pas à me + contacter. + )) +)) + + +#1 Hébergeur du site : +(( + (= + = Hébergeur : ::https://pulseheberg.com/ + )= +)) + + +#1 Conditions d'utilisation +(( + L'utilisation de ce site est soumise aux conditions générales d'utilisation + suivantes + (= + + Le contenu de ce site est fourni à titre informatif uniquement. L'éditeur + ne garantit pas l'exactitude, la pertinence ou l'exhaustivité du contenu. + + L'utilisateur est seul responsable de l'utilisation qu'il fait des + informations disponibles sur le site. + + L'éditeur se réserve le droit de modifier, de compléter ou de supprimer + tout ou partie du contenu du site sans préavis. + + Ce site ne collecte pas d'informations personnelles sans votre + consentement. + )= +)) + + +#1 Propriété intellectuelle +(( + Le contenu de ce site, y compris les textes, images, graphiques, logos, est + sous licence ::gfdl-1.3 (::plus d'informations en français), sauf mentions + contraires et indiquées. +)) + + +#1 Politique de confidentialité +(( + Ce site ne collecte aucune information personnelle sans votre consentement. + *`Aucun cookie n'est utilisé`* à des fins de suivi. Les informations que vous + pourriez nous transmettre via les méthodes de contact ne seront utilisées + que dans le but de répondre à vos demandes et ne seront en aucun cas + partagées avec des tiers. +)) diff --git a/website_doc/article/index.html b/website_doc/article/index.html new file mode 100644 index 0000000..aa07137 --- /dev/null +++ b/website_doc/article/index.html @@ -0,0 +1,162 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Écrire un article au format .tyto (echolib) | Tyto - Littérateur + + + +
+ + + + +
+ +
+ +
+ + + +
+ + + +
+ + + + diff --git a/website_doc/article/index.tyto b/website_doc/article/index.tyto new file mode 100644 index 0000000..1d8a6c2 --- /dev/null +++ b/website_doc/article/index.tyto @@ -0,0 +1,111 @@ +title: Écrire un article au format .tyto +about: Page d'index référençant les articles dédiés à l'écriture des marqueurs utilisés par Tyto - Littérateur +date: 2024-01-06 +tags: format .tyto,écrire, +authors: echolib +logo: @logos/format_tyto.png + +link: Les métadonnées indispensables + ./metas_obligatoires.html + Comment écrire les métadonnées obligatoires dans l'entête de l'article source pour Tyto - Littérateur + +link: Écrire/créer des liens + ./metas_liens.html + Comment écrire des liens pour Tyto - Littérateur + +link: Les URIs spécifiques + ./metas_uris.html + Comment cibler un fichier avec les URIs spécifiques des marqueurs pour Tyto - Littérateur + +link: Écrire les titres + ./redac_titres.html + Comment écrire les titres et les sous-titres pour Tyto - Littérateur + +! LOGO +------------------------------------------------------------------------------- +! TOC + +#1 Le format ".tyto" ? +(( + Pour que :`Tyto`: puisse convertir un contenu rédactionnel dans un fichier + textuel brut en page HTML5, il faut utiliser des marqueurs, et respecter une + structure dans le fichier source. Il est recommandé d'utiliser un simple + éditeur de texte. Ce fichier doit : + (= + = avoir l'extension [...]*` .tyto `* + = contenir un séparateur d'au moins 5 tirets {` ----- `} + )= +)) + + +#2 Le séparateur ? +(( + Le séparateur permet de créer 2 parties dans l'article source, *`Au dessus du + séparateur : l'entête`*. Elle contient les métadonnées, comme le titre de + l'article, sa date de création, et encore, les liens et images à configurer. + *`Sous le séparateur : la rédaction`*. Elle contient les textes et les + marqueurs dédiés au formattge des textes. +)) + + +#2 Dans l'entête +(( + Une métadonnée est composée par un marqueur, et ses contenus. Il y a 2 types + de métadonnées dans l'entête : + (= + = Les métadonnées indispensables + = les métadonnées optionnelles + )= +)) + +#3 Les métadonnées indispensables +(( + ::Les métadonnées indispensables ont des marqueurs uniques qui doivent être + configurés sur une seule ligne. +)) + +#3 Les métadonnées optionnelles +(( + Les métadonnées optionnels peuvent avoir des marqueurs multiples qui doivent + être configurés sur 3 lignes, hormis pour >`toc_6:les marqueurs de gestion`< +)) +(( + La 1ère ligne comprend le marqueur, suvi par son identité. Cette identité + doit être unique (toutes identités confondues), et doit être reprise dans + les contenus rédactionnels, préfixée par {` :: `}. + (= + = ::Écrire/créer des liens + = ::Les URIs spécifiques + )= +)) + +#3 Les marqueurs de gestion +(( + Les marqueurs de gestion sont uniques, ptionnels et sans métadonnée. + (= + = +`! NOMAP`+ : article non présent dans le sitemap + = +`! NORSS`+ : article non présent dans le flux RSS + = +`! LOGO`+ : Montre le logo de l'article près de son titre + )= +)) + + +#2 Dans la rédaction +(( + Dans la zone des contenus rédactionnels - sous le séparateur, les retours + à la lignes n'ont aucun effet sur la page HTML, afin de rendre les documents + plus lisibles et aérés. Il est également utile d'indenter les marqueurs + de blocs et leurs contenus. + (= + = ::Écrire les titres, créer la table des matières + )= +)) + + +#1 Rappel +(( + La commande {` tyto help `} regroupe différentes sections d'aides. Vous + pouvez par exemple taper {` tyto help article `} pour avoir un aperçu de + tous les marqueurs, ou simplement taper {` tyto help anchor`} pour savoir + comment définir une ancre et le lien pointant vers elle. +)) diff --git a/website_doc/article/metas_liens.html b/website_doc/article/metas_liens.html new file mode 100644 index 0000000..bffb72f --- /dev/null +++ b/website_doc/article/metas_liens.html @@ -0,0 +1,136 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Écrire/créer des liens (echolib) | Tyto - Littérateur + + + +
+ + + + +
+ +
+ +
+ + + +
+ + + +
+ + + + diff --git a/website_doc/article/metas_liens.tyto b/website_doc/article/metas_liens.tyto new file mode 100644 index 0000000..32b2df7 --- /dev/null +++ b/website_doc/article/metas_liens.tyto @@ -0,0 +1,70 @@ +title: Écrire/créer des liens +about: Comment écrire des liens pour Tyto - Littérateur +date: 2024-01-08 +tags: format .tyto,écrire,liens +authors: echolib + +link: les URIs spécifiques + ./metas_uris.html + Comment cibler un fichier avec les URIs spécifiques des marqueurs pour Tyto - Littérateur + +------------------------------------------------------------------------------- +! TOC + +#1 Métadonnées d'entête +(( + Pour créer un lien, il faut d'abord le référencer dans l'entête de l'article, + au dessus du séparateur {` ----- `}. Chaque marqueurs peut-être utilisé + plusieurs fois et se configure sur 3 lignes. Mais chaque identité du marqueur + doit être unique (tous marqueurs confondus). Il existe 2 types de marqueurs + de lien : + (= + = vers une URL / un URI ; marqueur {` link: `} uniquement + = vers un fichier interne (PDF, image...) ; autres marqueurs + )= +)) + +#2 Lien "link:" +(( + L'URL (ou l'URI) du marqueur {` link: `} n'est pas vérifiée. Vous pouvez + pointer vers un document interne (comme une autre page du site avec + {` ../doc/index.html `}), mais n'oubliez pas de vérifier que le lien, dans + la page HTML, pointe bien vers le document. +)) + +#2 Lien "image:", "file:" +(( + Les marqueurs {` image: `} et {` file: `} étant destinés à créer des liens + vers des ressources internes, ils n'acceptent que les URIs. :`Tyto`: + vérifie la présence des fichiers pointés dans le dossier de travail +)) + +#2 Les URIs spécifiques +(( + Vous pouvez en lire plus sur ::les URIs spécifiques +)) + +#2 Configurer les marqueurs de liens +{{ + # De manière générale: + # marqueur: identité + # URL / URI + # texte descriptif + + # Lien vers une URL ou fichier (interne) + link: ma page web + https://... ou ./index.html + Texte alternatif + + # Lien vers un fichier interne + file: mon fichier + fichier.pdf + Texte alternatif + + # Lien vers une image interne + image: mon image + @paysages/montagne.png + Texte alternatif +}} + + diff --git a/website_doc/article/metas_obligatoires.html b/website_doc/article/metas_obligatoires.html new file mode 100644 index 0000000..6aad0bc --- /dev/null +++ b/website_doc/article/metas_obligatoires.html @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Écrire les métadonnées indispensables (echolib) | Tyto - Littérateur + + + +
+ + + + +
+ +
+ +
+ + + +
+ + + +
+ + + + diff --git a/website_doc/article/metas_obligatoires.tyto b/website_doc/article/metas_obligatoires.tyto new file mode 100644 index 0000000..f239524 --- /dev/null +++ b/website_doc/article/metas_obligatoires.tyto @@ -0,0 +1,63 @@ +title: Écrire les métadonnées indispensables +about: Comment écrire les métadonnées obligatoires dans l'entête de l'article source pour Tyto - Littérateur +date: 2024-01-06 +tags: format .tyto,écrire,métadonnées,entête +authors: echolib +logo: @logos/tyto_5_metas.png + + +! LOGO +------------------------------------------------------------------------------- +! TOC + +#1 Les 5 marqueurs obligatoires +(( + Ces marqueurs et leurs métadonnées sont indispensables. :`Tyto`: en a besoin, + afin de les reprendre, notamment dans les balises HTML {` `}. Chacun + de ces marqueur doit être *`écrit sur une seule ligne`*. Leur ordre est + aléatoire. Vous pouvez indenter leurs contenus pour une meilleure + lisibilité. Comme toutes métadonnées d'entête, elles doivent être + écrites au dessus du séparateur {` ----- `}. Vous pouvez également utiliser + des commentaires (la ligne comence par {` # `}) +)) + + +#2 Configurer les marqueurs +{{ + # Marqueur: Contenus + + title: Le titre de l'article + about: La description de l'article + date: La date de l'article (AAAA-MM-JJ) + tags: étiquette,mots clés, + authors: Auteur 1,Auteur 2 +}} + + +#3 Le titre de l'article +(( + Le titre de l'article est utilisé en tant que balise {`

`} dans la + balise {`
`} de la page HTML. Il est également utilisé en tant que + {` title="" `} dans l'onglet de la barre de menu (si le fichier est nommé + [` index.tyto`], et son dossier source ajouté dans le fichier du module + "navbar.raw"). +)) + + +#3 La date de l'article +(( + La date doit être valide et respecter le format {`AAAA-MM-JJ`} ; exemple : + {`2024-02-29`}. Dans les pages HTML du site, si ce dernier est configuré + en langue "fr", les dates sont modifiées pour respecter le format + d'affichage "JJ/MM/AAAA" dans la page HTML. +)) + + +#3 Les étiquettes de l'article +(( + Elles sont séparées par une virgule. Il est inutile d'ajouter un espace + après. Dans la page HTML de l'article, la balise HTML + {` + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Les URIs spécifiques (echolib) | Tyto - Littérateur + + + +
+ + + + +
+ +
+ +
+ + + +
+ + + +
+ + + + diff --git a/website_doc/article/metas_uris.tyto b/website_doc/article/metas_uris.tyto new file mode 100644 index 0000000..f0ceffa --- /dev/null +++ b/website_doc/article/metas_uris.tyto @@ -0,0 +1,53 @@ +title: Les URIs spécifiques +about: Comment cibler un fichier avec les URIs spécifiques des marqueurs pour Tyto - Littérateur +date: 2024-01-08 +tags: format .tyto,écrire,liens,URIs +authors: echolib + +------------------------------------------------------------------------------- +! TOC + +#1 Les URIs dans les métadonnées +(( + Hormis pour le marqueur {` link: `}, et pour le marqueur {` abbr: `} (qui + n'a pas de référence à un URI), les autres marqueurs ont besoin, en seconde + ligne de configuration, d'un URI. :`Tyto`: reconnaît 3 types d'URIs + différents, en fonction du premier caractère utilisé dans l'URI. Ainsi, la + présence du fichier demandé est vérifiée, et le bon lien dans la page HTML + est créé. L'URI commence par : + (= + = {` @ `}... + == marqueur {` image: `} ; fichier depuis [` articles/images/ `] + == autres marqueurs ; fichier depuis [` articles/files/ `] + = {` / `}... + == tous marqueurs ; fichier depuis [` articles/ `] + = "autres"... ; + == tous marqueurs : fichier depuis l'emplacement de l'article source + )= +)) + + +#2 Exemples d'URIs +{{ + # URI d'une image : .../articles/images/logos/logo1.png + image: ID1 + @logos/logo1.png + Texte Alternatif + + # URI d'une image : .../articles/dossier_images/logo2.png + image: ID2 + /dossier_images/logo2.png + Texte Alternatif + + # UDI d'un fichier dans .../articles/files/PDFs/doc_1.pdf + file: ID3 + @PDFs/doc_1.pdf + Texte alternatif + + # URI d'un fichier dans un sous dossier de l'article source + # URI de l'article source : .../articles/about/index.tyto + # URI du fichier : .../articles/about/PDFs/doc.pdf + file: ID4 + PDFs/doc.pdf + Texte Alteratif +}} diff --git a/website_doc/article/redac_titres.html b/website_doc/article/redac_titres.html new file mode 100644 index 0000000..56957f1 --- /dev/null +++ b/website_doc/article/redac_titres.html @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Écrire les titres et sous-titres (echolib) | Tyto - Littérateur + + + +
+ + + + +
+ +
+ +
+ + + +
+ + + +
+ + + + diff --git a/website_doc/article/redac_titres.tyto b/website_doc/article/redac_titres.tyto new file mode 100644 index 0000000..49ad6a1 --- /dev/null +++ b/website_doc/article/redac_titres.tyto @@ -0,0 +1,51 @@ +title: Écrire les titres et sous-titres +about: Comment écrire les titres et les sous-titres pour Tyto - Littérateur +date: 2024-01-07 +tags: format .tyto,écrire,rédaction,titres,table des matières +authors: echolib +logo: @logos/tyto_titles_toc.png + + +! LOGO +------------------------------------------------------------------------------- +! TOC + + +# Titre 1 : id="toc_1" +#1 Les titres +(( + En HTML, les 6 titres et sous-titres sont écrits avec les balises {`

`} + à {`

`}. Toutefois, :`Tyto`: crée le squelette du site HTML, en + mettant le titre principal de l'article dans la balise {`

`} - elle-même + dans la balise {`
`}. De ce fait, le contenu rédactionnel dipose + de 5 titres et sous-titres. +)) +(( + Tous les titres ont la même classe CSS : celle dans la configuration du + domaine ("tyto" par défaut). Chacun des titres a également l'identifiant CSS + incrémentée par ordre d'apparition. Le 1er titre aura donc {` id="toc_1" `}, + le 4ème titre, {` id="toc_4" `}... + +)) + +# Titre 2 : id="toc_2" +#2 Les marqueurs +{{ + #1 Titre

+ #2 Titre

+ #3 Titre

+ #4 Titre

+ #5 Titre
+}} + + +# Titre 3 : id="toc_3" +#1 La table des matières +(( + Il est possible, très facilement, de créer une table des matière + automatiquement grâce au marqueur {` ! TOC `}, à mettre, de préférence au + début du contenu rédactionnel. Cette *`table des matières`*, (comme celles + que vous pouvez observer dans la majorité des pages de cette documentation), + est composée avec tous les titres et sous-titres, et permet de créer des + liens vers leurs ancres. +)) diff --git a/website_doc/images/logos/format_tyto.png b/website_doc/images/logos/format_tyto.png new file mode 100644 index 0000000..e2eb6ae Binary files /dev/null and b/website_doc/images/logos/format_tyto.png differ diff --git a/website_doc/images/logos/justice_scales_cc0.png b/website_doc/images/logos/justice_scales_cc0.png new file mode 100644 index 0000000..533b818 Binary files /dev/null and b/website_doc/images/logos/justice_scales_cc0.png differ diff --git a/website_doc/images/logos/tyto_5_metas.png b/website_doc/images/logos/tyto_5_metas.png new file mode 100644 index 0000000..d1d9644 Binary files /dev/null and b/website_doc/images/logos/tyto_5_metas.png differ diff --git a/website_doc/images/logos/tyto_titles_toc.png b/website_doc/images/logos/tyto_titles_toc.png new file mode 100644 index 0000000..6667674 Binary files /dev/null and b/website_doc/images/logos/tyto_titles_toc.png differ diff --git a/website_doc/images/logos/tyto_welcome.png b/website_doc/images/logos/tyto_welcome.png new file mode 100644 index 0000000..77978b1 Binary files /dev/null and b/website_doc/images/logos/tyto_welcome.png differ diff --git a/website_doc/index.html b/website_doc/index.html new file mode 100644 index 0000000..9c129ff --- /dev/null +++ b/website_doc/index.html @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Bienvenue, librement (echolib) | Tyto - Littérateur + + + +
+ + + + +
+ +
+ +
+ + + +
+ + + +
+ + + + diff --git a/website_doc/index.tyto b/website_doc/index.tyto new file mode 100644 index 0000000..7a77069 --- /dev/null +++ b/website_doc/index.tyto @@ -0,0 +1,89 @@ +title: Bienvenue, librement +about: Page d'accueil de la documentation de Tyto - Littérateur +date: 2023-11-29 +tags: accueil,projet,description +authors: echolib +logo: @logos/tyto_welcome.png + +link: XMPP: im@echolib.re + xmpp://im@echolib.re + Messagerie XMPP privée personnelle du développeur de Tyto Littérateur + +link: chouette effraie + https://fr.wikipedia.org/wiki/Chouette_effraie + Tyto alba • Effraie des clochers + +! LOGO +------------------------------------------------------------------------------- + +(( alert + Ce site web est en cours de construction. De nouvelles pages et rubriques + seront prochaînement ajoutées. Tyto - Littérateur est également en cours de + développement. Cependant, même si Tyto est en train de naître, il devrait + être utilisable. N'hésitez donc pas à le tester localement et à me contacter + par mail ou, de préférence, via ::XMPP: im@echolib.re. +)) + +! TOC + + +#1 Le projet +(( + *`Tyto - Littérateur`* ou :`Tyto`: pour les intimes, est un *`générateur + de sites web`* statiques, créé en Python sous licence libre. Sa fonction + première est d'être un *`littérateur`*, ce qui signifie qu'il +`transforme + le conenu d'un fichier textuel en page HTML5`+. C'est chouette non ? +)) + + +#1 Le format .tyto +(( + Pour que :`Tyto`: puisse comprendre qu'une partie du texte doit être placée + dans un paragraphe, ou encore que des mots doivent être écrits en gras, il + faut utiliser des marqueurs dans l'article source. Ce site web, sous forme de + documentation (généré par Tyto - Littérateur), est là pour vous aider à + comprendre comment écrire un article au +`format .tyto`+. +)) +(( + Vous pouvez avoir un aperçu des fichiers sources de ce site, en cliquant sur + "Code source" dans chacune des pages. Ne vous inquiétez pas, même si la + ::chouette effraie, Tyto 'alba', ça ne fait pas peur ! +)) + + +#1 Gestion et personnalisation +(( + Tyto - Littérateur, a d'autres fonctions. il est capable de vous aider + à gérer de multiples sites web très facilement. Chaque site web - ayant son + propre domaine, se trouve dans son propre dossier, et dispose d'une version + de contrôle ou d'aperçu du site web. Vous pouvez donc vérifier chaque page + avant de la publier officiellement ! +)) +(( + Vous pouvez aussi personnaliser les différentes parties, composant une page + web : des balises metas HTML, au pied de page, en passant par l'entête, le + menu de navigation, et la barre latérale. +)) + + +#1 Utilisation +(( + Tyto s'utilise depuis un terminal sous GNU/Linux, que ce soit chez vous, ou + dans un serveur distant. Mais rassurez-vous, les quelques commandes à écrire, + une fois expliquées (taper juste {`tyto`} pour obtenir de l'aide), sont + intuitives. En fait, vous en utiliserez majoritairement que 2 : + (= + = {`tyto wip monarticle.tyto`} + = {`tyto publish monarticle.tyto`} + )= +)) + + +#1 Traductions +(( + Chaque site, tout comme les messages d'informations (logs) sont disponibles + en français et en anglais par défaut. Les logs dépendent de la langue + utilisée par le système, mais chaque site peut utiliser l'une ou l'autre, + via la configuration du domaine. Il est aussi assez facile de rajouter + des langues supplémentaires. +)) diff --git a/website_doc/rss.xml b/website_doc/rss.xml new file mode 100644 index 0000000..5e29d80 --- /dev/null +++ b/website_doc/rss.xml @@ -0,0 +1,151 @@ + + + + + + + + + + + + + Tyto - Littérateur + https://tyto.echolib.re/ + Documentation officielle du littérateur libre + ' + https://tyto.echolib.re/template/VH_Tyto_logo.png + Tyto - Littérateur (logo) + https://tyto.echolib.re/ + + fr + Tyto,littérateur,logiciel libre,documentation + Mon, 15 Jan 2024 18:28:34 + gfdl-1.3 + echolib+tyto@a-lec.org + Tyto - Littérateur + + + + + Écrire les titres et sous-titres + https://tyto.echolib.re/article/redac_titres.html + https://tyto.echolib.re/article/redac_titres.html + Sun, 07 Jan 2024 + Comment écrire les titres et les sous-titres pour Tyto - Littérateur + echolib + + https://tyto.echolib.re/images/logos/tyto_titles_toc.png + Écrire les titres et sous-titres (logo) + https://tyto.echolib.re/article/redac_titres.html + + format .tyto,écrire,rédaction,titres,table des matières + + + + Mentions Légales + https://tyto.echolib.re/a-propos/index.html + https://tyto.echolib.re/a-propos/index.html + Sun, 14 Jan 2024 + Mentions légales, condition d'utilisation et licence du site web officiel de Tyto - Littérateur + echolib + + https://tyto.echolib.re/images/logos/justice_scales_cc0.png + Mentions Légales (logo) + https://tyto.echolib.re/a-propos/index.html + + mentions légales,C.G.U,licence + + + + Écrire un article au format .tyto + https://tyto.echolib.re/article/index.html + https://tyto.echolib.re/article/index.html + Sat, 06 Jan 2024 + Page d'index référençant les articles dédiés à l'écriture des marqueurs utilisés par Tyto - Littérateur + echolib + + https://tyto.echolib.re/images/logos/format_tyto.png + Écrire un article au format .tyto (logo) + https://tyto.echolib.re/article/index.html + + format .tyto,écrire, + + + + Écrire les métadonnées indispensables + https://tyto.echolib.re/article/metas_obligatoires.html + https://tyto.echolib.re/article/metas_obligatoires.html + Sat, 06 Jan 2024 + Comment écrire les métadonnées obligatoires dans l'entête de l'article source pour Tyto - Littérateur + echolib + + https://tyto.echolib.re/images/logos/tyto_5_metas.png + Écrire les métadonnées indispensables (logo) + https://tyto.echolib.re/article/metas_obligatoires.html + + format .tyto,écrire,métadonnées,entête + + + + Les URIs spécifiques + https://tyto.echolib.re/article/metas_uris.html + https://tyto.echolib.re/article/metas_uris.html + Mon, 08 Jan 2024 + Comment cibler un fichier avec les URIs spécifiques des marqueurs pour Tyto - Littérateur + echolib + + https://tyto.echolib.re/template/VH_Tyto_logo.png + Les URIs spécifiques (logo) + https://tyto.echolib.re/article/metas_uris.html + + format .tyto,écrire,liens,URIs + + + + Écrire/créer des liens + https://tyto.echolib.re/article/metas_liens.html + https://tyto.echolib.re/article/metas_liens.html + Mon, 08 Jan 2024 + Comment écrire des liens pour Tyto - Littérateur + echolib + + https://tyto.echolib.re/template/VH_Tyto_logo.png + Écrire/créer des liens (logo) + https://tyto.echolib.re/article/metas_liens.html + + format .tyto,écrire,liens + + + + Page non trouvée + https://tyto.echolib.re/404.html + https://tyto.echolib.re/404.html + Sat, 13 Jan 2024 + Page d'erreur 404, indiquant que la page demandée n'existe pas/plus + echolib + + https://tyto.echolib.re/template/VH_Tyto_logo.png + Page non trouvée (logo) + https://tyto.echolib.re/404.html + + 404,erreur + + + + Bienvenue, librement + https://tyto.echolib.re/index.html + https://tyto.echolib.re/index.html + Wed, 29 Nov 2023 + Page d'accueil de la documentation de Tyto - Littérateur + echolib + + https://tyto.echolib.re/images/logos/tyto_welcome.png + Bienvenue, librement (logo) + https://tyto.echolib.re/index.html + + accueil,projet,description + + + + diff --git a/website_doc/sitemap.html b/website_doc/sitemap.html new file mode 100644 index 0000000..c643e3a --- /dev/null +++ b/website_doc/sitemap.html @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Plan du site (Tyto) | Tyto - Littérateur + + + + + + + + diff --git a/website_doc/sitemap.tyto b/website_doc/sitemap.tyto new file mode 100644 index 0000000..6099374 --- /dev/null +++ b/website_doc/sitemap.tyto @@ -0,0 +1,25 @@ +# Tyto - Littérateur +! NOMAP +! NORSS + +title: Plan du site +about: Plan du site généré par Tyto - Littérateur +tags: Plan du site +authors: Tyto +date: 2024-01-15 + +----- +#1 Liste des articles (8) + +(( sitemap + (= sitemap_items + + Écrire les titres et sous-titres + + Mentions Légales + + Écrire un article au format .tyto + + Écrire les métadonnées indispensables + + Les URIs spécifiques + + Écrire/créer des liens + + Page non trouvée + + Bienvenue, librement + )= +)) diff --git a/website_doc/template/VH_Tyto_logo.png b/website_doc/template/VH_Tyto_logo.png new file mode 100644 index 0000000..083cc6c Binary files /dev/null and b/website_doc/template/VH_Tyto_logo.png differ diff --git a/website_doc/template/favicon.png b/website_doc/template/favicon.png new file mode 100644 index 0000000..541ac72 Binary files /dev/null and b/website_doc/template/favicon.png differ diff --git a/website_doc/template/footer.html b/website_doc/template/footer.html new file mode 100644 index 0000000..b327fae --- /dev/null +++ b/website_doc/template/footer.html @@ -0,0 +1,36 @@ + +
+ + + +
\ No newline at end of file diff --git a/website_doc/template/header.html b/website_doc/template/header.html new file mode 100644 index 0000000..3fb484a --- /dev/null +++ b/website_doc/template/header.html @@ -0,0 +1,12 @@ + + + + \ No newline at end of file diff --git a/website_doc/template/metas.html b/website_doc/template/metas.html new file mode 100644 index 0000000..a9e6d39 --- /dev/null +++ b/website_doc/template/metas.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/website_doc/template/navbar.html b/website_doc/template/navbar.html new file mode 100644 index 0000000..3a46f7b --- /dev/null +++ b/website_doc/template/navbar.html @@ -0,0 +1,6 @@ + + diff --git a/website_doc/template/sidebar.html b/website_doc/template/sidebar.html new file mode 100644 index 0000000..d0ff6c8 --- /dev/null +++ b/website_doc/template/sidebar.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/website_doc/template/styles.css b/website_doc/template/styles.css new file mode 100644 index 0000000..0818419 --- /dev/null +++ b/website_doc/template/styles.css @@ -0,0 +1,418 @@ +body { + margin: 0; + padding: 0; + background-color: #000; + font-size: 1rem; + font-family: "verdana", sans-serif; + line-height: 1.6; +} + +a { + text-decoration: none; + color: #00A7FF; +} +a:focus, a:hover { + text-decoration: underline; + color: #FFDC00; +} + +a:focus { + outline: 1px solid #00A7FF; + text-decoration: none; +} + +div#site_container { + max-width: 799px; + padding: 10px; + margin: 0 auto 0 auto; + color: #F5F4CB; +} + +/* ---------------------------------------------------------------------------- + * Header +*/ +header#header { + display: flex; + border-bottom: 2px dotted gray; +} + +a#site_link { + color: #FFF; +} + +img#header_logo_image { + width: 150px; + height: 150px; +} + +div#header_abouts { + padding: 0 20px; +} + +p#header_title { + font-size: 2rem; + padding: 22px 0 0 20px; + margin: 0; +} +p#header_about { + padding: 0; + margin: 0; + padding-left: 20px; + font-size: 1.5rem; +} + + +/* ---------------------------------------------------------------------------- + * Menu (navbar) +*/ +nav#menu { + margin: 0; + border: 2px dotted gray; + border-top: 0; +} +menu#menu_items { + margin: 0; + padding: 5px; + text-align: right; +} +li.menu_item { + list-style-type: none; + margin: 0 5px; + text-transform: capitalize; + font-size: 1.2rem; + display: inline; +} + +li.menu_item a { + color: #FFDC00; +} +li.menu_item a:hover { + color: #00A7FF; +} + + +/* ---------------------------------------------------------------------------- + * Article +*/ +article#article { + font-size: 1.2rem; +} + +img#article_logo { + width: 160px; + height: 90px; + border-top: 0; + float: inline-end; + margin-left: 10px; +} + +/* Page 404 structure */ +div.pic_err { + display: flex; + margin-bottom: 20px; +} + +figure.pic_err { + width: 400px; +} +img.pic_err { + width: 400px; +} + +figcaption.pic_err { + text-align: center; + color: gray; +} + +/* Article structure*/ +h1#article_title { + font-size: 1.8rem; + padding-top: 10px; + margin: 0; +} + +div#article_refs { + text-align: right; + font-size: 1.1rem; +} + +h2.tyto, h3.tyto, h4.tyto, h5.tyto, h6.tyto { + margin: 5px 0; + color: #FFF; + font-weight: bold; +} + +h2.tyto { + font-size: 1.7rem; +} + +h2.tyto { + font-size: 1.6rem; +} + +h3.tyto { + font-size: 1.5rem; +} + +h4.tyto { + font-size: 1.4rem; +} + +h5.tyto { + font-size: 1.3rem; +} + +h6.tyto { + font-size: 1.2rem; +} + +p.alert { + color: #FFFDA5; + font-weight: bold; +} +p.alert::before { + content: "!"; + color: red; + font-size: 4rem; + float: inline-start; + margin-right: 10px; +} + +code.tyto { + background-color: #4C4C4C; + padding: 0 5px; + color: #FFF; +} + +/* bcodes and codes */ +pre.bcode_pre { + font-size: .8rem; +} +ol.bcode_items { + border-left: 2px dotted #4C4C4C; +} +ol.bcode_items li.bcode_item::marker { + color: #4C4C4C;; +} +li.bcode_item { + line-height: 4px; +} +code.bcode_code { + margin-left: 10px; + color: #B2B2B2; + font-weight: bolder; +} + +/* Blockquotes */ +blockquote.tyto { + color: white; + margin: 0 30px; + width: 60% +} + +blockquote.tyto p { + margin: 0; + padding: 0; + line-height: 26px; +} +blockquote.tyto p::before, blockquote.tyto p::after { + position: relative; + color: yellow; + font-size: 2rem; +} + +blockquote.tyto p::before { + top: 10px; + content: "“"; +} +blockquote.tyto p::after { + top: 25px; + content: "”"; +} + +footer.tyto { + margin: 0; + padding: 0; + text-align: right; +} +footer.tyto a { + color: yellow; +} + +/* Lists */ +ul.tyto, ol.tyto { + margin: 0 0 0 20px; +} + +ul.tyto :is(ol, ul) { + border-left: 1px dashed gray; +} + +/* ---------------------------------------------------------------------------- + * Footer +*/ +footer#footer { + border-top: 2px dotted gray; + color: #FFF; +} + +div#footer_title { + color: #FFF; + font-size: 1.8rem; +} + +div#footer_about_menu { + display: flex; +} +div#footer_about { + width: 75% +} + +nav#footer_menu { + width: 25% +} + +p.footer_about_p { + text-align: justify; + font-size: .8rem; +} + +div#footer_credit { + text-align: center; + font-size: 1rem; + line-height: 8px +} + + +/*--------------------------------------------------------------------- + * For small screens + * under 500px +*/ + +@media all and (max-width: 500px) { + div#site_container { + max-width: 100%; + } + /* + * Header + */ + header#header { + display: block; + margin-bottom: 20px; + border: 0; + } + img#header_logo_image { + display: block; + margin: 5px auto; + } + p#header_title { + font-size: 2rem; + padding: 5px; + text-align: center; + } + p#header_about { + font-size: 1.4rem; + padding: 0; + text-align: center; + } + + /* + * Menu (navbar) + */ + nav#menu { + margin: 5px 0; + border: 0; + border: 2px dotted gray; + } + li.menu_item { + font-size: 1.1rem; + } + + /* + * Article + */ + article#article { + font-size: 1.2rem; + } + h1#article_title { + font-size: 1.3rem; + text-align: center; + } + div#article_refs { + text-align: center; + font-size: .9rem; + } + img#article_logo { + float: none; + display: block; + margin: 10px auto; + } + h2.tyto { + font-size: 1.4rem; + } + h3.tyto { + font-size: 1.3rem; + } + h4.tyto { + font-size: 1.2rem; + } + h5.tyto { + font-size: 1.1rem; + } + h6.tyto { + font-size: 1rem; + } + article#article ul { + padding: 0; + margin: 0; + margin-left: 20px; + } + pre.bcode_pre { + width: 60%; + font-size: .8rem; + } + ol.bcode_items { + margin: 0; + padding: 0 25px; + } + code.bcode_code { + margin: 0; + } + /* Page 404 structure */ + div.pic_err { + display: grid; + } + p.pic_err { + order: 2; + } + figure.pic_err { + width: 300px; + margin: 15px auto; + } + img.pic_err { + width: 300px; + } + figcaption.pic_err { + font-size: 1rem; + } + + /* + * Footer + */ + div#footer_title { + font-size: 1.2rem; + } + div#footer_about_menu { + display: block; + } + div#footer_about { + width: 100%; + font-size: .8rem; + } + nav#footer_menu { + width: 100% + } + div#footer_credit { + font-size: .7rem; + } +}