当我在 X 中启动 Xephyr 时,我的键盘映射变得不稳定,主要是因为非打印字符。我不能使用箭头键。根据 xev,向下箭头被映射到 Super_R。向上箭头是打印屏幕。PgDown 映射到“菜单”。我的键盘在原始 X 显示器 (:0) 中工作正常,但在 Xephyr 子显示器 (:1) 中,其他任何东西都无法正常工作。
我知道我的主 X 显示器中没有任何时髦的 xmodmap 东西。我真正要做的就是setxkbmap -option ctrl:swapcaps。
鉴于以下目标,我如何运行托管在远程服务器上的 X11 应用程序:
GLX.我已经看到很多关于超级用户的建议,但其中大部分是部分修复或只是很糟糕。
X11-Forwarding已过时:它无法运行某些应用程序,尤其是那些依赖 GLX 扩展的应用程序。LIBGL_ALWAYS_INDIRECT=1对我不起作用。Xephyr也出来了。它目前不支持 GLX,尽管我在开发树中看到了一些 GLX 工作。也许在未来,那将是最干净的方式。xmove也出来了。太老了,无法进一步考虑。编辑:我花了一个周末来提出几个建议,xpra这是最好的。我已经在下面的答案中描述了我的设置,希望对其他人有所帮助。
这个问题可能看起来类似于模拟额外的显示,但它在重要细节上有所不同。
假设我想使用 RANDR 扩展测试具有多监视器支持的某些窗口管理器的功能。似乎不可能使用Xrandr/来实现这一点Xdmx。到目前为止,我已经尝试了不同的组合+extension RANDR和+xinerama参数Xrandr,Xdmx但没有运气。另外,我在手册页中没有找到这两个命令的任何线索。
我的简单案例是:
Xephyr -screen 800x800+0+0 -ac :1 &
sleep 1
Xephyr -screen 800x800+800+0 -ac :2 &
sleep 1
Xdmx +extension RANDR -xinput local -display :1 -display :2 -ac :3 &
sleep 1
DISPLAY=:3 window-manager
我也尝试过只使用Xephyr:
Xephyr +extension RANDR -screen 800x800+0+0 -screen 800x800+800+0 -ac :3 &
sleep 1
DISPLAY=:3 window-manager
但显然它创建了两个单独的 X 屏幕,因此根窗口不会在屏幕之间共享。
有没有其他方法xrandr可以报告我的案例的两个可用输出?
由于某种原因,Xephyr 将密钥解释Alt Gr为Return。因此我无法输入需要的特殊字符Alt Gr。其他非字母数字键似乎也很混乱。
我使用以下命令启动 Xephyr:
Xephyr :1.0 -query localhost -host-cursor -screen 1280x960 -keybd ephyr,,,xkbmodel=evdev,xkblayout=de
Run Code Online (Sandbox Code Playgroud)
我找不到该-keybd选项的解释。我使用的值是我从网络上找到的示例中猜测的。
我有一个 Microsoft Comfort Curve Keyboard 2000 v1.0 并使用带 KDE 的 Fedora Linux 14 x86_64。
运行 Xephyr 时,其窗口标题显示“ctrl-shift 抓取鼠标和键盘”。
我使用 ctrl-shift(左 ctrl - 左移)作为键盘布局切换热键,它会干扰 Xephyr,当我按下它们时,只切换键盘布局,Xephyr 不会抓取鼠标和键盘。
我强烈希望避免更改键盘布局切换的热键组合。
是否可以更改 Xephyr 中鼠标/键盘抓取的默认热键?
理想情况下,我想要一个类似 VirtualBox 的行为:当我点击 Xephyr 窗口时,它会抓住鼠标和键盘,当我按下右 ctrl 时会释放鼠标和键盘。如果这是不可能的,我愿意接受其他建议,这些建议将保持左 ctrl - 左移仅用于键盘布局切换。