# -*- coding: utf-8 -*- """更新布局核算的新分页表。 分页从 7 个变成了 10 个(功能页删掉,分组散到各页)。 另外每页除了快捷按钮,还会渲染功能分组的按钮 —— 那部分是滚动区,不参与"一屏放得下"的核算。 """ from __future__ import annotations import sys from pathlib import Path TARGET = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote\_tests" r"\check_layout.py") NEW_TABS = '''# 现在分 10 页:功能页已删除,14 个分组散到各页。 # 括号里只统计**固定快捷按钮**;功能分组是滚动区,会显示在下面。 TABS = { "媒体": ["播放/暂停", "停止", "上一曲", "下一曲", "音量 +", "音量 -", "静音"], "屏幕": ["屏幕镜像", "截屏", "投图到电脑", "放音到电脑"], "文件": ["发送文件", "接收文件", "剪贴板→电脑", "取电脑剪贴板"], "语音": ["语音播报", "音色", "朗读剪贴板", "电脑音乐", "弹通知"], "电脑": ["快捷命令", "打开网址", "进程管理", "性能", "磁盘", "电量"], "网络": ["本机监听端口", "确认能连上"], "系统": ["锁屏", "睡眠", "关机", "重启", "取消定时关机", "定时关机"], "教室": ["屏蔽游戏网站", "结束游戏进程", "一键恢复全部", "看有哪些限制"], "效率": ["加待办", "看所有待办"], "娱乐": ["掷骰子", "抽奖", "抛硬币"], } # 每页还挂着哪些功能分组(这些在滚动区里) TAB_GROUPS = { "媒体": ["音量", "媒体"], "屏幕": ["显示"], "文件": ["文件"], "语音": ["静默"], "电脑": ["查看", "工具"], "网络": ["网络", "极客"], "系统": ["系统"], "教室": ["教室", "教学"], "效率": ["效率"], "娱乐": ["娱乐"], } LABELS = [label for group in TABS.values() for label in group] ''' def main() -> int: text = TARGET.read_text(encoding="utf-8") start = text.find("TABS = {") if start < 0: print(" [失败] 找不到 TABS") return 1 # 到 LABELS = [...] 那一行结束 end = text.find("\nLABELS = ", start) if end < 0: print(" [失败] 找不到 LABELS") return 1 end = text.find("\n", end + 1) text = text[:start] + NEW_TABS + text[end + 1:] TARGET.write_text(text, encoding="utf-8") print(" check_layout.py: 分页表已更新(10 页)") import ast try: ast.parse(TARGET.read_text(encoding="utf-8")) print(" 语法 OK") except SyntaxError as exc: print(f" 语法错误: {exc}") return 1 return 0 if __name__ == "__main__": sys.exit(main())