
                                   CTWM
                                   ----


CTWM is an extension to twm, originally written by Claude Lecommandeur
(see README.Claude for his README), that support multiple virtual
screens, and a lot of other goodies.

You can use and manage up to 32 virtual screens called workspaces.
You swap from one workspace to another by clicking on a button in an
optionnal panel of buttons (the workspace manager) or by invoking a
function.

You can custom each workspace by choosing different colors, names and
pixmaps for the buttons and background root windows.

Main features are :

 - Optional 3D window titles and border (ala Motif).
 - Shaped, colored icons.
 - Multiple icons for clients based on the icon name.
 - Windows can belong to several workspaces.
 - A map of your workspaces to move quickly windows between
   different workspaces.
 - Animations : icons, root backgrounds and buttons can be animated.
 - Pinnable and sticky menus.
 - etc...

The sources files were once the twm ones with only workmgr.[ch] added
(written from scratch by Claude Lecommandeur).  There were also some
modifications to some twm files.  This was back in CTWM version 1, by
now, there are a bit more changes and a few more additions.  It's
possible, thought it's doubtful, that twm patches can still be
applied...  with great care.

If you are happy with ctwm, please send me a not to richard@levitte.org.
If you find bugs, please send a report (one per bug, please!) to
ctwm-bugs@free.lp.se.

				----------

Configuration:

Ctwm is built using xmkmf, which read Imakefile.  That file includes
Imakefile.local, which is meant for local configuration, and WHICH
YOU MUST CREATE.  For your comfort, the file Imakefile.local-template
can simply be copied to Imakefile.local, then changed.

Configuration is done by defining any of the following C macros:

USEM4		If defined, enables the use of the m4 preprocessor on
		the run-time configuration file.  Disable if m4 isn't
		present.
		Defined in Imakefile.local-template.
XPM		If defined, enables the use of xpm images.  Disable if
		libxpm isn't present.
		Defined in Imakefile.local-template.
JPEG		If defined, enables the use of jpeg images.  Disable
		if libjpeg isn't present.
		Defined in Imakefile.local-template.
GNOME		If defined, build to work with Gnome.
		Defined in Imakefile.local-template.
X11R6		If defined, build to work with X11R6 (basically, add
		session management capabilities)
		Defined in Imakefile.local-template.
I18N		If defined, build with i18n capabilities.
		Defined in Imakefile.local-template.
USE_SOUND	if defined, build with sound support.  Disable if
		librplay isn't present.
		Defined in Imakefile.local-template.
USE_GNU_REGEX	if defined, build with GNU regex.  Otherwise, use an
		internal implementation.
		Undefined in Imakefile.local-template.

If you don't have xpm, fetch it from ftp.x.org or comment out the
#define XPM in Imakefile.local.  If you don't have the m4 preprocessor
(or don't want to use it) comment out #define USEM4, if you have the
rplay package replace `#undef USE_SOUND' with `#define USE_SOUND'.

				----------

Building:

funny prompt> xmkmf
funny prompt> make

				----------

Installation:

funny prompt> make install

				----------

There is a manual page, which always needs more work (any volunteer ?).
Many useful informations are only in the CHANGES file, so please read it.

				----------

Mailing lists and other stuff:

There is a CVS repository, available anonymously :

  cvs -d :pserver:anonymous@repository.lp.se:/orgs/lp/free/cvs login
  Password: (press enter)
  cvs -d :pserver:anonymous@repository.lp.se:/orgs/lp/free/cvs co X/ctwm

There is also the possibility to browse the repository :

  http://repository.lp.se/viewcvs/X/ctwm/

The CVS logs are posted to ctwm-cvs@free.lp.se, subscribe at
ctwm-cvs-request@free.lp.se.

There is a mailing list for discussions ctwm@free.lp.se.  Subscribe at
ctwm-request@free.lp.se.
