Plover 开源项目使用教程
ploverOpen source stenotype engine项目地址:https://gitcode.com/gh_mirrors/pl/plover
1. 项目的目录结构及介绍
Plover 项目的目录结构如下:
plover/
├── plover/
│ ├── assets/
│ ├── docs/
│ ├── gui/
│ ├── machine/
│ ├── plugin/
│ ├── steno_dictionary/
│ ├── system/
│ ├── tools/
│ ├── __init__.py
│ ├── __main__.py
│ ├── app.py
│ ├── config.py
│ ├── log.py
│ ├── main.py
│ ├── metadata.py
│ ├── steno.py
│ ├── steno_machine.py
│ ├── translation.py
│ ├── utils.py
│ └── version.py
├── scripts/
├── tests/
├── .gitignore
├── .travis.yml
├── LICENSE.txt
├── README.md
├── requirements.txt
├── setup.py
└── tox.ini
目录介绍
plover/
: 项目的主目录,包含了所有的源代码文件。assets/
: 存放项目所需的静态资源文件。docs/
: 存放项目的文档文件。gui/
: 存放图形用户界面相关的代码。machine/
: 存放与硬件设备交互的代码。plugin/
: 存放插件相关的代码。steno_dictionary/
: 存放速记字典相关的代码。system/
: 存放系统配置相关的代码。tools/
: 存放工具脚本。__init__.py
: 初始化文件。__main__.py
: 项目的入口文件。app.py
: 应用程序的主要逻辑文件。config.py
: 配置文件相关的代码。log.py
: 日志记录相关的代码。main.py
: 主程序文件。metadata.py
: 元数据相关的代码。steno.py
: 速记相关的代码。steno_machine.py
: 速记机相关的代码。translation.py
: 翻译相关的代码。utils.py
: 工具函数相关的代码。version.py
: 版本信息相关的代码。
scripts/
: 存放一些脚本文件。tests/
: 存放测试相关的文件。.gitignore
: Git 忽略文件配置。.travis.yml
: Travis CI 配置文件。LICENSE.txt
: 项目许可证文件。README.md
: 项目说明文件。requirements.txt
: 项目依赖文件。setup.py
: 安装脚本文件。tox.ini
: Tox 配置文件。
2. 项目的启动文件介绍
Plover 项目的启动文件是 plover/__main__.py
。这个文件是项目的入口点,负责启动整个应用程序。
启动文件内容
import sys
from plover import main
if __name__ == '__main__':
sys.exit(main.main())
启动流程
- 导入
sys
模块和plover.main
模块。 - 检查当前模块是否是主模块。
- 如果是主模块,调用
main.main()
函数并退出程序。
3. 项目的配置文件介绍
Plover 项目的配置文件是 plover/config.py
。这个文件包含了项目的配置信息和相关的配置函数。
配置文件内容
import os
import json
CONFIG_DIR = os.path.expanduser('~/.plover')
CONFIG_FILE = os.path.join(CONFIG_DIR, 'plover.cfg')
def load_config():
if not os.path.exists(CONFIG_FILE):
return {}
with open(CONFIG_FILE, 'r') as f:
return json.load(f)
def save_config(config):
if not os.path.exists(CONFIG_DIR):
os.makedirs(CONFIG_DIR)
with open(CONFIG_FILE, 'w') as f:
json.dump(config, f, indent=4)
配置文件功能
- `
ploverOpen source stenotype engine项目地址:https://gitcode.com/gh_mirrors/pl/plover