【问题标题】:Visual Studio Code - Tabs (editors) of the same project in multiple screensVisual Studio Code - 多个屏幕中同一项目的选项卡(编辑器)
【发布时间】:2018-04-25 22:31:22
【问题描述】:

使用多个屏幕我通常将多个类(文件)放在不同的屏幕中,这对我在重构、检查测试和比较更改时有很大帮助。 Visual Studio Code 不允许我将选项卡拖到窗口外并在(例如)另一个监视器中查看它。 我检查了文档和插件,但我发现的唯一方法是打开两个窗口,指向同一个项目(文件夹)并将它们放在不同的屏幕上。 我不喜欢这个解决方案,当我使用 TypeScript 观察代码更改时也会导致一些问题。

有什么建议吗?

我使用的是 Windows 10,最新版本的 VSCode。

【问题讨论】:

标签: visual-studio-code multiple-monitors


【解决方案1】:

Visual Studio Code 不允许我将选项卡拖到窗口外并在(例如)另一个监视器中查看它

实际上,VSCode 1.57(2021 年 5 月,4 年后)会提出一些接近的建议:

Improved editor drag and drop across windows

此版本改进了对将编辑器拖动到其他窗口的支持。您现在可以将差异编辑器、自定义编辑器和整个编辑器组拖到另一个窗口以在其中打开编辑器。

【讨论】:

  • 我在 1.56.2 这已经可以了,问题是您需要先打开一个新的 VSCode 实例,然后将文件放到那里,这意味着上面的解决方案仍然是第一次要在新窗口中移动文件时最快(然后在另一个屏幕中移动此窗口)。我很高兴真正拥有拖放体验(移动选项卡),从视频(和当前行为)看起来只是在目标窗口中打开同一个文件,创建一个副本,所以不是真正的 D&D
  • @Norcino 好的。我会检查1.57是否有任何差异。
  • 不幸的是,如果使用远程容器,这不起作用,这是可以理解的,但我将它们用于我所有的开发工作。
  • @JustinPhillips 是的。这是不幸的。
  • 这似乎是最快/最简单的方法,但这(连同上面的“在新窗口中复制工作区”答案)似乎并没有使我的文件的编辑保持同步。我在一个窗口中输入,但它没有反映在另一个窗口中(虽然它确实在同一窗口中的选项卡之间保持同步)。我想我至少可以将其用作仅查看。
【解决方案2】:

我的解决方案是使用 Remote-ssh 连接到自己并在另一个窗口中打开。这确实需要额外的资源。但我觉得这很舒服,因为我不需要创建额外的工作区。

【讨论】:

    【解决方案3】:

    我使用的一个小技巧是仅拉伸编辑器窗口以填充两个屏幕并在监视器之间拆分视图窗格,以便两个屏幕仅显示一个打开的文件。

    这是一种无需打开多个 VSC 实例即可工作的廉价 hack。

    这可能不是正确的解决方案,但它不会耗尽我所有的系统内存。

    【讨论】:

    • 这似乎是让双方同步的唯一方法
    【解决方案4】:

    我发现以下方法可以在多台显示器上工作(重要:它们必须具有相同的尺寸和分辨率):

    1. 在第一台显示器上以窗口模式打开 Visual Studio(在我的情况下是左显示器)
    2. 将窗口移到(左)上角
    3. 将窗口拉伸到第二台显示器(右)底角
    4. 多次点击“分屏编辑器”分屏
    5. 将代码段分隔符移到监视器之间的边缘

    这是一个老问题,但这种方式可能对某人有用。这不是很方便,但它确实有效。解决方案可能已经出现在VS本身了,但是我没有找到。

    【讨论】:

    • 我使用了这种方法,但是很繁琐,并且没有提供与拥有独立窗口相同的好处,例如在屏幕的左侧、右侧移动或最小化/最大化。
    • 这还不错(+1),但是当两个显示器的大小/分辨率不同时,窗口的第二个显示部分的文本内容可能太小/太大而无法使用。
    • 此解决方案仅适用于所有显示器直接串联/水平且尺寸/分辨率相同的情况。我有不同物理尺寸和不同高度的 2K 和 4K 显示器——所以它根本无法工作。窗口的一部分在小显示器上不在屏幕上,或者在大显示器上被截断——这两者都不好。
    【解决方案5】:

    简单的方法,但具有相同的缺点。将使用更多的内存和资源。是将你的项目包装在一个文件夹中。

    这是最好的事情。到现在为止!

    => 复制工作区

    打开命令面板ctrl+shift+pF1。 然后写dupl

    你会明白的

    就是这样。

    更多

    如果您想向工作空间添加更多文件夹。 => 转到File 然后Add Folder To Workspace 您可以添加任意数量。

     也更好更多

    您可以打开一个新窗口(例如:ctrl+n

    然后转到File > Add Folder To Workspace

    然后开始将文件夹添加到您的新工作区。您可以添加任何已经打开或未打开的文件夹。这也太棒了。例如,您可以在第二个屏幕中拥有所有需要的文件夹。

    编码愉快。

    【讨论】:

    • 对此的一个小评论:“打开命令面板ctrl+p。然后写dupl”。你应该写>dupl 我的意思是> 标记也很重要。
    • @SmartWaddles 这是我的错。这是一个错字(ctrl+shift+p)。我正在纠正那个。事情是打开命令托盘(我们也可以用F1打开它)。事实上,我知道我犯了这个错误。我说我会更新的。而且因为我的工作量很大。我忘了。万分感谢。现在更新了。
    • 哦,没关系。感谢您的评论! :)
    • 我的荣幸。也谢谢你。
    • 这很有帮助,是解决问题的好方法。
    【解决方案6】:

    解决方法是按CTRL+K,松开CTRL后按O。 这将在新窗口中打开当前文件。

    我不喜欢这个解决方案的几个地方: - 拖放不起作用 - 创建一个新的 VS Code 实例(对我来说)使用了 180MB 的内存 - 打开文件需要几秒钟(很慢) - 文件在原始窗口中也保持打开状态


    2019 年 3 月 20 日更新:

    您可以在此处跟踪功能请求:

    https://github.com/Microsoft/vscode/issues/10121

    并解释为什么这里很难实现:

    https://github.com/Microsoft/vscode/issues/10121#issuecomment-345770248


    2019 年 3 月 20 日更新:

    @Mär 强调的另一个重要副作用是:

    IntelliSense 无法建立文件时的引用 是在窗口中打开的,这里打开了整个项目

    【讨论】:

    • 与此答案相关:随时按CTRL+SHIFT+N打开一个新的VS Code实例,然后你可以将标签拖入其中。
    • 如果我按照这些说明并使用CTRL+KO 打开一个新的 VS Code 窗口,则 IntelliSense 无法建立在窗口中打开文件时的引用,打开整个项目的位置。
    • 在我的情况下 ctrl+k 只是打开搜索(与 ctrl + f 相同)
    • @dermoritz do CTRL+SHIFT+P 这将打开顶部的对话框,键入“打开键盘快捷键”,您可能已经使用了默认配置。您可以根据需要更改此设置并测试按键组合。快捷方式的名称是“在新窗口中打开活动文件”。见:code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf
    • 根据对该问题的最后评论,这是请求的第一个功能。该评论来自 2018 年底,距今已有两年多。谁在优先考虑 VS Code 的积压工作?我知道这可能很困难,但他们本可以在那个时候重写整个应用程序,对吧?
    猜你喜欢
    • 2021-09-15
    • 2022-10-08
    • 2020-09-14
    • 1970-01-01
    • 2016-06-01
    • 2018-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多