Skip to content

About

XLib in pure Python (Py2/Py3 compatible)

Topics

Resources

Stars

464 stars

Watchers

17 watching

Forks

Latest commit

 

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

			 The Python X Library

		       Version 0.4, 4 Oct 2000


*** Copyright

The Python X Library is released under GPL, see the file COPYING for
details.


*** Installation

Just copy the Xlib directory to some place in the module path.  E.g.:
     
   cp -r Xlib /usr/lib/python1.5/site-packages/
  
Make sure that that directory exists before copying.

Alternatively, you can run programs from the distribution directory,
or changing the module path in programs.

There's a simple example program, implemented twice using both the
high-level interface and the low-level protocol.


*** Introduction

The Python X Library is intended to be a fully functional X client
library for Python programs.  It is written entirely in Python, in
contrast to earlier X libraries for Python (the ancient X extension
and the newer plxlib) which were interfaces to the C Xlib.

This is possible to do since X client programs communicate with the X
server via the X protocol.  The communication takes place over TCP/IP,
Unix sockets, DECnet or any other suitable streaming network protocol.
The C Xlib is merely an interface to this protocol, providing
functions suited for a C environment.

There are three advantages of choosing to implement a pure Python
library:

 * Integration:  The library can make use of the wonderful object
   system in Python, providing an easy-to-use class hierarchy.

 * Portability: The library will be usable on (almost) any computer
   which have Python installed.  A C interface could be problematic to
   port to non-Unix systems, such as MS Windows or OpenVMS.

 * Maintainability:  It is much easier to develop and debug native
   Python modules than modules written in C.


*** Project status

The low-level protocol and a rudimentary object oriented interface is
complete, implementing client-side X11R6.  This should be usable for
writing applications.  It runs at least on Linux using XFree86 as the
server, but should run on most Unices.

A resource database has been implemented and there is a framework for
adding X extension code.  Currently only the XTEST extension has been
implemented.  

There are most likely bugs, as only a rather small subset of all the
requests and methods have been tested.  The code is released anyway to
let other interested Python hackers have a look (and hopefully help
out with debugging and coding :).

There are some documentation now, but it doesn't cover any methods
yet.

See the file TODO for a detailed list of what is missing,
approximately ordered by importance.


*** Contact information

Author email: Peter Liljenberg <petli@ctrl-c.liu.se>

The Python X Library is a SourceForged project.  The project page is
http://sourgeforge.net/projects/python-xlib/.  Source is available
from that page as real releases and from the CVS tree.

There isn't any real web page yet, only a derivative of this file.  It
is located at http://python-xlib.sourceforge.net/.

About

XLib in pure Python (Py2/Py3 compatible)

Topics

Resources

Stars

464 stars

Watchers

17 watching

Forks

Releases

Packages

Used by

Contributors

Languages