后台编辑
Roo Code 在后台编辑文件时,您无需中断工作——不再因自动 diff 视图而失去焦点。
实验性功能
这是一项实验性功能,它会更改文件编辑的显示方式。虽然它可以显著改善工作流程,但您需要通过源代码控制或文件历史记录手动审查更改。
概述
“后台编辑”设置是一项实验性功能,它会禁用 Roo Code 编辑文件时的自动 diff 视图显示。Roo 不会切换编辑器焦点以显示差异,而是在后台静默工作,让您能够继续编码而不会中断。此功能会影响所有文件编辑操作,包括写入、应用差异、搜索/替换、插入内容以及多文件应用差异工具。
主要优势
- 不间断的焦点:Roo 进行更改时,您仍可停留在当前文件中
- 更流畅的工作流程:无需在文件之间切换上下文
- 后台处理:文件编辑在后台静默进行
- 减少干扰:保持您的编码流程
- 性能:无需 UI 更新,文件操作速度更快
- 批量操作:非常适合大型重构或多个文件更新
权衡
- 无视觉确认:您不会看到更改时的差异
- 需要手动审查:通过 Git 或文件历史记录检查更改
- 即时反馈较少:更改不会立即显示
- 静默更改:文件更改时没有视觉通知 - 请定期检查 Git 状态
- 环境上下文有限:Roo 在其环境详细信息中看不到最近编辑的文件作为打开的标签页,因为它们没有视觉上打开
启用此功能
要启用后台编辑:
- 打开 Roo Code 设置(右上角的齿轮图标)
- 导航到“实验性”选项卡
- 在列表中找到“后台编辑”
- 切换设置以启用它
工作原理
默认行为(功能禁用)
禁用此功能时,当 Roo 编辑文件:
- 文件在编辑器中打开
- 出现显示更改的 diff 视图
- 您的焦点切换到修改后的文件
- 您审查并可能调整更改
启用功能后
启用后,Roo 的文件编辑:
- 在后台静默进行
- 不会打开新的编辑器标签页
- 不会显示 diff 视图
- 不会中断您当前的工作
- 仍会在内存中打开文件以进行诊断检测(不可见)
仍然会发生的情况
即使启用了此功能:
- 文件仍会在磁盘上被修改
- 更改会出现在源代码控制中
- 文件监视器和构建工具会检测到更改
- Roo 的聊天会显示编辑了哪些文件
- 错误检测和诊断继续正常工作
- 文件会在内存中打开以进行诊断目的(在编辑器中不可见)
- 为诊断检测而写入的延迟仍会被遵守
最佳使用场景
此功能特别有益于:
- 大型重构操作:当 Roo 需要更新许多文件时
- 批量文件更新:在多个文件中进行类似更改
- 性能敏感任务:当 UI 更新会减慢操作速度时
- 专注的编码会话:当您想要避免上下文切换时
- 自动化工作流:按顺序运行多个文件操作
最佳实践
使用此功能时:
- 使用版本控制:定期检查 Git 状态以跟踪更改
- 定期审查:不要让太多更改累积而不审查
- 选择性启用:考虑仅为特定任务类型启用
- 监控聊天:注意 Roo 关于文件修改的消息
- 检查诊断:确保编辑器的“问题”面板保持可见
常见问题
问:我还能看到 Roo 编辑了哪些文件吗? 答:可以,Roo 的聊天消息会列出所有修改的文件,并且更改会出现在源代码控制中。
问:如果我需要立即查看特定更改怎么办? 答:您可以手动打开文件并使用源代码控制查看差异。
问:这是否会影响 Roo 编辑文件的能力? 答:不会,Roo 仍然可以进行所有相同的编辑;只有显示行为会改变。所有文件编辑工具(写入、应用差异、搜索/替换、插入内容以及多文件应用差异)都会遵守此设置。
问:我可以仅为特定项目启用此功能吗? 答:目前,这是一个全局设置,会影响所有项目。
问:批准对话框会发生什么? 答:如果您没有自动批准它们,文件编辑批准仍然会出现;只有差异显示被抑制。
问:诊断和错误检测是否仍然有效? 答:是的,文件会在内存中打开以进行诊断检测,因此即使文件没有显示,错误检查也会继续正常工作。
问:此功能在设置中如何显示? 答:在“实验性”选项卡中,它标记为“后台编辑”,并附有关于防止编辑器焦点中断的描述。