更新 README.md
This commit is contained in:
parent
2ea550f798
commit
92cbb8a99e
575
README.md
575
README.md
@ -1,286 +1,291 @@
|
|||||||
ce编辑器 (Config Editor)
|
ce编辑器 (Config Editor)
|
||||||
一个功能强大的Python配置文件和用户管理工具,提供直观的GUI界面进行配置管理、用户认证和会话安全控制。
|
|
||||||
|
一个功能强大的Python配置文件和用户管理工具,提供直观的GUI界面进行配置管理、用户认证和会话安全控制。
|
||||||
主要特性
|
|
||||||
🔐 用户认证系统
|
主要特性
|
||||||
首次登录即注册:新用户首次登录自动创建账户
|
|
||||||
|
🔐 用户认证系统
|
||||||
二级密码保护:敏感操作需要二级密码验证
|
|
||||||
|
首次登录即注册:新用户首次登录自动创建账户
|
||||||
会话超时锁定:空闲超过10分钟自动锁定,需要重新登录
|
|
||||||
|
二级密码保护:敏感操作需要二级密码验证
|
||||||
安全的密码存储:使用JSON格式加密存储用户凭证
|
|
||||||
|
会话超时锁定:空闲超过10分钟自动锁定,需要重新登录
|
||||||
📁 配置文件管理
|
|
||||||
智能解析:自动识别Python配置文件中的配置项
|
安全的密码存储:使用JSON格式加密存储用户凭证
|
||||||
|
|
||||||
格式保持:编辑时保留原始注释、空格和格式
|
📁 配置文件管理
|
||||||
|
|
||||||
分组显示:按规则将配置项分组显示在不同标签页
|
智能解析:自动识别Python配置文件中的配置项
|
||||||
|
|
||||||
拖拽排序:支持通过拖拽重新排列配置项顺序
|
格式保持:编辑时保留原始注释、空格和格式
|
||||||
|
|
||||||
⚙️ 高级功能
|
分组显示:按规则将配置项分组显示在不同标签页
|
||||||
规则管理:可自定义显示名称、分组、校验规则等
|
|
||||||
|
拖拽排序:支持通过拖拽重新排列配置项顺序
|
||||||
加密字段:标记敏感配置项,修改时需要二级密码
|
|
||||||
|
⚙️ 高级功能
|
||||||
隐藏字段:隐藏不需要显示的配置项
|
|
||||||
|
规则管理:可自定义显示名称、分组、校验规则等
|
||||||
导入导出:支持规则文件的导入导出
|
|
||||||
|
加密字段:标记敏感配置项,修改时需要二级密码
|
||||||
校验规则:支持必填、范围、正则表达式等校验
|
|
||||||
|
隐藏字段:隐藏不需要显示的配置项
|
||||||
🎨 用户界面
|
|
||||||
现代化UI:基于PyQt6的响应式界面
|
导入导出:支持规则文件的导入导出
|
||||||
|
|
||||||
直观操作:拖拽排序、分组管理、批量操作
|
校验规则:支持必填、范围、正则表达式等校验
|
||||||
|
|
||||||
实时反馈:修改高亮、校验提示、状态监控
|
🎨 用户界面
|
||||||
|
|
||||||
主题支持:标准的Fusion主题,视觉舒适
|
现代化UI:基于PyQt6的响应式界面
|
||||||
|
|
||||||
系统要求
|
直观操作:拖拽排序、分组管理、批量操作
|
||||||
操作系统:Linux(已测试Ubuntu 20.04+)
|
|
||||||
|
实时反馈:修改高亮、校验提示、状态监控
|
||||||
Python版本:Python 3.8+
|
|
||||||
|
主题支持:标准的Fusion主题,视觉舒适
|
||||||
依赖:PyQt6 >= 6.5.0
|
|
||||||
|
系统要求
|
||||||
安装方法
|
操作系统:Linux(已测试Ubuntu 20.04+)
|
||||||
方法一:使用deb包安装(推荐)
|
|
||||||
确保已安装依赖:
|
Python版本:Python 3.8+
|
||||||
|
|
||||||
bash
|
依赖:PyQt6 >= 6.5.0
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install python3 python3-venv python3-pip
|
安装方法
|
||||||
安装deb包:
|
|
||||||
|
使用deb包安装
|
||||||
bash
|
确保已安装依赖:
|
||||||
sudo dpkg -i config-editor_1.3_amd64.deb
|
|
||||||
如果有依赖问题,运行:
|
bash
|
||||||
|
sudo apt-get update
|
||||||
bash
|
sudo apt-get install python3 python3-venv python3-pip
|
||||||
sudo apt-get install -f
|
安装deb包:
|
||||||
方法二:从源码运行
|
|
||||||
克隆或下载项目:
|
bash
|
||||||
|
sudo dpkg -i config-editor_1.3_amd64.deb
|
||||||
bash
|
|
||||||
git clone <项目仓库>
|
|
||||||
cd config-editor
|
使用指南
|
||||||
安装依赖:
|
|
||||||
|
首次运行设置
|
||||||
bash
|
启动程序:首次运行会显示登录界面
|
||||||
pip3 install PyQt6
|
|
||||||
运行程序:
|
用户注册:
|
||||||
|
|
||||||
bash
|
输入用户名和密码(首次登录自动创建账户)
|
||||||
python3 main.py
|
|
||||||
使用指南
|
选择账号配置文件保存目录
|
||||||
首次运行设置
|
|
||||||
启动程序:首次运行会显示登录界面
|
设置二级密码用于敏感操作验证
|
||||||
|
|
||||||
用户注册:
|
配置文件设置:
|
||||||
|
|
||||||
输入用户名和密码(首次登录自动创建账户)
|
登录后首次运行需要设置要编辑的配置文件路径
|
||||||
|
|
||||||
选择账号配置文件保存目录
|
支持浏览选择或手动输入文件路径
|
||||||
|
|
||||||
设置二级密码用于敏感操作验证
|
可以使用相对路径(相对于程序目录)
|
||||||
|
|
||||||
配置文件设置:
|
主要功能使用
|
||||||
|
|
||||||
登录后首次运行需要设置要编辑的配置文件路径
|
1. 配置文件编辑
|
||||||
|
|
||||||
支持浏览选择或手动输入文件路径
|
打开文件:通过菜单或工具栏打开Python配置文件
|
||||||
|
|
||||||
可以使用相对路径(相对于程序目录)
|
编辑配置:直接在界面上修改配置项值
|
||||||
|
|
||||||
主要功能使用
|
保存更改:保存时显示变更列表确认,保留原始格式
|
||||||
1. 配置文件编辑
|
|
||||||
打开文件:通过菜单或工具栏打开Python配置文件
|
重新加载:随时重新加载配置文件
|
||||||
|
|
||||||
编辑配置:直接在界面上修改配置项值
|
2. 规则管理
|
||||||
|
|
||||||
保存更改:保存时显示变更列表确认,保留原始格式
|
进入管理界面:点击"管理规则"按钮
|
||||||
|
|
||||||
重新加载:随时重新加载配置文件
|
配置项管理:设置显示名称、分组、类型、校验规则等
|
||||||
|
|
||||||
2. 规则管理
|
隐藏/显示:标记配置项为隐藏,或批量显示/隐藏
|
||||||
进入管理界面:点击"管理规则"按钮
|
|
||||||
|
分组管理:创建、删除和重命名分组
|
||||||
配置项管理:设置显示名称、分组、类型、校验规则等
|
|
||||||
|
3. 高级操作
|
||||||
隐藏/显示:标记配置项为隐藏,或批量显示/隐藏
|
|
||||||
|
拖拽排序:在分组内拖拽配置项标签重新排序
|
||||||
分组管理:创建、删除和重命名分组
|
|
||||||
|
加密字段:标记敏感字段,修改时需要二级密码
|
||||||
3. 高级操作
|
|
||||||
拖拽排序:在分组内拖拽配置项标签重新排序
|
批量操作:一键隐藏所有配置项,或全部显示
|
||||||
|
|
||||||
加密字段:标记敏感字段,修改时需要二级密码
|
导入导出:导入/导出规则文件,方便备份和迁移
|
||||||
|
|
||||||
批量操作:一键隐藏所有配置项,或全部显示
|
安全特性
|
||||||
|
|
||||||
导入导出:导入/导出规则文件,方便备份和迁移
|
会话管理
|
||||||
|
|
||||||
安全特性
|
程序监控用户活动,空闲10分钟后自动锁定
|
||||||
会话管理
|
|
||||||
程序监控用户活动,空闲10分钟后自动锁定
|
锁定后需要重新登录才能继续操作
|
||||||
|
|
||||||
锁定后需要重新登录才能继续操作
|
取消重新登录会退出程序以保障安全
|
||||||
|
|
||||||
取消重新登录会退出程序以保障安全
|
二级密码验证
|
||||||
|
|
||||||
二级密码验证
|
以下操作需要验证二级密码:
|
||||||
以下操作需要验证二级密码:
|
|
||||||
|
修改标记为加密的配置项
|
||||||
修改标记为加密的配置项
|
|
||||||
|
打开配置文件
|
||||||
打开配置文件
|
|
||||||
|
配置文件设置
|
||||||
配置文件设置
|
|
||||||
|
管理规则
|
||||||
管理规则
|
|
||||||
|
显示隐藏项
|
||||||
显示隐藏项
|
|
||||||
|
一键隐藏所有项
|
||||||
一键隐藏所有项
|
|
||||||
|
项目结构
|
||||||
项目结构
|
text
|
||||||
text
|
config-editor/
|
||||||
config-editor/
|
├── main.py # 程序入口
|
||||||
├── main.py # 程序入口
|
├── main_window.py # 主窗口实现
|
||||||
├── main_window.py # 主窗口实现
|
├── login/ # 登录认证模块
|
||||||
├── login/ # 登录认证模块
|
│ ├── login.py # 用户认证管理器
|
||||||
│ ├── login.py # 用户认证管理器
|
│ └── login_dialog.py # 登录对话框
|
||||||
│ └── login_dialog.py # 登录对话框
|
├── dialogs.py # 各种对话框
|
||||||
├── dialogs.py # 各种对话框
|
├── config_parser.py # 配置文件解析器
|
||||||
├── config_parser.py # 配置文件解析器
|
├── file_handler.py # 文件读写管理
|
||||||
├── file_handler.py # 文件读写管理
|
├── models.py # 数据模型定义
|
||||||
├── models.py # 数据模型定义
|
├── utils.py # 工具函数集合
|
||||||
├── utils.py # 工具函数集合
|
├── widgets.py # 自定义控件
|
||||||
├── widgets.py # 自定义控件
|
├── build.sh # 打包脚本
|
||||||
├── build.sh # 打包脚本
|
├── requirements.txt # 依赖列表
|
||||||
├── requirements.txt # 依赖列表
|
└── README.md # 本文档
|
||||||
└── README.md # 本文档
|
配置文件格式
|
||||||
配置文件格式
|
|
||||||
程序支持标准的Python配置文件格式:
|
程序支持标准的Python配置文件格式:
|
||||||
|
|
||||||
python
|
python
|
||||||
# 数据库配置
|
'''
|
||||||
DATABASE_HOST = "localhost"
|
# 数据库配置
|
||||||
DATABASE_PORT = 3306
|
DATABASE_HOST = "localhost"
|
||||||
DATABASE_USER = "admin"
|
DATABASE_PORT = 3306
|
||||||
DATABASE_PASSWORD = "secret_password" # 可以标记为加密字段
|
DATABASE_USER = "admin"
|
||||||
|
DATABASE_PASSWORD = "secret_password" # 可以标记为加密字段
|
||||||
# 应用配置
|
|
||||||
APP_NAME = "My Application"
|
# 应用配置
|
||||||
DEBUG_MODE = False
|
APP_NAME = "My Application"
|
||||||
LOG_LEVEL = "INFO"
|
DEBUG_MODE = False
|
||||||
|
LOG_LEVEL = "INFO"
|
||||||
# API配置
|
|
||||||
API_CONFIG = {
|
# API配置
|
||||||
"key": "your_api_key",
|
API_CONFIG = {
|
||||||
"timeout": 30,
|
"key": "your_api_key",
|
||||||
"retries": 3
|
"timeout": 30,
|
||||||
}
|
"retries": 3
|
||||||
故障排除
|
}
|
||||||
常见问题
|
'''
|
||||||
无法启动程序
|
|
||||||
|
故障排除
|
||||||
text
|
|
||||||
# 检查Python版本
|
常见问题
|
||||||
python3 --version
|
|
||||||
|
无法启动程序
|
||||||
# 检查PyQt6是否安装
|
|
||||||
python3 -c "import PyQt6"
|
text
|
||||||
虚拟环境问题(deb安装)
|
# 检查Python版本
|
||||||
|
python3 --version
|
||||||
bash
|
|
||||||
# 重新创建虚拟环境
|
# 检查PyQt6是否安装
|
||||||
sudo /opt/config-editor/init_venv.sh
|
python3 -c "import PyQt6"
|
||||||
|
虚拟环境问题(deb安装)
|
||||||
# 或使用管理工具
|
|
||||||
sudo python3 /opt/config-editor/manage_venv.py recreate
|
bash
|
||||||
权限问题
|
# 重新创建虚拟环境
|
||||||
|
sudo /opt/config-editor/init_venv.sh
|
||||||
bash
|
|
||||||
# 确保用户对以下目录有读写权限
|
# 或使用管理工具
|
||||||
~/.config_editor/
|
sudo python3 /opt/config-editor/manage_venv.py recreate
|
||||||
~/.config/config-editor/
|
权限问题
|
||||||
/opt/config-editor/config_editor_rules.json
|
|
||||||
配置文件无法保存
|
bash
|
||||||
|
# 确保用户对以下目录有读写权限
|
||||||
检查配置文件路径是否正确
|
~/.config_editor/
|
||||||
|
~/.config/config-editor/
|
||||||
确保对配置文件有写权限
|
/opt/config-editor/config_editor_rules.json
|
||||||
|
配置文件无法保存
|
||||||
检查磁盘空间是否充足
|
|
||||||
|
检查配置文件路径是否正确
|
||||||
调试模式
|
|
||||||
如需调试,可以查看以下日志位置:
|
确保对配置文件有写权限
|
||||||
|
|
||||||
控制台输出:直接运行python3 main.py查看输出
|
检查磁盘空间是否充足
|
||||||
|
|
||||||
用户设置:~/.config_editor/user_settings.json
|
调试模式
|
||||||
|
如需调试,可以查看以下日志位置:
|
||||||
账号文件:用户选择的目录中的users.json
|
|
||||||
|
控制台输出:直接运行python3 main.py查看输出
|
||||||
规则文件:程序目录下的config_editor_rules.json
|
|
||||||
|
用户设置:~/.config_editor/user_settings.json
|
||||||
开发指南
|
|
||||||
环境搭建
|
账号文件:用户选择的目录中的users.json
|
||||||
克隆项目:
|
|
||||||
|
规则文件:程序目录下的config_editor_rules.json
|
||||||
bash
|
|
||||||
git clone <项目仓库>
|
开发指南
|
||||||
cd config-editor
|
环境搭建
|
||||||
创建虚拟环境:
|
克隆项目:
|
||||||
|
|
||||||
bash
|
bash
|
||||||
python3 -m venv venv
|
git clone <项目仓库>
|
||||||
source venv/bin/activate
|
cd config-editor
|
||||||
安装依赖:
|
创建虚拟环境:
|
||||||
|
|
||||||
bash
|
bash
|
||||||
pip install -r requirements.txt
|
python3 -m venv venv
|
||||||
运行开发版本:
|
source venv/bin/activate
|
||||||
|
安装依赖:
|
||||||
bash
|
|
||||||
python main.py
|
bash
|
||||||
代码结构说明
|
pip install -r requirements.txt
|
||||||
main_window.py:主程序逻辑,包含UI生成、事件处理、会话管理等
|
运行开发版本:
|
||||||
|
|
||||||
login/:用户认证模块,处理登录、注册、密码验证
|
bash
|
||||||
|
python main.py
|
||||||
config_parser.py:配置文件解析,保持格式和注释
|
代码结构说明
|
||||||
|
main_window.py:主程序逻辑,包含UI生成、事件处理、会话管理等
|
||||||
dialogs.py:各种对话框的实现
|
|
||||||
|
login/:用户认证模块,处理登录、注册、密码验证
|
||||||
models.py:数据模型定义,使用Python dataclass
|
|
||||||
|
config_parser.py:配置文件解析,保持格式和注释
|
||||||
utils.py:工具函数,如规则合并、校验、格式化等
|
|
||||||
|
dialogs.py:各种对话框的实现
|
||||||
打包说明
|
|
||||||
使用提供的build.sh脚本打包:
|
models.py:数据模型定义,使用Python dataclass
|
||||||
|
|
||||||
bash
|
utils.py:工具函数,如规则合并、校验、格式化等
|
||||||
# 赋予执行权限
|
|
||||||
chmod +x build.sh
|
打包说明
|
||||||
|
使用提供的build.sh脚本打包:
|
||||||
# 执行打包
|
|
||||||
./build.sh
|
bash
|
||||||
打包脚本会:
|
# 赋予执行权限
|
||||||
|
chmod +x build.sh
|
||||||
清理之前的构建
|
|
||||||
|
# 执行打包
|
||||||
创建deb包目录结构
|
./build.sh
|
||||||
|
打包脚本会:
|
||||||
复制项目文件
|
|
||||||
|
清理之前的构建
|
||||||
创建启动脚本和桌面入口
|
|
||||||
|
创建deb包目录结构
|
||||||
生成虚拟环境初始化脚本
|
|
||||||
|
复制项目文件
|
||||||
|
|
||||||
|
创建启动脚本和桌面入口
|
||||||
|
|
||||||
|
生成虚拟环境初始化脚本
|
||||||
|
|
||||||
构建deb包
|
构建deb包
|
||||||
Loading…
x
Reference in New Issue
Block a user