【发布时间】:2011-03-29 04:52:42
【问题描述】:
我想创建一个简单的堆叠窗口管理器(C)供私人使用,主要是为了学习和挑战自己。
我查看了twm 的源代码,它的花里胡哨的东西相对较少,但它似乎非常低级,因为它不是基于小部件工具包。1使用 GTK+ 之类的工具包会更好吗?我担心twm 中的某些代码和库可能过于陈旧(edit: 已弃用),我希望窗口管理器使用相对现代的库。为了理解起见,我也对如何从头开始启动窗口管理器的建议感兴趣 - 没有很多用于此目的的教程。
更新:对于那些考虑类似项目的人:我最终使用了 Common Lisp 和 CLX library。 tinywm-lisp 作为基础,出色的 CLFSWM 和 Stumpwm 提供了很大的帮助。作为参考,我在 Freenode 上使用了 CLX — Common LISP X Interface(PDF 警告)和 #xlib。
【问题讨论】:
-
小部件基本上存在于窗口中,因此窗口管理器所做的大部分工作都不能依赖小部件。
-
我虽然是这样,但这就是我引用维基百科的原因; “[twm] 是用 C 直接针对 Xlib 编写的,而不是基于小部件工具包。”我认为这意味着更现代的窗口管理器基于小部件工具包。
-
不知为何这个问题让我想到了this...
标签: c linux x11 window-managers window-management