从配置文件加载设置到内存
(self)
| 997 | self.log(f"保存设置失败: {e}") |
| 998 | |
| 999 | def load_settings(self): |
| 1000 | """从配置文件加载设置到内存""" |
| 1001 | try: |
| 1002 | config = self.config_manager.load() or {} |
| 1003 | # —— 先恢复 provider_settings 和 current_provider —— |
| 1004 | self.provider_settings = config.get('provider_settings', self.provider_settings) |
| 1005 | current_provider = config.get('current_provider', 'OPENAI') |
| 1006 | self.provider_var.set(current_provider) |
| 1007 | |
| 1008 | # 恢复 LaTeX 包装符 |
| 1009 | latex_cfg = config.get('latex_settings', {}) |
| 1010 | self.inline_var.set(latex_cfg.get('inline_wrapper', '$ $')) |
| 1011 | self.block_var.set(latex_cfg.get('block_wrapper', '$$ $$')) |
| 1012 | self.processor.set_wrappers(self.inline_var.get(), self.block_var.get()) |
| 1013 | |
| 1014 | # 恢复热键相关设置 |
| 1015 | self.hotkey_var.set(config.get('hotkey', 'ctrl+shift+o')) |
| 1016 | self.screenshot_hotkey_var.set(config.get('screenshot_hotkey', '')) |
| 1017 | self.process_pre_exist_image_var.set(config.get('process_pre_exist_image', False)) |
| 1018 | self.processor.process_pre_exist_image = self.process_pre_exist_image_var.get() |
| 1019 | self.register_hotkey() |
| 1020 | self.register_screenshot_listener() |
| 1021 | |
| 1022 | # 从当前服务商配置里读取 prompt_settings |
| 1023 | prov_cfg = self.provider_settings.get(current_provider, {}) |
| 1024 | prompts = prov_cfg.get('prompt_settings', { |
| 1025 | 'system_prompt': self.processor.system_prompt, |
| 1026 | 'user_prompt': self.processor.user_prompt, |
| 1027 | 'max_tokens': self.processor.max_tokens |
| 1028 | }) |
| 1029 | self.system_prompt_var.set(prompts['system_prompt']) |
| 1030 | self.user_prompt_var.set(prompts['user_prompt']) |
| 1031 | self.max_tokens_var.set(prompts['max_tokens']) |
| 1032 | self.processor.set_prompts(prompts['system_prompt'], prompts['user_prompt']) |
| 1033 | self.processor.set_max_tokens(prompts['max_tokens']) |
| 1034 | |
| 1035 | # 应用服务商 UI 和 client 设置 |
| 1036 | self.apply_provider_settings() |
| 1037 | except Exception as e: |
| 1038 | self.log(f"加载配置失败: {e}") |
| 1039 | |
| 1040 | def quit_app(self): |
| 1041 | self.unregister_hotkey() # 取消热键注册 |
no test coverage detected