From 0115637d64bb0b654463ddbd6ac8f81206a98266 Mon Sep 17 00:00:00 2001 From: Plexi09 <138695340+Plexi09@users.noreply.github.com> Date: Wed, 4 Mar 2026 01:00:25 +0100 Subject: [PATCH 1/5] Add French localization for bot messages --- factorion-lib/src/fr.json | 46 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 factorion-lib/src/fr.json diff --git a/factorion-lib/src/fr.json b/factorion-lib/src/fr.json new file mode 100644 index 0000000..a6c5967 --- /dev/null +++ b/factorion-lib/src/fr.json @@ -0,0 +1,46 @@ +{ + "V2": { + "bot_disclaimer": "Cette action a été effectuée par un bot | [Code source](http://f.r0.fyi)", + "notes": { + "tower": "C'est tellement grand que je ne peux même pas donner son nombre de chiffres, je dois donc utiliser une tour de puissances de dix.", + "tower_mult": "Certains d'entre eux sont tellement grands que je ne peux même pas donner leur nombre de chiffres, je dois donc utiliser une tour de puissances de dix.", + "digits": "Ce nombre est si grand que je ne peux même pas bien l'estimer, je ne peux donc vous donner qu'une approximation de son nombre de chiffres.", + "digits_mult": "Certains de ces nombres sont si grands que je ne peux même pas bien les estimer, je ne peux donc vous donner qu'une approximation de leur nombre de chiffres.", + "approx": "C'est tellement grand que je ne peux pas le calculer, je vais donc devoir l'estimer.", + "approx_mult": "Certains de ces nombres sont si grands que je ne peux pas les calculer, je vais donc devoir les estimer.", + "round": "Je ne peux pas calculer une si grande factorielle de nombres décimaux. J'ai donc dû arrondir à un moment donné.", + "round_mult": "Je ne peux pas calculer de si grandes factorielles de nombres décimaux. J'ai donc dû arrondir à un moment donné.", + "too_big": "Si je postais le nombre en entier, le commentaire serait trop long. J'ai donc dû le convertir en notation scientifique.", + "too_big_mult": "Si je postais les nombres en entier, le commentaire serait trop long. J'ai donc dû les convertir en notation scientifique.", + "remove": "Si je postais tous les nombres, le commentaire serait trop long. J'ai donc dû en supprimer certains.", + "tetration": "C'est tellement grand que ça ne rentre même pas dans un commentaire avec une tour de puissances de 10, je vais donc devoir utiliser la tétration !", + "no_post": "Désolé, mais le texte de réponse pour tous ces nombres serait _vraiment_ long, donc je préfère même pas essayer de poster mdr", + "limit_hit": "Je me suis assez répété, je ne referai pas ce calcul.", + "mention": "Salut {mention} !" + }, + "format": { + "number_format": { + "decimal": "," + }, + "capitalize_calc": false, + "termial": "termielle", + "factorial": "factorielle", + "uple": "uple-{factorial}", + "sub": "sous-{factorial}", + "negative": "{factorial} négative", + "num_overrides": { + "2": "double-{factorial}", + "3": "triple-{factorial}" + }, + "force_num": false, + "nest": "{factorial} de {next}", + "exact": "La {factorial} de {number} est {result}", + "rough": "La {factorial} de {number} est à peu près {result}", + "approx": "La {factorial} de {number} est d'environ {result}", + "digits": "La {factorial} de {number} a environ {result} chiffres", + "order": "La {factorial} de {number} a de l'ordre de {result} chiffres", + "all_that": "Tout ça de {number} a de l'ordre de {result} chiffres", + "rough_number": "environ {number}" + } + } +} From e23460401da90483df72636cac1f1ce71b4ff761 Mon Sep 17 00:00:00 2001 From: Aras14HD Date: Wed, 4 Mar 2026 09:14:34 +0100 Subject: [PATCH 2/5] add fr to locale module, bump ver fix --- Cargo.lock | 6 +++--- factorion-bot-discord/Cargo.toml | 4 ++-- factorion-bot-reddit/Cargo.toml | 4 ++-- factorion-lib/Cargo.toml | 2 +- factorion-lib/src/locale.rs | 5 +++++ 5 files changed, 13 insertions(+), 8 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 50759bf..e0c5a2c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -399,7 +399,7 @@ dependencies = [ [[package]] name = "factorion-bot-discord" -version = "2.3.1" +version = "2.3.2" dependencies = [ "anyhow", "dotenvy", @@ -414,7 +414,7 @@ dependencies = [ [[package]] name = "factorion-bot-reddit" -version = "5.4.1" +version = "5.4.2" dependencies = [ "anyhow", "base64 0.22.1", @@ -434,7 +434,7 @@ dependencies = [ [[package]] name = "factorion-lib" -version = "4.3.1" +version = "4.3.2" dependencies = [ "arbtest", "chrono", diff --git a/factorion-bot-discord/Cargo.toml b/factorion-bot-discord/Cargo.toml index be47566..6ff53fc 100644 --- a/factorion-bot-discord/Cargo.toml +++ b/factorion-bot-discord/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "factorion-bot-discord" -version = "2.3.1" +version = "2.3.2" edition = "2024" description = "factorion-bot (for factorials and related) on Discord" license = "MIT" @@ -10,7 +10,7 @@ keywords = ["factorial", "termial", "bot", "math", "discord"] categories = ["mathematics", "web-programming", "parser-implementations"] [dependencies] -factorion-lib = { path = "../factorion-lib", version = "4.3.1", features = ["serde", "influxdb"] } +factorion-lib = { path = "../factorion-lib", version = "4.3.2", features = ["serde", "influxdb"] } serenity = { version = "0.12", default-features = false, features = ["client", "gateway", "rustls_backend", "model", "cache"] } tokio = { version = "1.48.0", features = ["macros", "rt-multi-thread", "time"] } dotenvy = "^0.15.7" diff --git a/factorion-bot-reddit/Cargo.toml b/factorion-bot-reddit/Cargo.toml index 452f00b..4fa2d5b 100644 --- a/factorion-bot-reddit/Cargo.toml +++ b/factorion-bot-reddit/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "factorion-bot-reddit" -version = "5.4.1" +version = "5.4.2" edition = "2024" description = "factorion-bot (for factorials and related) on Reddit" license = "MIT" @@ -10,7 +10,7 @@ keywords = ["factorial", "termial", "bot", "math"] categories = ["mathematics", "web-programming", "parser-implementations"] [dependencies] -factorion-lib = {path = "../factorion-lib", version = "4.3.1", features = ["serde", "influxdb"]} +factorion-lib = {path = "../factorion-lib", version = "4.3.2", features = ["serde", "influxdb"]} reqwest = { version = "0.12.28", features = ["json", "native-tls"], default-features = false } serde = { version = "1.0.219", default-features = false, features = ["derive"] } serde_json = "1.0.140" diff --git a/factorion-lib/Cargo.toml b/factorion-lib/Cargo.toml index 199a304..6b4ee0f 100644 --- a/factorion-lib/Cargo.toml +++ b/factorion-lib/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "factorion-lib" -version = "4.3.1" +version = "4.3.2" edition = "2024" description = "A library used to create bots to recognize and calculate factorials and related concepts" license = "MIT" diff --git a/factorion-lib/src/locale.rs b/factorion-lib/src/locale.rs index 30a245a..ee5b042 100644 --- a/factorion-lib/src/locale.rs +++ b/factorion-lib/src/locale.rs @@ -25,6 +25,10 @@ pub fn get_it() -> Locale<'static> { serde_json::de::from_str(include_str!("it.json")).unwrap() } #[cfg(any(feature = "serde", test))] +pub fn get_fr() -> Locale<'static> { + serde_json::de::from_str(include_str!("fr.json")).unwrap() +} +#[cfg(any(feature = "serde", test))] pub fn get_all() -> impl Iterator)> { [ ("en", get_en()), @@ -32,6 +36,7 @@ pub fn get_all() -> impl Iterator)> { ("de", get_de()), ("ru", get_ru()), ("it", get_it()), + ("fr", get_fr()), ] .into_iter() } From e0d46cde79f828edcca991635180e1753776b366 Mon Sep 17 00:00:00 2001 From: Plexi09 <138695340+Plexi09@users.noreply.github.com> Date: Thu, 11 Jun 2026 20:10:22 +0200 Subject: [PATCH 3/5] Added french subreddits --- factorion-bot-reddit/subreddits.json | 128 ++++++++++++++++++++++++++- 1 file changed, 126 insertions(+), 2 deletions(-) diff --git a/factorion-bot-reddit/subreddits.json b/factorion-bot-reddit/subreddits.json index 5b56ca2..c644c64 100644 --- a/factorion-bot-reddit/subreddits.json +++ b/factorion-bot-reddit/subreddits.json @@ -45,7 +45,6 @@ "locale": "tr", "mode": "All" }, - "russia": { "locale": "de" }, @@ -130,7 +129,132 @@ "learndutch": { "locale": "nl" }, - + "actu_memes": { + "locale": "fr" + }, + "actualite": { + "locale": "fr" + }, + "actufoot": { + "locale": "fr" + }, + "AntiTaff": { + "locale": "fr" + }, + "AskFrance": { + "locale": "fr" + }, + "AskMeuf": { + "locale": "fr" + }, + "AujourdhuiJaiAppris": { + "locale": "fr" + }, + "banalgens": { + "locale": "fr" + }, + "besoindeparler": { + "locale": "fr" + }, + "CestQuoiCeTruc": { + "locale": "fr" + }, + "chats": { + "locale": "fr" + }, + "CineSeries": { + "locale": "fr" + }, + "Confessionnal": { + "locale": "fr" + }, + "conseiljuridique": { + "locale": "fr" + }, + "developpeurs": { + "locale": "fr" + }, + "Dinosaure": { + "locale": "fr" + }, + "ecologie": { + "locale": "fr" + }, + "EnculerLesVoitures": { + "locale": "fr" + }, + "enseignants": { + "locale": "fr" + }, + "france": { + "locale": "fr" + }, + "francophonie": { + "locale": "fr" + }, + "geographie": { + "locale": "fr" + }, + "Histoire": { + "locale": "fr" + }, + "immobilier": { + "locale": "fr" + }, + "jeuxvideo": { + "locale": "fr" + }, + "joueurdugrenier": { + "locale": "fr" + }, + "lamourestdanslepre": { + "locale": "fr" + }, + "lemauvaiscoin": { + "locale": "fr" + }, + "Livres": { + "locale": "fr" + }, + "MinecraftFR": { + "locale": "fr" + }, + "opinionnonpopulaire": { + "locale": "fr" + }, + "ParentingFR": { + "locale": "fr" + }, + "PasDeQuestionIdiote": { + "locale": "fr" + }, + "PetitsBonheurs": { + "locale": "fr" + }, + "questionsante": { + "locale": "fr" + }, + "rance": { + "locale": "fr" + }, + "rienabranler": { + "locale": "fr" + }, + "SportsFR": { + "locale": "fr" + }, + "suisjeletroudeballe": { + "locale": "fr" + }, + "TropPeurDeDemander": { + "locale": "fr" + }, + "voiture": { + "locale": "fr" + }, + "vosfinances": { + "locale": "fr" + }, "": { "commands": { "shorten": true From b24708bb5225bb6900c361f4aaade4b50d902b53 Mon Sep 17 00:00:00 2001 From: tolik518 Date: Sat, 13 Jun 2026 14:52:52 +0200 Subject: [PATCH 4/5] fixed and bumped version --- Cargo.lock | 2 +- factorion-bot-discord/Cargo.toml | 1 - factorion-bot-reddit/Cargo.toml | 2 +- factorion-bot-reddit/README.md | 2 +- 4 files changed, 3 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d5dd477..92ccefc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -414,7 +414,7 @@ dependencies = [ [[package]] name = "factorion-bot-reddit" -version = "6.0.6" +version = "6.0.7" dependencies = [ "anyhow", "base64 0.22.1", diff --git a/factorion-bot-discord/Cargo.toml b/factorion-bot-discord/Cargo.toml index 1d96b64..72a9b56 100644 --- a/factorion-bot-discord/Cargo.toml +++ b/factorion-bot-discord/Cargo.toml @@ -1,6 +1,5 @@ [package] name = "factorion-bot-discord" -version = "2.3.2" version = "3.0.6" edition = "2024" description = "factorion-bot (for factorials and related) on Discord" diff --git a/factorion-bot-reddit/Cargo.toml b/factorion-bot-reddit/Cargo.toml index cf42d40..d573f3f 100644 --- a/factorion-bot-reddit/Cargo.toml +++ b/factorion-bot-reddit/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "factorion-bot-reddit" -version = "6.0.6" +version = "6.0.7" edition = "2024" description = "factorion-bot (for factorials and related) on Reddit" license = "MIT" diff --git a/factorion-bot-reddit/README.md b/factorion-bot-reddit/README.md index 323ee89..4cbab4a 100644 --- a/factorion-bot-reddit/README.md +++ b/factorion-bot-reddit/README.md @@ -14,7 +14,7 @@ This little fella is currently running on r/mathmemes, r/unexpectedfac ## Table of Contents - [Getting Started](#getting-started) - - [Prerequisites](#prerequisites) + - [Prerequisites](#prerequisites) - [Reddit API Credentials](#reddit-api-credentials) - [Installation](#installation) - [Configuration](#configuration) From dc60427b481aee7952db8985c49d236c33485246 Mon Sep 17 00:00:00 2001 From: tolik518 Date: Sat, 13 Jun 2026 15:26:22 +0200 Subject: [PATCH 5/5] removed deprecated v2 from the config --- factorion-lib/src/fr.json | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/factorion-lib/src/fr.json b/factorion-lib/src/fr.json index a6c5967..b84c609 100644 --- a/factorion-lib/src/fr.json +++ b/factorion-lib/src/fr.json @@ -1,6 +1,5 @@ { - "V2": { - "bot_disclaimer": "Cette action a été effectuée par un bot | [Code source](http://f.r0.fyi)", + "bot_disclaimer": "Cette action a été effectuée par un bot | [Code source](http://f.r0.fyi)", "notes": { "tower": "C'est tellement grand que je ne peux même pas donner son nombre de chiffres, je dois donc utiliser une tour de puissances de dix.", "tower_mult": "Certains d'entre eux sont tellement grands que je ne peux même pas donner leur nombre de chiffres, je dois donc utiliser une tour de puissances de dix.", @@ -42,5 +41,4 @@ "all_that": "Tout ça de {number} a de l'ordre de {result} chiffres", "rough_number": "environ {number}" } - } }