1. NAME

ctwm - Claude’s Tab Window Manager for the X Window System

2. SYNTAX

ctwm [(--display | -d) dpy]  [--replace]  [--single]
     [(--file | -f) initfile]  [--cfgchk]  [--dumpcfg]
     [--nom4 | -n]  [(--keep-defs | -k)]  [(--keep | -K) m4file]
     [--verbose | -v]  [--quiet | -q]  [--mono]  [--xrm resource]
     [--version]  [--info]  [--nowelcome | -W]
     [--clientId clid]  [--restore resfname]
     [--help | -h]

3. DESCRIPTION

ctwm is a window manager for the X Window System. It provides titlebars, shaped windows, virtual screens (workspaces), several forms of icon management, user-defined macro functions, click-to-type and pointer-driven keyboard focus, and user-specified key and pointer button bindings. It is actually twm(1) (Tab Window Manager) from the MIT X11 distribution slightly modified to accommodate the use of several virtual screens (workspaces). It is heavily inspired by the Hewlett-Packard vuewm window manager. In addition, ctwm can use coloured, shaped icons and background root pixmaps in XPM format [from Arnaud Le Hors], in JPEG using libjpeg, and xwd files. ctwm can be compiled to use any combination of the above icon/pixmap formats.

This program is usually started by the user’s session manager or startup script. When used from xdm(1) or xinit(1) without a session manager, ctwm is frequently executed in the foreground as the last client. When run this way, exiting ctwm causes the X session to be terminated, shutting down the X server and killing off any other running clients.

By default, application windows are surrounded by a “frame” with a titlebar at the top and a special border around the window. The titlebar contains the window’s name, a rectangle that is lit when the window is receiving keyboard input, and function boxes known as “titlebuttons” at the left and right edges of the titlebar to which actions can be bound.

Pressing pointer Button1 (usually the left-most button unless it has been changed with xmodmap) on a titlebutton will invoke the function associated with the button. In the default interface, windows are iconified by clicking (pressing and then immediately releasing) the left titlebutton (which looks like a Dot). Conversely, windows are deiconified by clicking in the associated icon or entry in the icon manager (see description of the variable ShowIconManager and of the function f.showiconmgr).

Windows are resized by pressing the right titlebutton (which resembles a group of nested squares), dragging the pointer over edge that is to be moved, and releasing the pointer when the outline of the window is the desired size. Similarly, windows are moved by pressing in the title or highlight region, dragging a window outline to the new location, and then releasing when the outline is in the desired position. Just clicking in the title or highlight region raises the window without moving it.

When new windows are created, ctwm will honor any size and location information requested by the user (usually through -geometry command line argument or resources for the individual applications). Otherwise, an outline of the window’s default size, its titlebar, and lines dividing the window into a 3x3 grid that track the pointer are displayed. Clicking pointer Button1 will position the window at the current position and give it the default size. Pressing pointer Button2 (usually the middle pointer button) and dragging the outline will give the window its current position but allow the sides to be resized as described above. Clicking pointer Button3 (usually the right pointer button) will give the window its current position but attempt to make it long enough to touch the bottom the screen.

4. OPTIONS

ctwm accepts the following command line options:

--help, -h

Print usage text.

--display=dpy, -d dpy

This option specifies the X server to use.

--replace

This option indicates that it is not an error if a window manager is already running. In that case, the existing window manager is asked to quit, and ctwm takes its place. Available only if ctwm is built with the USE_EWMH flag. First appeared in 4.0.0.

--single

This option indicates that only the default screen (as specified by --display or by the DISPLAY environment variable) should be managed. By default, ctwm will attempt to manage all screens on the display.

--cfgchk

This option causes ctwm to only try to parse the config file, and indicate whether errors are found.

--dumpcfg

This option causes ctwm to print out the compiled-in fallback config. First appeared in 4.0.0.

--file=filename, -f filename

This option specifies the name of the startup file to use. ctwm will first try to load filename.num, where num is the screen number. If it fails, it will try to load filename. By default, ctwm will look in the user’s home directory for files named .ctwmrc.num, .ctwmrc, .twmrc.num, or .twmrc (where num is a screen number).

--verbose, -v

This option indicates that ctwm should print error messages whenever an unexpected X Error event is received. This can be useful when debugging applications but can be distracting in regular use.

--quiet, -q

Disables --verbose (useful for overriding aliases, etc).

--nom4, -n

This option indicates that ctwm should not filter the startup file through