No description
Find a file
2025-10-07 18:44:39 +02:00
src [bocal/lints] Fix #45. 2025-10-07 18:44:35 +02:00
.envrc From scratch 2024-03-09 15:02:26 +01:00
.gitignore Ajouté gitignore et commentaires dans bocal.rs 2024-03-31 11:03:23 +02:00
.rustfmt.toml From scratch 2024-03-09 15:02:26 +01:00
Cargo.lock [Cargo.toml] Updated git2. 2025-10-07 18:44:36 +02:00
Cargo.toml [Cargo.toml] Updated git2. 2025-10-07 18:44:36 +02:00
flake.lock Update 2025-10-07 18:44:39 +02:00
flake.nix Update 2025-10-07 18:44:31 +02:00
LICENSE [LICENSE] License ajoutée. 2024-03-31 13:51:16 +02:00
README.md Add two uncommentable features + deploy on BOcal 2025-03-26 22:43:29 +01:00

redac

  _____   __     _            _ 
 |  __ \ /_/    | |          ( )
 | |__) |___  __| | __ _  ___|/ 
 |  _  // _ \/ _` |/ _` |/ __|
 | | \ \  __/ (_| | (_| | (__
 |_|  \_\___|\__,_|\__,_|\___|

redac est un utilitaire visant à faciliter la vie de la rédaction d'un BOcal. Il a pour but de supplanter la plupart des scripts haut-niveau utilisés actuellement (2024-03-31).

Installation

Si vous utilisez Nix, redac fournit un flake avec le paquet prêt. Sinon, vous pouvez installer redac à la main.

Compilation

Pour compiler redac, vous avez besoin d'un compilateur Rust, ainsi que de Cargo. Cargo se charge de télécharger les dépendances. Une fois que vous êtes dans le dossier contenant le code source de redac, lancez cargo build --release. La compilation crée un dossier target, où tous les artifacts produits sont stockés. L'exécutable se trouve à target/release/redac.

Pour compiler sur le NFS, utilisez CARGO_HOME=/tmp/cargo CARGO_TARGET_DIR=/tmp/target cargo build --release puis cp /tmp/target/release/redac /users/guests/bocal/.local/bin/redac pour compiler en un temps raisonnable.

Déploiement

Pour installer redac, copiez simplement l'exécutable dans un dossier qui se trouve dans votre $PATH. Si vous êtes sur la session du BOcal, vous pouvez simplement le mettre dans ~/.local/bin.

Autocomplétion

redac supporte les autocomplétions pour quelques shells couramment utilisées. Pour les générer, utilisez la sous-commande redac completions.

Bash

Bash va chercher les complétions utilisateur dans le dossier ~/.local/share/bash-completion. Une fois vous être assuré que ce dossier existe, vous pouvez y installer les complétions pour redac en faisant redac completions bash >~/.local/share/bash-completion/redac.

Zsh

Quelqu'un sait surement où Zsh cherche les complétions. Trouvez une telle personne, et demandez-lui où mettre le résultat de redac completions zsh.

Configuration

redac a un fichier de configuration globale, et un fichier de configuration par projet.

Configuration globale

Vous pouvez générer un fichier de configuration, avec toutes les options disponibles et leur valeur par défaut, en lançant redac genere-config. Le fichier généré sera probablement ~/.config/redac/config.toml, mais cela dépend de votre configuration XDG. Le fichier est aussi automatiquement généré si redac a besoin d'y lire des valeurs, et que le fichier n'existe pas. Si des variables n'y sont pas définie, redac prendra leur valeur par défaut.

Si vous êtes en train d'éditer le BOcal sur la session du BOcal, vous n'avez probablement pas besoin de toucher à ce fichier. Si vous travaillez autre part, les variables supportées sont les suivantes:

  • abobocal_template_path: chemin vers le template des mails, pour la diffusion par mail du BOcal via abobocal. Les trous @VARIABLE seront remplacés par la valeur de VARIABLE. Les variables sont:
    • DIRPUB: le nom du directeur de publication, comme donné par redac dir-pub.
    • URL: l'URL publique du BOcal en train d'être publié sur le site du BOcal.
  • bocal_root: le dossier où sont stockés tous les BOcals. C'est là qu'un BOcal initialisé est créé.
  • squelette_path: le dossier contenant le squelette du BOcal, qui sera copié lors d'une initialisation.
  • compilation_path: le dossier contenant les dépendances nécessaires à la compilation, qui seront copiées dans .compilation lors de l'initialisation.

Configuration locale

Un fichier de configuration locale dans un projet est généré lors de l'initialisation d'un BOcal. Il est aussi recréé s'il est supprimé, et que redac essaye d'y lire des variables. Il se situe à .compilation/config.toml. Les variables supportées sont les suivantes:

  • files_for_compilation: un tableau de patterns, indiquant les fichiers que redac doit inclure dans la compilation d'un BOcal.
  • number_of_passes: nombre de passes minimum du compilateur LaTeX. Principalement utile lorsqu'il y a des références; à terme, redac détectera automatiquement lorsque plusieurs passes seront nécessaires.

Commandes

abobocal

Envoie le BOcal sur la liste de diffusion. Voir redac publier.

aled

Affiche de l'aide sur l'utilisation de redac.

arbre

Affiche l'arrangement actuel de contenu par pages, sous forme d'un arbre.

calendrier

Affiche la date en calendrier républicain d'aujourd'hui.

delier

Remplace les articles qui sont des liens vers des articles stockés sur le compte de quelqu'un d'autre par une copie de celui-ci. Conserve une sauvegarde du lien.

dirpub

Affiche le directeur de publication du BOcal.

faire

Compile le BOcal.

frigo

Gestion du frigo du BOcal.

liste

Affiche le contenu du frigo. Permet aussi de filtrer le contenu sur la base du nombre de mots, et de l'âge de l'article.

prendre

Déplace un article depuis le BOcal dans le frigo.

mettre

Déplace un article depuis le frigo dans le BOcal.

init

Initialise un nouveau BOcal.

maj-siteweb

Met à jour la version publiée sur le site web d'un BOcal qui aurait été modifié depuis sa publication. Houlàlà c'est pas bien, pas bien du tout, ne faites pas ça!

nouvel-an

Initialise un dossier pour la nouvelle année.

verif

Vérifie que rien n'a été oublié dans le BOcal, et qu'il est prêt pour être publié. Les critères vérifiés sont les suivants:

  • oubli d'un article: un article est présent dans le BOcal, mais n'a été inclut dans aucune page
  • duplicata d'un article: un article a été inclut deux fois
  • erreur typographique:
    • une espace normale a été utilisée au lieu d'une espace fine insécable avant un signe de ponctuation qui, d'après les règles typographiques française, devrait en avoir une. Ne pas mettre d'espace du tout fonctionne aussi, parce que dans ce cas LaTeX s'occupe d'en mettre une.
    • utilisation d'un point bas au lieu d'un point médian pour inclusiviser un mot. Essaye de ne pas faire de faux positifs, mais bon, personne n'est parfait...
    • une utilisation des mauvais guillemets. Le BOcal essaye d'utiliser uniquement les guillemets français.
    • utilisation de commandes LaTeX pour insérer un accent plutôt que d'insérer directement l'accent dans le fichier source, pour les lettres accentuées que l'on peut être en droit de trouver sur une disposition clavier française.
    • non-utilisation d'une commande LaTeX spécifique au BOcal pour un terme spécifique normalien. Les commandes disponibles sont (avec leurs variantes):
      • BOcal: \BOcal
        • BOcals: \BOcals
        • BOcaux: \BOcaux
        • BOcale (?): \BOcale
      • BOcaleux·se:
        • BOcaleux: \BOcaleux
        • BOcaleuse: \BOcaleuse
        • BOcaleuses: \BOcaleuses
        • BOcaleux·se: \BOcaleuxse
        • BOcaleux·ses: \BOcaleuxses
      • K-Fet: \kfet
        • en plus petit: \kfett
      • BUscal: \BUscal
      • BOUM: \BOUM
      • NdlR: \ndlr{} (d'arité 1)
      • COF: \cof
        • en plus petit: \coft
  • oubli d'une partie essentielle du BOcal:
    • le planning
    • l'édito
    • l'ours
    • la première page
    • la dernière page
  • faute "orthographique" liée au changement d'orthographe lors d'années bisextiles. Les mots suivants changes d'orthographe lors d'une année bisextile:
    • BOcals → BOcaux
    • turne → thurne
  • variable non ou mal définies: certaines variables peuvent ne pas avoir été définies, ou alors elles peuvent être mal définies. Les variables vérifiées sont:
    • la date: dateBOcal
    • le nombre de pages: nombrePages
    • le numéro du BOcal: numeroBOcal
  • présence d'un lien symbolique: les articles qui sont des liens symboliques doivent être copiés avant l'archivage du BOcal, en faisant redac delie
  • modèle non ou partiellement rempli: un modèle pas été complètement rempli. Les modèles vérifiés sont:
    • les brèves
    • l'édito
    • la Une (et son titre)
    • le planning
  • des TODO restants: chaque TODO doit être résolu avant que le BOcal puisse être publié (eh oui, espèce de feignant, au boulot, chop chop!)
  • taille du BOcal excessive: les images peuvent prendre beaucoup de place si elles ont une résolution excessive

publier

Publie le BOcal, c'est-à-dire le diffuse par mail (comme redac abobocal) et le publie sur le site web (comme redac siteweb).

siteweb

Publie le BOcal sur le site web. Voir redac publier

Licence

redac est licensé sous GPL-3.0 (dont une copie est disponible dans ce dépôt). À noter que cette licence ne s'applique que sur le code contenu dans ce dépôt: elle n'inclut pas les classes LaTeX du BOcal nécessaire à sa compilation, et ne couvre pas les résultats de la compilation d'un BOcal.