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.
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
funny prompt> make install.man
----------
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:
There is a mailing list for discussions ctwm@free.lp.se. Subscribe at
minimalist@free.lp.se.
Repository:
CTWM development uses monotone (see http://www.venge.net/monotone) for
version control. The current central server is free.lp.se, and the
branch to pull is "free.lp.se:X.ctwm".
Further information:
http://ctwm.free.lp.se/