1

我正在使用manjaro-linux-i3和 polybar,我目前正在处理我的多显示器设置。我有一台电视,通常与它连接的放大器一起使用。此外,我的办公桌配有三重显示器设置,我通常将其与耳机一起用于音频输出。我的一个屏幕是纵向的,这总是弄乱我的登录屏幕

我可以随意更改我的音频输出和有源显示器。但我希望它更有效率。目前我正在使用 arandr 更改我的显示器和 pavucontrol 以在需要时更改我的音频输出。

我希望我的登录管理器(lightdm)始终正确显示在我的显示器上(即使在纵向显示器上)。如果有人能告诉我如何将不断变化的监视器和音频输出结合起来,那就太好了。这样我就不必每次都手动进行。

4

1 回答 1

0

我有类似的设置,如果我能正确理解你的话,我会得到你想要的一切。

如果您设置正确,那么您的登录管理器应始终显示在启动时处于活动状态的监视器上,您可以使用简单的键绑定切换监视器和接收器。

首先,您可以向 lightdm 添加一个脚本来配置您的显示器,以便正确显示所有内容。但请注意,损坏的脚本可能会导致您的登录管理器无法正确加载(blackscrren)。

/etc/lightdm/lightdm.conf你可以定义一个脚本在#greeter-setup-script=. 只需取消注释该行并将路径添加到您的脚本。

以您想要的方式配置显示器的一种简单方法是使用 arandr。只需按照您想要的方式配置您的显示器并保存设置。您将保存一个常用的 xrandr 命令,该命令可在您的脚本中使用。

这是我的脚本。这是非常基本的,实际上只检查我办公桌的监视器是否处于活动状态。如果是这样,它会初始化我办公桌上的显示器。如果没有,它会初始化我的电视。它还设置了我与这些监视器一起使用的音频输出。

要获取所有活动监视器的列表,请使用以下命令:

xrandr --listactivemonitors | awk '!/Monitors/ {print $4}'

要获取所有接收器(音频输出)的列表,请使用以下命令:

pacmd list-sinks | grep -e 'name:' -e 'index:' | awk '{print $2}'| awk '{print substr($0, 2, length($0) - 2)}'

现在您可以根据需要更改我的命令(接收器和监视器名称)。您可以在终端中执行脚本,以便获得所选接收器和监视器的反馈(用于测试)。不要忘记使您的脚本可执行,否则它将无法工作。

我有一个类似的脚本可以在我的电视和我的办公桌之间手动切换(镜像屏幕、复制、仅限电视等)它也会根据所选监视器更改接收器。当您也在使用 polybar 时,您可能会注意到我使用sh /home/lluks/.config/polybar/launch.shThis is the script重新启动了 polybar 。它确保我的小程序显示在主监视器上,因为 poylbar 只能在一个监视器上显示它们。这是通过对 poylbar 使用 2 个不同的条来实现的。要使此脚本正常工作,您需要 dmenu 和 rofi。如果我没记错的话,您还需要 Font Awesome 图标。

于 2021-04-27T14:00:42.017 回答