Mac:3 显示器设置:我的桌面设置不断在显示器之间切换位置

Sai*_*y J 150 mac multiple-monitors macbook macbook-pro osx-el-capitan

情况:

我有一台 MacBook Pro MacBook Pro (Retina, 15-inch, Mid 2014)

ASUS VS247 Display通过 Thunderbolt 连接2 个外部监视器。

在每台显示器上,我打开了多个桌面/空间。

问题:

当我从睡眠中唤醒我的 mac 时,有时,它会切换显示器的识别,Monitor2 中的所有桌面/空间现在都在 Monitor3 上,Monitor3 中的所有桌面/空间都在 Monitor2 上。

主显示器(笔记本电脑上的)始终保持不变。

这种情况平均每月发生一次。我无法找到导致这种情况发生的具体原因。

我有我的 Thunderbolt 电缆和端口颜色编码。所以,我绝对不会切换电缆。

更多信息:

这就是我的任务控制设置的样子。

[NO] Automatically rearrange spaces based on most recent use?
[Yes] When switching to an application, switch to a Space with open windows for the application.
[No] Group windows by application.
[Yes] Displays have separate Spaces.
Run Code Online (Sandbox Code Playgroud)

有没有其他人有同样的问题?如果是这样有没有解决办法?

ave*_*yer 72

我使用https://github.com/jakehilborn/displayplacer “解决”了这个问题。如果我连接的集线器和显示器不正确,我现在可以运行脚本(通过热键)来解决这个问题,而不必旋转屏幕或重新连接电缆。

首先,确保您的显示器配置正确。然后安装 displayplacer 并运行它。

brew tap jakehilborn/jakehilborn && brew install displayplacer
displayplacer list
Run Code Online (Sandbox Code Playgroud)

在输出的底部,您将看到它生成的命令会将您的显示器放回当前配置。例子:

displayplacer "id:C00DE6B5-2BF1-D707-8452-14BD6BFAAC84 res:1920x1080 hz:60 color_depth:8 scaling:off origin:(0,0) degree:0" "id:D0823E00-B252-0F5C-DE87-D142F95D0CB4 res:1680x1050 color_depth:8 scaling:on origin:(-1680,0) degree:0" "id:1A13BBCA-7176-912E-4048-7E7E22D786C2 res:1080x1920 hz:60 color_depth:8 scaling:off origin:(1920,-386) degree:90"
Run Code Online (Sandbox Code Playgroud)

然后我创建了一个服务/操作并为此项目设置了一个键盘快捷键。现在,快速击键将解决该问题。

更多信息:丹的答案是我这个问题的根源。我有两个相同的显示器,都通过 Displayport 连接到集线器。该集线器通过一个 USB-C 连接连接到我的 Mac。随机,扩展坞将以不同的顺序加载设置,这会导致此问题。由于我的第三台显示器旋转了,这使得两个屏幕现在不能正确旋转。

几个月来,我一直在断开集线器上的两个 DisplayPort 连接,然后以相反的顺序重新连接。这解决了问题,但它真的很烦人。

  • @aveneyer 我试过 displayplacer 但它没有帮助。问题在于唤醒后实际空间被移动到不同的监视器,但监视器和监视器设置保持不变。因此,即使所有窗口都是错误的,`displayplacer list` 给了我相同的值。它完全切换了您可能设置的空间,突然间我右侧的显示器有 2 个空间,而中间只有一个。应该反过来。 (8认同)
  • 这对我来说就像一个魅力。赞成! (2认同)
  • 不知何故,这仍然无法解决我面前的显示器突然不再是“LG HDR 4K (1)”而是“LG HDR 4K (2)”的问题,反之亦然。因此,在应用程序中选择“显示 2”或“显示 3”会选择不同的屏幕。有没有办法也改变这一点? (2认同)
  • 我在新的 Macbook 上将它与 Better Touch Tool 一起使用。我可以自定义顶部触摸栏,现在添加了一个 1 按钮单击以自动调整显示器。很好的解决方案,谢谢。 (2认同)

Jos*_*osh 57

是的!我有 4 个外接显示器,这让我发疯,直到我弄清楚为止。在“排列”窗口中的屏幕之间移动“顶部”栏。将它分配到不同的屏幕,您会发现一旦找到“正确”的屏幕,它就会解决您的问题。我不记得为什么这有效,但确实如此。

如何在 Mac 窗口之间移动顶栏

或者,您也可以拖动 Mac 窗口之一,然后将其放回原位。

如何快速移动 Mac 窗口排列

  • 这也只是一个临时解决方案,每次出现此问题时都需要进行。当笔记本电脑从睡眠模式唤醒时(所有屏幕仍然插入),这也会发生在我身上 (7认同)
  • 这对我不起作用。:( (6认同)
  • 截图在这里:https://apple.stackexchange.com/a/296905/206646 (4认同)
  • 那太棒了。我最近也不得不重新阅读我自己的帖子! (2认同)

Dan*_*Dan 20

对我来说,这取决于我先插入哪条电缆,即使我将它们插入相同的端口也是如此。我正在使用两条 HDMI 电缆。如果我的屏幕最终交换了,我只需拔掉其中一根电缆并将其重新插入。如果屏幕仍然交换,我拔下另一根并重新插入。屏幕将同时闪烁,它们将交换回普通的。

这似乎是一个操作系统错误,但我无法确定。

  • 我们使用 CalDigit TB3 坞站并间歇性地遇到此问题 (4认同)

Bil*_*lly 5

更新 - 我想出了如何通过自动重新排列显示菜单栏系统首选项来实现此功能。请从此线程查看我的解决方案。该解决方案适用于所有必须手动更改显示系统首选项中的菜单栏的人。

\n\n

不幸的是,我已经尝试了所有提到的解决方案,并且唯一适用于我的计算机(macOS 10.14.6、MacBook Pro 15 英寸、2018、Radeon Pro Vega 20 4 GB \xe2\x80\x93\xc2\xa0查看屏幕截图)正在打开“系统偏好设置”中的“显示”,然后拖动菜单栏穿过所有显示器,最后回到您开始的主显示器上。真是太痛苦了...

\n\n

对于那些使用 Keyboard Maestro 方法(并且它适合您),但您使用另一个 shell(如 oh-my-zsh)的人,您在使用脚本时会遇到问题,displayplacer因为它使用的是 bash 而不是 oh-my-嘘。我在下面列出了两个修复此问题的方法。

\n\n

选项 1:在 .bash_profile 中导出 PATH

\n\n
    \n
  1. 使用编辑器编辑 .bash_profile
  2. \n
  3. 插入export PATH="$PATH:/usr/local/bin"
  4. \n
  5. 保存文件并重新启动终端或 Keyboard Maestro
  6. \n
\n\n

选项 2:使用绝对路径引用

\n\n
    \n
  1. 添加/usr/local/bin/displayplacer [enter_display_code]到您的 Keyboard Maestro 快捷方式,例如查看 Keyboard Maestro 屏幕截图
  2. \n
\n