Closed. This question needs to be more focused。它当前不接受答案。
想改善这个问题吗?更新问题,使其仅关注editing this post的一个问题。
5年前关闭。
Improve this question
我的新主项目之一将是一个简单的Window Manager,但是在开始之前,我需要了解一些事情:
哪种语言是最好的? 从哪里获得一些学习资源?
想改善这个问题吗?更新问题,使其仅关注editing this post的一个问题。
5年前关闭。
Improve this question
我的新主项目之一将是一个简单的Window Manager,但是在开始之前,我需要了解一些事情:
最佳答案
一个重要的决定是您将如何与X服务器通信。您可以将Xlib绑定(bind)用于您选择的语言,也可以使用更高级别的XCB绑定(bind)。 (如果您是insane,则可以直接打开X服务器的套接字。)
要知道窗口管理器应该如何工作,有两个文档指定了约定和策略:EWMH和ICCCM 1.符合这些要求意味着您的窗口管理器将在GNOME,KDE,XFCE和任何其他桌面环境中表现良好一直以来,尽管在您初次尝试时仅忽略它们当然会更容易。
窗口管理器不必是庞大而复杂的C球—成功的窗口管理器已经用Lisp,Haskell和Python等高级语言编写,甚至C语言中的一些语言仍然很小并且可读性强。用Haskell编写的XMonad在1000行以下保持了相当长的一段时间。 StumpWM(通用Lisp)和DWM(C)都很简单。您也许可以阅读他们的源代码,以获取有关如何设计WM的灵感。
1伊利亚·纽伦(Elijah Newren)写道:
想到这一点,Metacity的文档很好地说明了它如何与Windows交互以及它支持哪种扩展属性。
10-05 21:46