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