我正在 Wayland 下运行 GNOME Shell,我想在嵌套会话中调试扩展,这样我就不必重新启动合成器,我该怎么做?
我Xephyr用作嵌套X服务器。当我在Xephyr窗口中并按下组合键时Control_L+Shift_L,Xephyr抓取我的输入(鼠标、键盘)。这个抓取可以用 发布Control_R+Shift_R,就像在awesome 的 API 文档中一样,一个高度可配置的 X 窗口管理器。
问题是,这些组合键不能可靠地工作。有时我必须反复按才能有任何效果。这是非常令人沮丧的。
有没有办法使用某些工具来编写这些键组合的脚本,例如xdotool?或者其他什么工具?我会创建一个脚本,一旦我被困在里面Xephyr并且无法离开,我就可以运行该脚本。
我尝试了以下方法但不起作用(无效):
xdotool key Control_L+Alt_L+Shift_L
Run Code Online (Sandbox Code Playgroud) 我想在一台台式 PC 上同时从多个 X 服务器截取屏幕截图。
我有多个用户登录不同的终端(tty1,tty2,tty3,tty4)谁开始与多个Xservers文件startx /usr/bin/openbox-session -- :1(和:2,:3,:4分别)。所以我可以用Ctrl+Alt+F8, +F9, +F10,访问它们中的每一个+F11。
该桌面上只有一台显示器。
我想为这些 X 服务器中的每一个截取屏幕截图,最好使用scrot,但目前我每次尝试时都会得到一个黑色/空白图像。只有当我在那个 X 服务器上处于活动状态时,我才能得到正确的屏幕截图。
例如,如果我打开Ctrl+Alt+F8并运行,scrot test.png我会得到一个正确的屏幕截图;如果我理解正确,我不必设置$DISPLAY,因为在Ctrl+Alt+F8我得到echo $DISPLAY> :1。但是,如果我跑sleep 10; scrot test.png,去Ctrl+Alt+F7,然后我得到一个黑色的图像。
如何同时从这些终端中的每一个获取多个屏幕截图?
对我有用的是Xephyr. 此解决方案的唯一问题似乎是当我运行极快的xdotool命令时,它的响应速度不如 X。
为了将来参考,我对四个用户和终端中的每一个都做了:
在 中~/.profile,我将每个用户设置为在系统启动后自动登录,例如:
if [[ -z $DISPLAY …Run Code Online (Sandbox Code Playgroud) 所以,我启动了一个 Xephyr 窗口:Xephyr -br -ac -noreset -screen 1280x720 :1然后在该 Xephyr X 服务器内启动了 xfce4:
Export DISPLAY=:1
startxfce4
Run Code Online (Sandbox Code Playgroud)
这一切都工作正常,但现在我想让我的光标和鼠标进入 Xephyr X 服务器......
根据arch wiki ,当窗口处于焦点状态时,您显然应该能够通过按Ctrl+来捕获用户输入。Shift但是,在我的机器上,这实际上似乎没有任何作用。所以我想知道我在这里做错了什么吗?
另外,我在手册页中找不到有关此键盘组合的任何信息,Xephyr 是否有任何涵盖热键等内容的文档?
当我开始Xephyr并LXDE在里面进行会话时:
$ Xephyr :1 -screen 1920x1054 -nolisten tcp -reset -terminate
$ DISPLAY=:1 startlxde
Run Code Online (Sandbox Code Playgroud)
某些按键无法正常工作,例如
Up、PageUp、PageDown。看着xev,我看到非常有趣的键名:
PageUp: Hiragana
Up: Katakana
PageDown: Control_R
Left: Henkan_Mode
Down: KP_Enter
Right: Muhenkan
Run Code Online (Sandbox Code Playgroud)
显然,在正常LXDE会话中(没有 Xephyr),一切正常。
这里相关的一件事是:
我没有udev在我的系统上使用守护进程。(我只需要添加到Option "AutoAddDevices" "Off"即可/etc/X11/xorg.conf在X没有udev.
当我udev重新打开时,里面的按键Xephyr工作正常。但这对我来说不是一个解决方案。
我如何诊断并解决这个问题(不使用 udev)?
xephyr ×5
xorg ×4
x-server ×2
development ×1
gnome-shell ×1
keyboard ×1
mouse ×1
screenshot ×1
wayland ×1
x11 ×1
xdotool ×1