是否有 2 台或更多台 PC 连接到单个外部显示器? 如果您在其中一台 PC 上运行 Ubuntu(或其他 Linux),则以下是如何添加键盘快捷键以切换显示器上的视频源。
如今,大多数外接显示器都具有多个视频输入端口,例如 HDMI1、HDMI2、DP1,允许同时连接不同的计算机。
而且,它们通常支持 DDC/CI 协议来控制显示器,而无需点击物理按钮。
在Windows中,使用ControlMyMonitor(它是http链接,不确定现在是否有效)来修改显示器设置和自动热键来设置键盘快捷键。
在 Ubuntu 和大多数其他 Linux 中,通过 ddcutil 可以轻松完成这项工作。
ufans.top提醒注意:本教程适用于所有当前的 Ubuntu 版本(Ubuntu 20.04、Ubuntu 22.04、Ubuntu 23.04/23.10)和大多数其他 Linux,但仅在 22.04 LTS 中进行了测试。
步骤 1:安装 ddcutil
对于 Ubuntu 用户,只需按键盘上的 Ctrl+Alt+T 即可打开终端窗口。 打开后,运行命令来安装命令行工具:
sudo apt install ddcutil
当要求 sudo 身份验证时输入用户密码,但没有星号反馈。
对于基于 Fedora、RHEL 的系统,请运行以下 dnf 命令:
sudo dnf install ddcutil
并且,基于 Arch 的 Linux 可以通过命令安装它:
sudo pacman -S ddcutil
第二步:设置权限
安装上面的包后,i2c用户组就创建好了。 您必须通过运行命令将当前用户添加到该组:
sudo gpasswd --add $USER i2c
不确定是否需要,但如果下一步对您不起作用,请尝试重新启动计算机。
第三步:使用Linux命令切换显示器输入源
1.现在,在终端中运行命令来报告连接的显示器,并找出逻辑显示器编号:
ddcutil detect
就我而言,它是数字 1。通常,如果仅连接一台显示器,您可以跳过此步骤。
2.接下来,运行命令找出特征代码及其输入源的值:
ddcutil --display 1 capabilities
根据最后一条命令将数字 1 替换为您的数字。 您可以跳过 --display 1。
在终端输出中,60 是我的输入源特征代码。 并且,值包括:十六进制的 0f 和 11。 所以,它们是 0x0f 和 0x11。
3.找到特征码及其值后,尝试运行命令切换显示器输入源:
ddcutil setvcp 60 0x11
在此命令中,将 60 替换为您的功能代码。 并且,根据要切换到的视频源将 0x11(在我的例子中是 HDMI-1)替换为您的值。
第四步:设置切换输入源的键盘快捷键
如果 ddcutil setvcp 命令适合您,现在您可以执行以下步骤来设置键盘快捷键来完成这项工作。
对于 GNOME(Ubuntu 和 Fedora 中的默认桌面),打开“设置”并导航至“键盘 -> 键盘快捷键 -> 查看和自定义快捷键”。
在弹出的对话框中,选择“自定义快捷方式”,然后添加新的快捷方式:
- 名称:切换显示器输入源(或任何你想要的)。
- 命令: ddcutil setvcp 60 0x11 (根据您的更改代码 60 和 0x11)。
- 快捷键:任何您想要的组合键。
另外,添加另一个键盘快捷键以切换回来。
对于其他桌面环境,请尝试为自定义键盘快捷键设置页面启动“键盘快捷键”、“快捷键”、“自定义快捷键”、“键盘”等。