From 921db176c3c16a087c3ccd4cdda92adb6f8e1aab Mon Sep 17 00:00:00 2001 From: tejasashinde Date: Mon, 13 Apr 2026 14:09:25 +0530 Subject: [PATCH 1/3] feat: add Hindi language support to i18n module --- mempalace/i18n/hi.json | 44 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 mempalace/i18n/hi.json diff --git a/mempalace/i18n/hi.json b/mempalace/i18n/hi.json new file mode 100644 index 0000000..38065e9 --- /dev/null +++ b/mempalace/i18n/hi.json @@ -0,0 +1,44 @@ +{ + "lang": "hi", + "label": "हिंदी", + "terms": { + "palace": "महल", + "wing": "खंड", + "hall": "हॉल", + "closet": "अलमारी", + "drawer": "दराज़", + "mine": "खनन", + "search": "खोज", + "status": "स्थिति", + "init": "आरंभ", + "repair": "मरम्मत", + "migrate": "स्थानांतरित करना", + "entity": "इकाई", + "topic": "विषय" + }, + "cli": { + "mine_start": "{path} का खनन किया जा रहा है...", + "mine_complete": "पूर्ण हुआ। {closets} अलमारियाँ, {drawers} दराज़ें बनाई गईं।", + "mine_skip": "पहले ही खनन हो चुका है। पुनः खनन के लिए --force का उपयोग करें।", + "search_no_results": "इसके लिए कोई परिणाम नहीं मिले: {query}", + "search_results": "{count} परिणाम मिले:", + "status_palace": "महल: {path}", + "status_wings": "{count} खंड", + "status_closets": "{count} अलमारियाँ", + "status_drawers": "{count} दराज़ें", + "init_complete": "महल {path} पर प्रारंभ किया गया", + "init_exists": "महल पहले से ही {path} पर मौजूद है", + "repair_complete": "मरम्मत पूर्ण। {fixed} समस्याएँ ठीक की गईं।", + "migrate_complete": "स्थानांतरण पूर्ण।", + "no_palace": "कोई महल नहीं मिला। चलाएँ: mempalace init " + }, + "aaak": { + "instruction": "इंडेक्स प्रारूप में संपीड़न करें। शब्दों के बीच हाइफ़न और अवधारणाओं के बीच पाइप का प्रयोग करें। आर्टिकल और अनावश्यक शब्द हटाएँ। नाम और संख्याएँ सटीक रखें।" + }, + "regex": { + "topic_pattern": "[\\u0900-\\u097F]{2,}|[A-Za-z][A-Za-z0-9_]{2,}", + "stop_words": "यह वह ये वे कुछ कई अधिकांश प्रत्येक हर अन्य केवल ऐसा बहुत होगा सकता चाहिए ज़रूर हाँ ठीक भी फिर अब पहले अभी वापस पूरा बनाना लेना देना जानना सोचना चाहना ज़रूरत जा आ आना जाना ढूँढना काम जोड़ा सहेजा सत्र सारांश वार्तालाप स्रोत विषय के एक बार बस वास्तव में कहाँ यहाँ वहाँ धन्यवाद कृपया सही गलत करें किया करता करती चलाएँ उपयोग", + "quote_pattern": "\"([^\"]{20,200})\"", + "action_pattern": "(?:built|fixed|wrote|added|pushed|measured|tested|reviewed|created|deleted|updated|configured|deployed|migrated)\\s+[\\w\\s]{3,30}" + } +} From 33a98fb9d115ead95dee8de15133a40aa47f7e5d Mon Sep 17 00:00:00 2001 From: Tejas Shinde Date: Wed, 15 Apr 2026 23:33:24 +0530 Subject: [PATCH 2/3] Updated hi.json to support infra for entity,pronoun_patterns,dialogue_patterns,direct_address_pattern, project_verb_patterns and stopwords --- mempalace/i18n/hi.json | 64 ++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 62 insertions(+), 2 deletions(-) diff --git a/mempalace/i18n/hi.json b/mempalace/i18n/hi.json index 38065e9..f0e37c5 100644 --- a/mempalace/i18n/hi.json +++ b/mempalace/i18n/hi.json @@ -39,6 +39,66 @@ "topic_pattern": "[\\u0900-\\u097F]{2,}|[A-Za-z][A-Za-z0-9_]{2,}", "stop_words": "यह वह ये वे कुछ कई अधिकांश प्रत्येक हर अन्य केवल ऐसा बहुत होगा सकता चाहिए ज़रूर हाँ ठीक भी फिर अब पहले अभी वापस पूरा बनाना लेना देना जानना सोचना चाहना ज़रूरत जा आ आना जाना ढूँढना काम जोड़ा सहेजा सत्र सारांश वार्तालाप स्रोत विषय के एक बार बस वास्तव में कहाँ यहाँ वहाँ धन्यवाद कृपया सही गलत करें किया करता करती चलाएँ उपयोग", "quote_pattern": "\"([^\"]{20,200})\"", - "action_pattern": "(?:built|fixed|wrote|added|pushed|measured|tested|reviewed|created|deleted|updated|configured|deployed|migrated)\\s+[\\w\\s]{3,30}" + "action_pattern": "(?:बनाया|सुधारा|लिखा|जोड़ा|भेजा|मापा|परीक्षण किया|समीक्षा की|निर्मित किया|हटाया|अद्यतन किया|विन्यस्त किया|तैनात किया|स्थानांतरित किया)\\s+[\\w\\s]{3,30}" + }, + "entity": { + "candidate_pattern": "[\\u0900-\\u097F]{2,20}", + "multi_word_pattern": "[\\u0900-\\u097F]+(?:\\s+[\\u0900-\\u097F]+)+", + "person_verb_patterns": [ + "\\b{name}\\s+ने\\s+कहा\\b", + "\\b{name}\\s+ने\\s+पूछा\\b", + "\\b{name}\\s+ने\\s+बोला\\b", + "\\b{name}\\s+ने\\s+बताया\\b", + "\\b{name}\\s+हँसा\\b", + "\\b{name}\\s+मुस्कुराया\\b", + "\\b{name}\\s+रोया\\b", + "\\b{name}\\s+सोचा\\b", + "\\b{name}\\s+चाहा\\b", + "\\b{name}\\s+पसंद\\s+किया\\b", + "\\b{name}\\s+नफरत\\s+की\\b", + "\\b{name}\\s+जानता\\s+है\\b" + ], + "pronoun_patterns": [ + "\\bवह\\b", + "\\bउसने\\b", + "\\bउसे\\b", + "\\bउसका\\b", + "\\bउन्होंने\\b", + "\\bउनका\\b", + "\\bवे\\b" + ], + "dialogue_patterns": [ + "^>\\s*{name}[:\\s]", + "^{name}:\\s", + "^\\[{name}\\]", + "\"{name}\\s+ने\\s+कहा" + ], + "direct_address_pattern": "\\bअरे\\s+{name}\\b|\\bनमस्ते\\s+{name}\\b|\\bधन्यवाद\\s+{name}\\b", + "project_verb_patterns": [ + "\\b{name}\\s+बना\\s+रहा\\s+है\\b", + "\\b{name}\\s+बनाया\\b", + "\\b{name}\\s+लॉन्च\\s+किया\\b", + "\\b{name}\\s+तैनात\\s+किया\\b", + "\\b{name}\\s+इंस्टॉल\\s+किया\\b" + ], + "stopwords": [ + "यह", "वह", "ये", "वे", + "मैं", "हम", "आप", "तुम", + "मेरा", "हमारा", "आपका", "उसका", "उनका", + "मुझे", "हमें", "आपको", "उसे", "उन्हें", + "का", "के", "की", + "को", "से", "में", "पर", + "के लिए", "के साथ", "के बारे में", "द्वारा", + "और", "या", "लेकिन", "क्योंकि", "तो", "यदि", + "भी", "ही", "सिर्फ", "केवल", + "है", "हैं", "था", "थे", "थी", + "हो", "होगा", "होता", "होती", + "कर", "करना", "किया", "करते", "करती", + "नहीं", "हाँ", "शायद", "ज़रूर", + "क्या", "कौन", "कब", "कहाँ", "क्यों", "कैसे", + "अब", "तब", "यहाँ", "वहाँ", + "बहुत", "कम", "अधिक", + "कुछ", "कोई", "सब", "हर" + ] } -} +} \ No newline at end of file From 21da870bd0f6a9ec8a2ede60db72d0b63fa0daa7 Mon Sep 17 00:00:00 2001 From: tejasashinde Date: Thu, 16 Apr 2026 09:21:21 +0530 Subject: [PATCH 3/3] fix(i18n/hi): add boundary_chars and update action_pattern for Devanagari-aware matching --- mempalace/i18n/hi.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mempalace/i18n/hi.json b/mempalace/i18n/hi.json index f0e37c5..0333c2c 100644 --- a/mempalace/i18n/hi.json +++ b/mempalace/i18n/hi.json @@ -39,9 +39,10 @@ "topic_pattern": "[\\u0900-\\u097F]{2,}|[A-Za-z][A-Za-z0-9_]{2,}", "stop_words": "यह वह ये वे कुछ कई अधिकांश प्रत्येक हर अन्य केवल ऐसा बहुत होगा सकता चाहिए ज़रूर हाँ ठीक भी फिर अब पहले अभी वापस पूरा बनाना लेना देना जानना सोचना चाहना ज़रूरत जा आ आना जाना ढूँढना काम जोड़ा सहेजा सत्र सारांश वार्तालाप स्रोत विषय के एक बार बस वास्तव में कहाँ यहाँ वहाँ धन्यवाद कृपया सही गलत करें किया करता करती चलाएँ उपयोग", "quote_pattern": "\"([^\"]{20,200})\"", - "action_pattern": "(?:बनाया|सुधारा|लिखा|जोड़ा|भेजा|मापा|परीक्षण किया|समीक्षा की|निर्मित किया|हटाया|अद्यतन किया|विन्यस्त किया|तैनात किया|स्थानांतरित किया)\\s+[\\w\\s]{3,30}" + "action_pattern": "(?:बनाया|सुधारा|लिखा|जोड़ा|भेजा|मापा|परीक्षण किया|समीक्षा की|निर्मित किया|हटाया|अद्यतन किया|विन्यस्त किया|तैनात किया|स्थानांतरित किया)\\s+[\\w\\s\\u0900-\\u097F]{3,30}" }, "entity": { + "boundary_chars": "\\w\\u0900-\\u097F", "candidate_pattern": "[\\u0900-\\u097F]{2,20}", "multi_word_pattern": "[\\u0900-\\u097F]+(?:\\s+[\\u0900-\\u097F]+)+", "person_verb_patterns": [