让我们举个例子。当我运行时:
xkbprint $DISPLAY 键盘.ps
系统中发生了什么?我想知道 X 到底是如何工作的,因为我经常收到令人讨厌的错误报告,例如
致命错误:无法为 /tmp/launch-NawGIk/:0 加载几何图形
Exiting
我知道 X11 的设计方式很容易扩展。但是怎么做?X11 协议如何工作?X 扩展如何工作?
不管发生什么,我很确定这不会是你所期望的。
xkbprint(1 )的语法是
$ xkbprint源文件目标文件
sourcefile应该是一个已编译的 xkb 文件 。$DISPLAY
将解析为类似的东西mymachine:0.0
,这不是一个非常合理的文件名。
实际上,由于您运行的是 Mac,它与它所看到的完全一致:是让 launchd 运行 X 应用程序的特殊 OS/ X魔法。错误消息意味着它没有在该文件中找到几何图形或显示。这并不奇怪,因为没有名为`/tmp/launch-NawGIk/:0 的文件/tmp/launch-NawGIk/:0
尝试阅读手册页,看看您是否对编译的 .xkm 文件没有更多的运气。
更一般地说,如果您想初步了解 X,请尝试这篇文章。
男人 xkbprint 说:
xkbprint comman 生成由 source 指定的 XKB 键盘描述的可打印或封装 PostScript 描述。源可以是任何已编译的键盘映射 (.xkm) 文件,其中包括几何描述或 X 显示规范。
正如查理马丁指出的那样,xkbprint 滥用您的 $DISPLAY 作为文件名。尝试更精确地指定显示,以避免文件名出现歧义。试试 man xhost。也许通过简单的“:0”可以解决问题?