From 14fba9eac452a82c784fb37bb6aad2e55eecceb5 Mon Sep 17 00:00:00 2001 From: JFronny Date: Sat, 18 Mar 2023 19:34:35 +0100 Subject: [PATCH] more metadata --- README.md | 3 + .../io/gitlab/jfronny/chattransform/Cfg.java | 124 ------------------ .../resources/assets/chat-transform/icon.png | Bin 0 -> 16769 bytes src/main/resources/fabric.mod.json | 2 +- 4 files changed, 4 insertions(+), 125 deletions(-) create mode 100644 README.md create mode 100644 src/client/resources/assets/chat-transform/icon.png diff --git a/README.md b/README.md new file mode 100644 index 0000000..1119592 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +Chat-Transform allows you to easily select text to replace in chat messages. +It comes preconfigured with replacements for romaji->hiragana and romaji->katakana transformation as well as good old owoification. +Replacements are applied to your messages as you type them or, if you prefer that, when you send them. \ No newline at end of file diff --git a/src/client/java/io/gitlab/jfronny/chattransform/Cfg.java b/src/client/java/io/gitlab/jfronny/chattransform/Cfg.java index 0867fc6..4cb8ef3 100644 --- a/src/client/java/io/gitlab/jfronny/chattransform/Cfg.java +++ b/src/client/java/io/gitlab/jfronny/chattransform/Cfg.java @@ -122,145 +122,21 @@ public class Cfg { public static void katakana() { substitutions.clear(); substitutions.put("-", "ー"); - // replaceTsus ッ for (char c : consonants) { substitutions.put("" + c + c, "ッ" + c); } - // replaceNs ン substitutions.put("nn", "ン"); - // romajiToKatakanaTrie.convert fromTable(katakanaTable); -// substitutions.put("che", "チェ"); -// substitutions.put(".", "。"); -// substitutions.put("shu", "シュ"); -// substitutions.put("sha", "シャ"); -// substitutions.put("\"", "「"); -// substitutions.put("\"", "」"); -// substitutions.put("sho", "ショ"); -// substitutions.put("jo", "ジョ"); -// substitutions.put("ⅴi", "ヴィ"); -// substitutions.put("ju", "ジュ"); -// substitutions.put("ja", "ジャ"); -// substitutions.put("ve", "ヴェ"); -// substitutions.put("ryo", "リョ"); -// substitutions.put("ryu", "リュ"); -// substitutions.put("rya", "リャ"); -// substitutions.put("cho", "チョ"); -// substitutions.put("chu", "チュ"); -// substitutions.put("cha", "チャ"); -// substitutions.put("hyo", "ヒョ"); -// substitutions.put("hyu", "ヒュ"); -// substitutions.put("hya", "ヒャ"); -// substitutions.put("tsi", "ツィ"); -// substitutions.put("dyo", "ヂョ"); -// substitutions.put("dyu", "ヂュ"); -// substitutions.put("dya", "ヂャ"); -// substitutions.put("fi", "フィ"); -// substitutions.put("byo", "ビョ"); -// substitutions.put("byu", "ビュ"); -// substitutions.put("fe", "フェ"); -// substitutions.put("bya", "ビャ"); -// substitutions.put("nyo", "ニョ"); -// substitutions.put("nyu", "ニュ"); -// substitutions.put("nya", "ニャ"); -// substitutions.put("pya", "ピャ"); -// substitutions.put("pyo", "ピョ"); -// substitutions.put("pyu", "ピュ"); -// substitutions.put("ti", "ティ"); -// substitutions.put("a", "ア"); -// substitutions.put("i", "イ"); -// substitutions.put("u", "ウ"); -// substitutions.put("e", "エ"); -// substitutions.put("o", "オ"); -// substitutions.put("ka", "カ"); -// substitutions.put("ga", "ガ"); -// substitutions.put("ki", "キ"); -// substitutions.put("gi", "ギ"); -// substitutions.put("ku", "ク"); -// substitutions.put("gu", "グ"); -// substitutions.put("ke", "ケ"); -// substitutions.put("ge", "ゲ"); -// substitutions.put("ko", "コ"); -// substitutions.put("go", "ゴ"); -// substitutions.put("sa", "サ"); -// substitutions.put("za", "ザ"); -// substitutions.put("shi", "シ"); -// substitutions.put("ji", "ジ"); -// substitutions.put("su", "ス"); -// substitutions.put("zu", "ズ"); -// substitutions.put("di", "ディ"); -// substitutions.put("se", "セ"); -// substitutions.put("wi", "ウィ"); -// substitutions.put("ze", "ゼ"); -// substitutions.put("so", "ソ"); -// substitutions.put("zo", "ゾ"); -// substitutions.put("ta", "タ"); -// substitutions.put("da", "ダ"); -// substitutions.put("chi", "チ"); -// substitutions.put("ji", "ヂ"); -// substitutions.put("tsu", "ツ"); -// substitutions.put("zu", "ヅ"); -// substitutions.put("te", "テ"); -// substitutions.put("de", "デ"); -// substitutions.put("we", "ウェ"); -// substitutions.put("to", "ト"); -// substitutions.put("do", "ド"); -// substitutions.put("na", "ナ"); -// substitutions.put("ni", "ニ"); -// substitutions.put("nu", "ヌ"); -// substitutions.put("ne", "ネ"); -// substitutions.put("no", "ノ"); -// substitutions.put("ha", "ハ"); -// substitutions.put("ba", "バ"); -// substitutions.put("kya", "キャ"); -// substitutions.put("pa", "パ"); -// substitutions.put("hi", "ヒ"); -// substitutions.put("bi", "ビ"); -// substitutions.put("pi", "ピ"); -// substitutions.put("fu", "フ"); -// substitutions.put("bu", "ブ"); -// substitutions.put("pu", "プ"); -// substitutions.put("he", "ヘ"); -// substitutions.put("be", "ベ"); -// substitutions.put("pe", "ペ"); -// substitutions.put("ho", "ホ"); -// substitutions.put("bo", "ボ"); -// substitutions.put("kyo", "キョ"); -// substitutions.put("po", "ポ"); -// substitutions.put("ma", "マ"); -// substitutions.put("kyu", "キュ"); -// substitutions.put("mi", "ミ"); -// substitutions.put("mu", "ム"); -// substitutions.put("me", "メ"); -// substitutions.put("mo", "モ"); -// substitutions.put("ya", "ヤ"); -// substitutions.put("yu", "ユ"); -// substitutions.put("yo", "ヨ"); -// substitutions.put("ra", "ラ"); -// substitutions.put("ri", "リ"); -// substitutions.put("ru", "ル"); -// substitutions.put("re", "レ"); -// substitutions.put("ro", "ロ"); -// substitutions.put("wa", "ワ"); -// substitutions.put("gyu", "ギュ"); -// substitutions.put("wo", "ヲ"); -// substitutions.put("n", "ン"); -// substitutions.put("gya", "ギャ"); -// substitutions.put("-", "ー"); -// substitutions.put("gyo", "ギョ"); } @Preset public static void hiragana() { substitutions.clear(); substitutions.put("-", "ー"); - // replaceTsus っ for (char c : consonants) { substitutions.put("" + c + c, "っ" + c); } - // replaceNs ん substitutions.put("nn", "ん"); - // romajiToKatakanaTrie.convert fromTable(hiraganaTable); } } diff --git a/src/client/resources/assets/chat-transform/icon.png b/src/client/resources/assets/chat-transform/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2bf298b520acd023b32f32d1789f311715191a96 GIT binary patch literal 16769 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 L4TVa%SMUB0UC)L{ literal 0 HcmV?d00001 diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index f5e7092..4c66686 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -3,7 +3,7 @@ "id": "chat-transform", "name": "Chat-Transform", "version": "${version}", - "description": "Apply substitutions to chat messages", + "description": "Apply substitutions (katakana, hiragana, owo, ...) to chat messages", "authors": ["JFronny"], "contact": { "email": "projects.contact@frohnmeyer-wds.de",