# 铸键师
**Repository Path**: netfox/wordsmith
## Basic Information
- **Project Name**: 铸键师
- **Description**: 一个Windows桌面小程序,可将全拼码表转换为键道方案码表。
- **Primary Language**: 其他
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2020-10-30
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 项目介绍
铸键师(wordsmith),一个简易的Windows桌面小程序,主要功能为:将全拼词库(.txt)转换为键道方案码表文件(.txt)。其中,全拼词库采用utf-8无BOM编码,形如:
```
安得广厦千万间 an'de'guang'sha'qian'wan'jian
然后天梯石栈相钩连 ran'hou'tian'ti'shi'zhan'xiang'gou'lian
```
> * 全拼词库可以由深蓝词库转换、噬菌体等软件生成。
生成的键道方案码表形如:
```
xdgj 安得广厦千万间
rhtlu 然后天梯石栈相钩连
```
其他功能特性:
* 可自定义单字-形码映射表、全拼-音码映射表、单字字频表、被占用编码等转换参数
* 采用多线程技术+SQLite数据库,能够处理百万级词库
> * 通过适当修改,可以用于生成其他音形方案的码表文件。这里先挖个坑,以后也许会改成一个通用的程序(逃
>
> * 这个小程序是我很久以前(键道3时代,对键道方案感兴趣的朋友可移步[此处](https://thxnder.gitee.io/xxjd/))用aardio语言编写的,今天因为某些原因又翻出来了,怕以后丢失就托管到gitee。写得很随意,有需要的朋友凑合着用吧。
# 项目结构
本项目的主要结构如下:
| 目录或文件 | 说明 |
| ------------- | ------------------------------------------------------------ |
| lib/ | 本程序的核心代码,以用户库(.aardio)的形式存放于此。
其中,word2db.aardio文件与编码规则密切相关。未来的版本应将其抽离出来,以支持各种编码规则。 |
| wordyin/ | 存放全拼词库文件。请用无BOM的UTF-8编码。词条无需去重或排序。 |
| res/ | 存放转换参数。其中,chr2freq为单字-字频表,chr2xing为单字-形码表,qp2sp为全拼-音码表,pool为被占用编码列表(如果全拼词库里的词条生成的编码已被占用,就增加词条码长直到不被占用)。 |
| default.aproj | 工程文件。 |
| main.aardio | 本程序的图形界面代码文件。 |
| icon.ico | 图标。 |
支持的操作系统:Windows XP及以上。
调试方法:安装[aardio](http://www.aardio.com/),打开default.aproj,点运行即可调试程序;也可以点编译发布为exe文件。
# 使用方法
1. 运行。
2. 给定全拼词库文件和各参数文件。
> * 噬菌体生成的全拼词库文件可以直接给铸键师使用
3. 给定一个输出目录,Run。
> * 生成的码表是UTF-8无BOM编码的。
![铸键师预览图][图-铸键师]
# 更新记录
##### 20200418 - 0.0.1.40
* 更新res里的文件。
##### 20200418 - 0.0.1.39
* 修正一些文本描述。
* 托管代码到gitee。
##### 20200418之前(键道3时代)
* 编写程序。
[图-铸键师]: https://gitee.com/thxnder/xxjd/raw/master/web/pic/wordsmith.png "铸键师预览图"