自动使用所需的监视器和相应的音频输出

问题描述

我正在将 ma​​njaro-linux-i3polybar 一起使用,并且我目前正在处理我的显示器设置我有一台电视,我通常将它与它所连接的放大器一起使用。此外,我的办公桌上有一个三重监视器设置,我通常将它与耳机一起用于音频输出我的一个屏幕是纵向的,这总是弄乱我的登录屏幕

我可以随心所欲地更改我的音频输出和我的活动监视器。但我希望它更有效率。目前,我正在使用 arandr 更改我的显示器,并在需要时使用 pavucontrol 更改我的音频输出

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

解决方法

我有类似的设置,如果我正确理解你的话,我让一切都按照你想要的方式工作。

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

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

select t.*,(case when ntile <= 6 then 'group1' when ntile <= 8 then 'group2' else 'group3' end) from (select t.*,ntile(10) over (order by random()) as tile from t ) t 中,您可以在 /etc/lightdm/lightdm.conf 处定义脚本。只需取消注释该行并将路径添加到您的脚本中即可。

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

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

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

#greeter-setup-script=

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

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

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

我有一个类似的 script 可以在我的电视和办公桌之间手动切换(镜像屏幕、重复、仅电视等) 它也会根据选定的监视器更改接收器。由于您也在使用 polybar,您可能会注意到我使用 pacmd list-sinks | grep -e 'name:' -e 'index:' | awk '{print $2}'| awk '{print substr($0,2,length($0) - 2)}' 重新启动 polybar,这是 script。 它确保我的小程序显示在主监视器上,因为 poylbar 只能在一台监视器上显示它们。这是通过对 poylbar 使用 2 个不同的条来归档的。 要使此脚本工作,您需要 dmenu 和 rofi。如果我没记错的话,您还需要为图标使用 Font Awesome。