"""
concept_vocabulary.py
曾国藩项目的概念词表与 8 维人格维度

8 维度沿用阳明/苏轼框架, 词表适应曾国藩 (理学家 + 军事统帅 + 教化型家长) 语境:
  D1 政治姿态:    讥讽 / 拥护朝政
  D2 自我修正:    悔 / 愧 / 改过 / 反省
  D3 实践导向:    躬行 / 做事 / 力行
  D4 处变能力:    镇定 / 从容
  D5 决断力:      命令 / 判断
  D6 情感深度:    喜怒哀乐
  D7 隐逸倾向:    归田 / 闲 / 老 / 病
  D8 三教融合:    儒 / 佛 / 道

9 主题概念 (针对曾国藩):
  理学 / 军务 / 教化 / 修身 / 朋友 / 君臣 / 家族 / 湘军 / 战事
"""

CORE_CONCEPTS = {
    "理学": ["理", "性", "心", "诚", "敬", "格物", "致知"],
    "军务": ["军", "兵", "将", "营", "饷", "粮", "马"],
    "教化": ["学", "读", "书", "勤", "俭", "持家", "教"],
    "修身": ["身", "省", "戒", "畏", "慎", "改", "克"],
    "朋友": ["友", "同志", "门生", "故交"],
    "君臣": ["君", "臣", "圣", "朝廷", "上"],
    "家族": ["家", "祖", "父", "弟", "子", "侄"],
    "湘军": ["湘", "湘军", "湘乡", "曾", "宗", "湘勇"],
    "战事": ["战", "克", "破", "陷", "围", "援", "贼", "匪"],
}


def all_concepts_flat():
    seen = set()
    out = []
    for theme, words in CORE_CONCEPTS.items():
        for w in words:
            if w not in seen:
                seen.add(w)
                out.append(w)
    return out


PERSONALITY_DIMENSIONS = {
    "D1_政治姿态": {
        "讥讽朝政": ["讥讽", "讪", "诋", "怨", "谤", "讪上"],
        "拥护朝政": ["圣德", "圣明", "圣朝", "尧舜", "天恩"],
    },
    "D2_自我修正": {
        "承认错误": ["悔", "愧", "误", "过", "罪", "改", "自责"],
        "改弦更张": ["改之", "省身", "自省", "反思", "克己", "戒"],
    },
    "D3_实践导向": {
        "躬行亲为": ["躬", "亲为", "实做", "下手", "实地", "亲身", "力行"],
        "事上磨练": ["事上", "用力", "工夫", "磨", "练", "勤"],
    },
    "D4_处变能力": {
        "镇定": ["镇定", "从容", "安然", "泰然", "安之", "处变"],
        "自适": ["归去", "随遇", "随缘", "自适", "知命"],
    },
    "D5_决断力": {
        "命令": ["速行", "毋得", "即令", "切宜", "须", "急"],
        "判断": ["以为", "断", "决", "可", "不可", "宜"],
    },
    "D6_情感深度": {
        "正向情感": ["喜", "乐", "悦", "欢", "笑", "幸"],
        "负向情感": ["哀", "悲", "苦", "忧", "愁", "泣", "涕"],
        "怀念": ["忆", "思", "怀", "念", "梦"],
    },
    "D7_隐逸倾向": {
        "归田归隐": ["归田", "归去", "归休", "退", "隐", "山林", "辞官"],
        "闲适": ["闲", "适", "悠", "闲居", "野"],
        "老病": ["老", "病", "衰", "疾", "目疾"],
    },
    "D8_三教融合": {
        "儒": ["仁", "义", "礼", "孝", "忠", "诚", "敬"],
        "佛": ["禅", "佛", "因果", "缘", "空", "幻"],
        "道": ["道", "玄", "无为", "气", "丹", "静"],
    },
}


if __name__ == "__main__":
    print(f"=== 9 主题 / {len(all_concepts_flat())} 概念 ===")
    for t, w in CORE_CONCEPTS.items():
        print(f"  {t:5s} ({len(w)}): {' '.join(w)}")
    print()
    print(f"=== 8 维度 / {sum(len(s) for d in PERSONALITY_DIMENSIONS.values() for s in d.values())} 词 ===")
    for d, subs in PERSONALITY_DIMENSIONS.items():
        print(f"  {d}")
        for s, ws in subs.items():
            print(f"    {s}: {' '.join(ws)}")
