6

I have been using Awesome Tiling window manager for over 6 months now, and quite happy with this.

I would like to write my own Tiling window manager as a weekend project and for hackfun. I noticed that Xmonad and dwm are very small. I am aware of Qtile a python window manager.

I don't know where to begin. Should i read and understand any Xorg manual/api? and Is there any Python libraries for window management? Please suggest how to proceed with writing a tiling window manager.

It will be great if you can share any similar experiences in writing window manager.

Wooble
  • 87,717
  • 12
  • 108
  • 131
18bytes
  • 5,951
  • 7
  • 42
  • 69
  • Have you tried reading the Qtile code yet? – Fred Foo Jan 12 '12 at 12:47
  • 2
    It helps if you understand [XCB](http://xcb.freedesktop.org/), then you can start looking at the [Python bindings](http://xcb.freedesktop.org/XcbPythonBinding/). – Some programmer dude Jan 12 '12 at 12:52
  • @larsmans I have not read Qtile code yet, i will check that one out. – 18bytes Jan 12 '12 at 13:56
  • The way I did it was to take an existing code, I chose aewm and then spent about a month going over everything inside it to learn how it was working. My intent was only to write a C++ window manager so I have no experience doing this in Python. I also looked quite a lot at the X11 headers. – Frank Hale Apr 26 '12 at 20:45

1 Answers1

9

You will need some X client library. I suggest having a look at python-xlib, a pure Python implementation of the client side of the X protocol. It includes plwm, an example implementation of a minimal window manager written in Python.

Sven Marnach
  • 574,206
  • 118
  • 941
  • 841