我可以在多个屏幕上切换 Unity Launcher 的位置吗?

我可以在多个屏幕上切换 Unity Launcher 的位置吗?

我运行异步双显示器设置。我的主显示器是 16:9 2560x1440,副显示器是 10:16 1200x1920 设置。我使用主显示器进行编码/游戏/视频,使用副显示器进行浏览和参考资料。我还喜欢将启动器放在副显示器上,因为它位于主显示器的右侧。

问题是,我的一些游戏似乎认为启动器所在的显示器是主显示器。有些游戏提供了启动选项,让我可以强制切换到我喜欢的显示器,但有些游戏则需要在显示设置中切换启动器的位置。

我想编写一个解决方案,让我能够快速切换设置,而不必每次都进入屏幕显示用户界面。我发现~/.config/monitors.xml并尝试过交换主显示器,然后关闭unity-settings-daemon并重新启动它,但这似乎并非没有副作用。有人知道更好的方法吗?

答案1

发射装置位置

发射器的位置可以通过两个参数定义:

1. 在所有屏幕上启动器,或仅在一个屏幕上启动器

由以下命令设置:

dconf write /org/compiz/profiles/unity/plugins/unityshell/num-launchers 0

在所有屏幕上显示,或

dconf write /org/compiz/profiles/unity/plugins/unityshell/num-launchers 1

在单个屏幕上显示

2. 启动器可见的屏幕

在后一种情况下(启动器仅在一个屏幕上),启动器仅在基本的屏幕。换句话说,我们需要设置(切换)主屏幕。这可以使用以下命令完成:

xrandr --output <screen_name> --primary

我们需要一个脚本来查找当前设置的主屏幕(从命令的输出中xrandr),并选择“另一个”,下面的脚本也是如此。

在此处输入图片描述在此处输入图片描述

剧本:

#!/usr/bin/env python3
import subprocess

# Look up the currently set primary screen, set it to the other one
scr_data = subprocess.check_output(["xrandr"]).decode("utf-8").splitlines()
scrs = [[l.split()[0], "primary" in l] for l in scr_data if " connected" in l]
for screen in scrs:
    if not screen[1] == True:
        subprocess.Popen(["xrandr", "--output", screen[0], "--primary"])

如果您还需要确保启动器设置为在单个屏幕上显示,请使用:

#!/usr/bin/env python3
import subprocess

# just to make sure the launcher is set to only show on one screen:
subprocess.Popen(["/bin/bash", "-c", "dconf write /org/compiz/profiles/unity/plugins/unityshell/num-launchers 1"])

# Look up the currently set primary screen, set it to the other one
scr_data = subprocess.check_output(["xrandr"]).decode("utf-8").splitlines()
scrs = [[l.split()[0], "primary" in l] for l in scr_data if " connected" in l]
for screen in scrs:
    if not screen[1] == True:
        subprocess.Popen(["xrandr", "--output", screen[0], "--primary"])

如何使用

  1. 将脚本复制到一个空文件中,另存为toggle_launcher.py
  2. 通过命令测试运行:

    python3 /path/to/toggle_launcher.py
    
  3. 如果一切正常,请将其添加到快捷键:选择:系统设置>“键盘”>“快捷键”>“自定义快捷键”。单击“+”并添加命令:

    python3 /path/to/toggle_launcher.py
    

    到您选择的快捷键组合。

相关内容