我有一个双显示器设置(运行Ubuntu)。
Emacs Lisp函数display-pixel-width给出了两个显示器的组合宽度。如何获得当前监视器的宽度(即显示当前帧的监视器)?
答案 0 :(得分:12)
display-pixel-width是`frame.el'中编译的Lisp函数。
(display-pixel-width& optional DISPLAY)
以像素为单位返回DISPLAY屏幕的宽度。对于角色 终端,每个字符都算作一个像素。
** Multi-monitor support has been added。
***新功能
display-monitor-attributes-list
和frame-monitor-attributes
可用于获取有关的信息 多显示器设置上的每个物理监视器。
您还可以解析xwininfo
或xrandr
的输出(使用call-process
)。
最后,您可以最大化emacs(交互式或使用modify-frame-parameters
;版本24.4也有toggle-frame-fullscreen
and toggle-frame-maximized
)并使用frame-pixel-height
and frame-pixel-width
查询其帧大小。
答案 1 :(得分:1)
display-pixel-width
接受一个参数来指定显示。从其文档( C-h f display-pixel-width RET ):
(display-pixel-width& optional DISPLAY)
以像素为单位返回DISPLAY屏幕的宽度。对于角色 终端,每个字符都算作一个像素。
还有类似的x-display-pixel-width
,如果上述情况没有,可能会有效。