Visual Studio Code - 防止同一文件被打开两次

39

输入图像描述

之前有几次我打开同一个文件两次并且忘了它,这意味着我在两个面板中都编辑了同一文件,也就是说有两个版本的同一个文件。这导致了一些错误以及我不理解为什么我的代码不能正常运行。

是否有一种设置可以防止同一文件被打开两次?

4个回答

80

更新 v1.11.0 - 2017年3月

提交了这个PR,现在你可以使用以下设置:

"workbench.editor.revealIfOpen": true

在设置界面中搜索:工作台 > 编辑器:如果打开则显示

有没有设置可以让它跨实例工作?我使用多个显示器,希望每个显示器都有一个实例,并且它们之间相互了解,以便在从另一个实例“打开”文件时将其置于前台。 - AberrantWolf
1
@AberrantWolf,我不确定我是否理解了这种情况。如果在不同监视器上打开的窗口都显示相同的“工作区” - 无论这是一个具有名称的工作区还是通过打开文件夹隐含创建的工作区 - 我很难想象这有什么用处。一般来说,我不知道VSCode中有哪些功能可以跨Windows / workspaces工作。您能否澄清您的情况?或者,如果您的用例对您和VSCode团队有意义,则有机会贡献该功能?我的团队合作经验非常愉快,强烈推荐! - rawpower
@rawpower 在编辑代码时(主要是C++),我喜欢将许多文件排列开来,从不隐藏任何一个文件 -- 使用选项卡会失去上下文,而当处理复杂系统时,这真的很令人沮丧。因此,在传统的Visual Studio中,我每个显示器都有一个“窗口”(我使用3个显示器),每个窗口有2列,这通常足以不需要使用选项卡。我想在VSCode中做同样的事情。但是,很容易意外地尝试在B窗口中打开已经在A窗口中打开的文件;我希望它只是将A窗口的缓冲区置于前台。 - AberrantWolf
1
@ahnbizcad 所以,打开设置(Cmd/Ctrl +),然后单击右上角最左边的图标(工具提示显示“打开设置(JSON)”),设置 UI 就会消失,JSON 就出现了。立即在左花括号 { 后插入文本,不要忘记加逗号。如果您不知道什么是 JSON 或者害怕破坏某些东西,只需使用 UI:当设置 UI 打开时,在搜索框中键入“reveal”,第二个设置是“Workbench>Editor: Reveal If Open”(附有上述内容的详细说明),只需选中复选框即可。 - rawpower
只有在 "window.openFilesInNewWindow": "off" 的情况下才有效。也就是说,您正在同一窗口中打开已经打开的文件。如果 vscode 默认在新窗口中打开文件,则 revealIfOpen 选项根本不起作用。 - Alex
显示剩余9条评论

2
看起来在“编辑-首选项”下有一个复选框用于设置“工作台-编辑器:如果打开则显示”。enter image description here

1
rawpower的接受答案说的是同样的事情,复制粘贴有什么意义呢? - rioV8
关键是,它让你真正找到它,而不是接受答案。 - undefined

1
只需更新VS Code,如果更新后仍无法正常工作,请重新安装它。我也遇到过这种情况,重新安装解决了我的问题。

是的,对我来说不起作用。它曾经有效,但有一天我注意到同一个文件在多个组中打开。然后我留意到,即使文件已经打开,它仍然会完全打开一个新的标签页。也许我需要尝试重新安装一下。(我使用的是1.84.2版本,截至本帖发布时最新版本) - undefined

0

据我所知,该应用程序的最新更新已经修复了这个问题,现在编辑一个文件时,其他文件也会同时更新。


1
您IP地址为143.198.54.68,由于运营成本限制,当前对于免费用户的使用频率限制为每个IP每72小时10次对话,如需解除限制,请点击左下角设置图标按钮(手机用户先点击左上角菜单按钮)。 - rawpower
@rawpower 我不知道有没有,你得看一下文档 :) - basickarl
我目前正在努力修复中 ;)(所以,没有这个选项) - rawpower

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接