# amzxyz/rime-wanxiang architecture

> Architecture diagram of the GitHub repository amzxyz/rime-wanxiang, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/amzxyz/rime-wanxiang
- Repository: https://github.com/amzxyz/rime-wanxiang

## Overview

万象拼音是面向 Rime 的中文输入方案与词库，提供 Base、Pro、Lite、Pure 等配置。主要流程是用户输入，经 Rime 加载方案并利用拼音/双拼编码和词库提供候选；Lua 扩展增加筛选、注释、转换等能力。README 说明了主要功能与版本差异，但未提供源码摘录，因此图中只表示有文档依据的运行入口和能力，不推断各配置之间的具体调用关系。

Main entry points: [`opencc`](https://github.com/amzxyz/rime-wanxiang/tree/wanxiang/opencc) (繁简转换), [`wanxiang.schema.yaml`](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/wanxiang.schema.yaml) (Base 方案), [`custom/wanxiang_pro.schema.yaml`](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_pro.schema.yaml) (Pro 方案), [`custom/wanxiang_lite.schema.yaml`](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_lite.schema.yaml) (Lite 方案)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_schemes["输入方案"]
  node_base["Base 方案"]
  node_pro["Pro 方案"]
  node_lite["Lite 方案"]
  node_pure["Pure 方案"]
end

subgraph group_lexicon["词库与编码"]
  node_main_dict[("带调主词库<br/>[wanxiang.dict.yaml]")]
  node_pro_dict[("Pro 辅码词库")]
  node_lite_dict[("Lite 词库")]
  node_aux_codes["辅助码数据<br/>[aux_code.csv]"]
  node_dicts[("扩展词库")]
end

subgraph group_lua["Lua 扩展"]
  node_lua_runtime["Lua 扩展"]
  node_reorder["候选重排"]
  node_filter["候选筛选<br/>[super_filter.lua]"]
  node_english["中英混输<br/>[super_english.lua]"]
  node_custom_phrase["自定义造词<br/>[custom_phrase.lua]"]
  node_calculator["计算器"]
  node_symbols["符号扩展<br/>[super_symbols.lua]"]
  node_comments["超级注释"]
  node_time["时间工具<br/>[shijian.lua]"]
end

subgraph group_conversion["转换数据"]
  node_opencc["繁简转换"]
  node_opencc_data["转换字表"]
end

node_user(("输入用户"))
node_rime["Rime 引擎"]

node_user -->|"输入字符"| node_rime
node_rime -->|"加载方案"| node_base
node_rime -.->|"加载方案"| node_pro
node_rime -.->|"加载方案"| node_lite
node_rime -.->|"加载方案"| node_pure
node_opencc -->|"读取字表"| node_opencc_data

click node_base "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/wanxiang.schema.yaml"
click node_pro "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_pro.schema.yaml"
click node_lite "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_lite.schema.yaml"
click node_pure "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_pure.schema.yaml"
click node_main_dict "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/wanxiang.dict.yaml"
click node_pro_dict "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_pro.dict.yaml"
click node_lite_dict "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_lite.dict.yaml"
click node_aux_codes "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/aux_code.csv"
click node_dicts "https://github.com/amzxyz/rime-wanxiang/tree/wanxiang/dicts"
click node_lua_runtime "https://github.com/amzxyz/rime-wanxiang/tree/wanxiang/lua/wanxiang"
click node_reorder "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/context_reorder.lua"
click node_filter "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_filter.lua"
click node_english "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_english.lua"
click node_custom_phrase "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/custom_phrase.lua"
click node_calculator "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_calculator.lua"
click node_symbols "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_symbols.lua"
click node_comments "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_comment_preedit.lua"
click node_time "https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/shijian.lua"
click node_opencc "https://github.com/amzxyz/rime-wanxiang/tree/wanxiang/opencc"
click node_opencc_data "https://github.com/amzxyz/rime-wanxiang/tree/wanxiang/opencc/wanxiang"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_base,node_pro,node_lite,node_pure toneBlue
class node_main_dict,node_pro_dict,node_lite_dict,node_aux_codes,node_dicts toneAmber
class node_lua_runtime,node_reorder,node_filter,node_english,node_custom_phrase,node_calculator,node_symbols,node_comments,node_time toneMint
class node_opencc,node_opencc_data toneRose
class node_user,node_rime toneIndigo
```

## Components

### 输入方案

- [Base 方案](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/wanxiang.schema.yaml): `wanxiang.schema.yaml`
- [Pro 方案](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_pro.schema.yaml): `custom/wanxiang_pro.schema.yaml`
- [Lite 方案](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_lite.schema.yaml): `custom/wanxiang_lite.schema.yaml`
- [Pure 方案](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_pure.schema.yaml): `custom/wanxiang_pure.schema.yaml`

### 词库与编码

- [带调主词库](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/wanxiang.dict.yaml): `wanxiang.dict.yaml`
- [Pro 辅码词库](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_pro.dict.yaml): `custom/wanxiang_pro.dict.yaml`
- [Lite 词库](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/wanxiang_lite.dict.yaml): `custom/wanxiang_lite.dict.yaml`
- [辅助码数据](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/custom/aux_code.csv): `custom/aux_code.csv`
- [扩展词库](https://github.com/amzxyz/rime-wanxiang/tree/wanxiang/dicts): `dicts`

### Lua 扩展

- [Lua 扩展](https://github.com/amzxyz/rime-wanxiang/tree/wanxiang/lua/wanxiang): `lua/wanxiang`
- [候选重排](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/context_reorder.lua): `lua/wanxiang/context_reorder.lua`
- [候选筛选](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_filter.lua): `lua/wanxiang/super_filter.lua`
- [中英混输](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_english.lua): `lua/wanxiang/super_english.lua`
- [自定义造词](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/custom_phrase.lua): `lua/wanxiang/custom_phrase.lua`
- [计算器](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_calculator.lua): `lua/wanxiang/super_calculator.lua`
- [符号扩展](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_symbols.lua): `lua/wanxiang/super_symbols.lua`
- [超级注释](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/super_comment_preedit.lua): `lua/wanxiang/super_comment_preedit.lua`
- [时间工具](https://github.com/amzxyz/rime-wanxiang/blob/wanxiang/lua/wanxiang/shijian.lua): `lua/wanxiang/shijian.lua`

### 转换数据

- [繁简转换](https://github.com/amzxyz/rime-wanxiang/tree/wanxiang/opencc): `opencc`
- [转换字表](https://github.com/amzxyz/rime-wanxiang/tree/wanxiang/opencc/wanxiang): `opencc/wanxiang`

### Other components

- **输入用户**
- **Rime 引擎**

## Connections

- 输入用户 → Rime 引擎: 输入字符
- Rime 引擎 → Base 方案: 加载方案
- Rime 引擎 → Pro 方案: 加载方案
- Rime 引擎 → Lite 方案: 加载方案
- Rime 引擎 → Pure 方案: 加载方案
- 繁简转换 → 转换字表: 读取字表
