我了解屏幕由以下:D.S
位置标识:
D
是显示编号S
是屏幕编号
我正在寻找列出与显示器相关的所有屏幕。
我可以使用类似的方式获取所有当前显示,cd /tmp/.X11-unix && for x in X*; do echo ":${x#X}"; done
但我发现无法列出特定显示的屏幕。
此外,我正在寻找与屏幕名称相关联的显示和屏幕编号。例如,xrandr -q
返回:
HDMI1 connected 1920x1080+0+328 (normal left inverted right x axis y axis) 290mm x 170mm
<snipped>
有没有办法获得 X 标识符HDMI1
,例如:0.0
?
感谢您提供的任何线索!
它们没有关联。显示的所有输出
xrandr
都是同一显示屏和屏幕的一部分。但是,如果您的 x11 服务器(“显示”)配置了多个屏幕(“屏幕”在这里是 x11 使用的抽象,而不是物理监视器等),您可以选择哪一个
xrandr
将显示有关 withxrandr --screen snum
或 with 的信息--display :dnum.snum
. 如果不使用这些选项,xrandr
将仅显示有关配置的第一个屏幕的信息,而不是所有屏幕的信息。请注意,x11 可以(并且默认情况下)可以将多个监视器作为同一“屏幕”的一部分处理,前提是它们具有相同的深度。
提到的屏幕与
:D.S
多屏幕 X11 显示器的过时风格相关联,其中每个应用程序都被“困”在它启动的屏幕上,除非它具有从一个屏幕切换到另一个屏幕的特殊设施。想想早期的带有 CRT 显示器的专业 CAD 工作站:它可能有一个“主”显示器,颜色数量非常有限,但用于设计的刷新率很高(以最大限度地减少眼睛疲劳),另一个显示器的刷新率较低但更好的颜色功能,专门用于查看以全彩色呈现的最终设计。
今天,标准的做法是将所有物理屏幕连接到一个大的统一显示表面,以便您可以在屏幕之间自由移动窗口。结果,该
:D.S
对中的屏幕编号实际上始终为 0。为了管理这些类型的设置,开发了一种新的 X11 协议扩展,即 X Rotate and Resize,或简称 XRandR。还有另一个名为 XINERAMA 的扩展用于向应用程序报告这种多显示布局,例如,它们可以在物理屏幕的中间显示一个对话框,而不是一半在一个物理屏幕中,一半在另一个物理屏幕中。画面配置。
当您的
DISPLAY
环境变量设置为 eg:0.0
并且 XRandR 扩展可用时,xrandr
将连接到该X11 显示器,并可以深入了解X11“显示器 0,屏幕 0”的物理显示器配置。