133 lines
3.9 KiB
Markdown
133 lines
3.9 KiB
Markdown
# 使用须知
|
||
|
||
##1. 使用范围
|
||
|
||
-本工具提供新格式(使用文字替代颜色)的导表功能,转表(将旧格式转换为新格式)功能,老格式转表功能在*`oldExcel`*分支。
|
||
|
||
-支持导出为lua/erl格式(需要在config.json文件中配置)。
|
||
|
||
-支持xls, xlsx文档的导表及转表功能(注意,请不要使用mac的另存为功能将xls文件保存为xlsx,该操作将导致颜色信息丢失)
|
||
|
||
##2. 使用方法
|
||
|
||
*\*如果第一次使用,请先安装python,并按照步骤3方式安装依赖\**
|
||
|
||
* 命令行版本:在mac或windows下tranExcel目录下执行一下命令:
|
||
|
||
```shell
|
||
python tran.py srcDir/ destDir/
|
||
```
|
||
|
||
将提取srcDir目录下的所有xls/xlsx文件,导出为lua和erl代码到destDir目录下。
|
||
|
||
* ui版本:在mac或者windows下打开 wxtran.py程序
|
||
|
||
## 3.安装python及依赖
|
||
|
||
如果导表机器没有安装`python2.7`,那么首先需要根据(https://www.python.org/downloads/release/python-2715/)安装`python2.7`,如果在`windows`使用,还需要配置环境变量,在`path`的最后新增`;C:\Python27\`
|
||
|
||
第一次使用前,`windows`下需要执行`install.bat`,`linux`/`mac`下需要执行`bash install.sh`,以后的运行不在需要执行这2步操作。
|
||
|
||
##4. 配置导出黑白名单
|
||
|
||
在`srcDir`目录下放置一个名为`config.json`的文件将使导表工具根据该配置进行导出过滤,以下为例:
|
||
|
||
```json
|
||
{
|
||
"erlang": true,
|
||
"lua": false,
|
||
"go": true,
|
||
"ignore": [
|
||
"strings/",
|
||
"!strings/cn/"
|
||
],
|
||
"erl_suffix": "erl",
|
||
"lua_suffix": "lua.bytes",
|
||
"lua_force_lowercase": true,
|
||
"forbid_xls": true,
|
||
"go_package": "config",
|
||
"lua_compact": false
|
||
}
|
||
```
|
||
|
||
其中`"erlang": true`代表导出erl 文件,`"lua": false`代表不导出lua文件,`"go: true`代表导出go文件
|
||
|
||
`ignore`为忽略项,使用目录或者文件名来忽略目录或文件的导出,使用`!`加目录及文件名来使得之前被忽略的文件重新导出。
|
||
|
||
上面示例的`config.json`文件代表 仅导出erl文件,并且不要导出`strings/`目录下的文件除了在`strings/cn`内的文件。
|
||
|
||
`erl_suffix`和`lua_suffix`用于指定导出文件的文件名后缀
|
||
|
||
`go_package`用于指定导出go代码的根目录的package名字
|
||
|
||
`lua_compact`用于控制是否输出紧凑格式的lua代码
|
||
|
||
## 5.转表
|
||
|
||
该软件提供将颜色格式的excel表转换为描述性字符的excel表,使用方式为:
|
||
|
||
```shell
|
||
python tran.py srcDir/ destDir/ version
|
||
```
|
||
|
||
注意:xls文件转表将导致excel文件格式丢失,仅保留文字信息。
|
||
|
||
## 6.新导表格式
|
||
|
||
excel文件中,第一行为注释信息例如:
|
||
|
||
```
|
||
//技能id | 技能类型 | 技能名字 | ...
|
||
```
|
||
|
||
<span style="color:red">注意:</span>注释行必须第一个必须以 `//` 开头
|
||
|
||
第二行为导出信息,即原来的颜色格式,例如:
|
||
|
||
```
|
||
required#both | required#client | optional#back | ...
|
||
```
|
||
|
||
其中,`required`和`optional`是一组可选项,分别代表该列内容必须存在 和 可以为空;
|
||
|
||
`both`,`client`,`server`,`none`是一组可选项,分别代表导出为2种语言,仅导出为客户端语言,仅导出为后端语言,不需要导出该列;
|
||
|
||
使用时使用`#`分割多个选项,如果该列格式信息为空,那么使用默认值`optional#both`。
|
||
|
||
第三行为列名字,例如:
|
||
|
||
```
|
||
*id | kind | form | trigger | ...
|
||
```
|
||
|
||
<span style="color:red">注意:</span> 导出的lua, erl 代码都使用hashmap来存储配置文件,而key通过列名字是否带`*`提现。带`*`的的列为key列。
|
||
|
||
第四行为列类型,例如:
|
||
|
||
```
|
||
int | int | [int] | [effect] | ...
|
||
```
|
||
|
||
|
||
|
||
## 更新日志
|
||
|
||
v1.0.4
|
||
|
||
* 增加更加详细的报错信息
|
||
|
||
v1.0.3
|
||
|
||
* lua格式支持导出json格式,**json格式仅支持lua**,json导出erlang或golang会报错
|
||
|
||
v1.0.2
|
||
|
||
* lua导出格式变更为多返回值`data, count, other_keys`,go导出格式变更。
|
||
|
||
v1.0.1
|
||
|
||
* 增加导出go代码的功能
|
||
|
||
v1.0.0
|
||
|
||
* 增加lua代码多键支持的功能 |