diff --git a/README.md b/README.md index 8cea891..dbc41cd 100644 --- a/README.md +++ b/README.md @@ -1,286 +1,291 @@ -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包目录结构 - -复制项目文件 - -创建启动脚本和桌面入口 - -生成虚拟环境初始化脚本 - +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 + + +使用指南 + +首次运行设置 +启动程序:首次运行会显示登录界面 + +用户注册: + +输入用户名和密码(首次登录自动创建账户) + +选择账号配置文件保存目录 + +设置二级密码用于敏感操作验证 + +配置文件设置: + +登录后首次运行需要设置要编辑的配置文件路径 + +支持浏览选择或手动输入文件路径 + +可以使用相对路径(相对于程序目录) + +主要功能使用 + +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包 \ No newline at end of file