[clfswm-cvs] r104 - in clfswm: . doc src

pbrochard at common-lisp.net pbrochard at common-lisp.net
Wed Apr 30 22:05:24 UTC 2008


Author: pbrochard
Date: Wed Apr 30 18:05:17 2008
New Revision: 104

Added:
   clfswm/doc/menu.html
   clfswm/doc/menu.txt
   clfswm/src/clfswm-autodoc.lisp
Modified:
   clfswm/ChangeLog
   clfswm/clfswm.asd
   clfswm/doc/keys.html
   clfswm/doc/keys.txt
   clfswm/src/clfswm-keys.lisp
   clfswm/src/clfswm-menu.lisp
   clfswm/src/package.lisp
Log:
produce-doc-*: Moved to clfswm-autodoc.lisp. Produce-menu-doc, produce-menu-doc-html: New functions.

Modified: clfswm/ChangeLog
==============================================================================
--- clfswm/ChangeLog	(original)
+++ clfswm/ChangeLog	Wed Apr 30 18:05:17 2008
@@ -1,5 +1,9 @@
 2008-04-30  Philippe Brochard  <pbrochard at common-lisp.net>
 
+	* src/clfswm-autodoc.lisp (produce-menu-doc,
+	(produce-menu-doc-html): New functions.
+	(produce-doc-*): Moved to clfswm-autodoc.lisp.
+
 	* src/clfswm-util.lisp (paste-selection-no-clear): Prevent to
 	paste a child on one of its own children. (this prevent a
 	recursive bug).

Modified: clfswm/clfswm.asd
==============================================================================
--- clfswm/clfswm.asd	(original)
+++ clfswm/clfswm.asd	Wed Apr 30 18:05:17 2008
@@ -27,6 +27,8 @@
 			  :depends-on ("package" "xlib-util"))
 			 (:file "clfswm-keys"
 			  :depends-on ("package" "config" "xlib-util" "keysyms"))
+			 (:file "clfswm-autodoc"
+			  :depends-on ("package" "clfswm-keys" "my-html" "tools"))
 			 (:file "clfswm-internal"
 			  :depends-on ("xlib-util" "clfswm-keys" "netwm-util" "tools"))
 			 (:file "clfswm"

Modified: clfswm/doc/keys.html
==============================================================================
--- clfswm/doc/keys.html	(original)
+++ clfswm/doc/keys.html	Wed Apr 30 18:05:17 2008
@@ -35,996 +35,21 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-            0
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 10
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            9
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 9
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            8
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 8
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            7
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 7
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            6
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 6
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            5
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 5
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            4
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 4
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            3
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 3
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            2
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 2
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            1
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 1
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Left
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate down in workspace copying current group in the next workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Shift 
-        </td>
-        <td align="center" nowrap>
-          Left
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate down in workspace moving current group in the next workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-          Left
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate down in workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Right
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate up in workspace copying current group in the next workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Shift 
-        </td>
-        <td align="center" nowrap>
-          Right
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate up in workspace moving current group in the next workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-          Right
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate up in workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Down
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate down in group copying the current window in the next group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Shift 
-        </td>
-        <td align="center" nowrap>
-          Down
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate down in group moving the current window in the next group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-          Down
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate down in group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Up
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate up in group copying the current window in the next group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Shift 
-        </td>
-        <td align="center" nowrap>
-          Up
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate up in group moving the current window in the next group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-          Up
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate up in group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Shift 
-        </td>
-        <td align="center" nowrap>
-          Escape
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Unhide all hidden windows into the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control 
-        </td>
-        <td align="center" nowrap>
-          Escape
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Remove the current window in the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Escape
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Destroy the current window in all groups and workspaces
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Escape
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Delete the current window in all groups and workspaces
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
-        </td>
-        <td align="center" nowrap>
-            B
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Maximize/minimize the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            B
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Move the pointer to the lower right corner of the screen and redraw all groups
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Shift 
-        </td>
-        <td align="center" nowrap>
-          Tab
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Rotate down windows in the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-          Tab
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Rotate up windows in the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control 
-        </td>
-        <td align="center" nowrap>
-          Less
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Switch to editing mode
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            T
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Switch to editing mode
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Home
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Quit clfswm
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-          F1
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Open the help and info window
-        </td>
-      </tr>
-    </table>
-    <h3>
-      <u>
-        Second mode keys
-      </u>
-    </h3>
-    <table class="ex" cellspacing="5" border="0" width="100%">
-      <tr>
-        <th align="right" width="10%">
-          Modifiers
-        </th>
-        <th align="center" width="10%">
-          Key/Button
-        </th>
-        <th align="left">
-          Function
-        </th>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Shift 
-        </td>
-        <td align="center" nowrap>
-          Left
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Resize group left
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Shift 
-        </td>
-        <td align="center" nowrap>
-          Right
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Resize group right
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Shift 
-        </td>
-        <td align="center" nowrap>
-          Down
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Resize group down
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Shift 
-        </td>
-        <td align="center" nowrap>
-          Up
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Resize group up
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-          Left
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Move, pack, fill or resize group left
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-          Right
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Move, pack, fill or resize group right
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-          Down
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Move, pack, fill or resize group down
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-          Up
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Move, pack, fill or resize group up
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            M
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Center the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            L
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Resize down the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            L
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Resize down the current group to its minimal size
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            R
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Resize group to its half width or heigth on next arraw action
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control 
-        </td>
-        <td align="center" nowrap>
-            F
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Fill group horizontally
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Shift 
-        </td>
-        <td align="center" nowrap>
-            F
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Fill group vertically
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            F
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Fill group in all directions
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            F
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Fill group on next arrow action (fill in all directions on second f keypress)
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            P
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Pack group on next arrow action
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control  Shift 
-        </td>
-        <td align="center" nowrap>
-            Y
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Move all windows in the current workspace to one group and remove other groups
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control 
-        </td>
-        <td align="center" nowrap>
-            Y
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Create a new group for each window in the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            Y
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Reconfigure the workspace tiling for the current session
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            Y
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Tile the current workspace with the current window on one side and others on the other
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control  Shift 
-        </td>
-        <td align="center" nowrap>
-            T
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Tile the current workspace horizontally
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control 
-        </td>
-        <td align="center" nowrap>
-            T
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Tile the current workspace vertically
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            D
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Show debuging info
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            A
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Force the current window to move in the group (Useful only for transient windows)
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            A
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Force the current window to move in the center of the group (Useful only for transient windows)
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            H
-        </td>
-        <td style="color:#0000ff" nowrap>
-          start an xclock
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control 
-        </td>
-        <td align="center" nowrap>
-            E
-        </td>
-        <td style="color:#0000ff" nowrap>
-          start an emacs for another user
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            E
-        </td>
-        <td style="color:#0000ff" nowrap>
-          start emacs
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            C
-        </td>
-        <td style="color:#0000ff" nowrap>
-          start an xterm
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
-        </td>
-        <td align="center" nowrap>
-            O
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Open each next window in a new group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            O
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Open the next window in a new group and all others in the same group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control 
-        </td>
-        <td align="center" nowrap>
-            O
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Open the next window in a numbered workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            O
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Open the next window in a new workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            W
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Remove the current workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            W
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Create a new default workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            G
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Remove the current group in the current workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            G
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Create a new default group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            K
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Remove the current window in the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            K
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Destroy the current window in all groups and workspaces
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            X
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Open the fullscreen pager
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            B
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Maximize/minimize the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            B
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Move the pointer to the lower right corner of the screen and redraw all groups
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Shift 
-        </td>
-        <td align="center" nowrap>
-          Tab
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Rotate down windows in the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-          Tab
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Rotate up windows in the current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
-        </td>
-        <td align="center" nowrap>
-            2
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Sort workspaces by numbers
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
-        </td>
-        <td align="center" nowrap>
-            1
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Reset workspaces numbers (1 for current workspace, 2 for the second...) 
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            0
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 10
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            9
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 9
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            8
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 8
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            7
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 7
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            6
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 6
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            5
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 5
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            4
+          F1
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 4
+          Open the help and info window
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+           Mod-1  Control  Shift 
         </td>
         <td align="center" nowrap>
-            3
+          Home
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 3
+          Quit clfswm
         </td>
       </tr>
       <tr>
@@ -1032,10 +57,10 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-            2
+          Right
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 2
+          Select the next brother frame
         </td>
       </tr>
       <tr>
@@ -1043,32 +68,21 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-            1
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 1
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
-        </td>
-        <td align="center" nowrap>
           Left
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate down in workspace copying current group in the next workspace
+          Select the previous brother frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Shift 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Left
+          Down
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate down in workspace moving current group in the next workspace
+          Select the previous level in frame
         </td>
       </tr>
       <tr>
@@ -1076,21 +90,21 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-          Left
+          Up
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate down in workspace
+          Select the next level in frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Right
+          Tab
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate up in workspace copying current group in the next workspace
+          Select the next child
         </td>
       </tr>
       <tr>
@@ -1098,10 +112,10 @@
            Mod-1  Shift 
         </td>
         <td align="center" nowrap>
-          Right
+          Iso_left_tab
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate up in workspace moving current group in the next workspace
+          Select the previous child
         </td>
       </tr>
       <tr>
@@ -1109,21 +123,10 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-          Right
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate up in workspace
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Down
+          Return
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate down in group copying the current window in the next group
+          Enter in the selected frame - ie make it the root frame
         </td>
       </tr>
       <tr>
@@ -1131,10 +134,10 @@
            Mod-1  Shift 
         </td>
         <td align="center" nowrap>
-          Down
+          Return
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate down in group moving the current window in the next group
+          Leave the selected frame - ie make its parent the root frame
         </td>
       </tr>
       <tr>
@@ -1142,21 +145,10 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-          Down
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate down in group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Up
+          Home
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate up in group copying the current window in the next group
+          Switch to the root frame
         </td>
       </tr>
       <tr>
@@ -1164,21 +156,21 @@
            Mod-1  Shift 
         </td>
         <td align="center" nowrap>
-          Up
+          Home
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate up in group moving the current window in the next group
+          Switch and select the root frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+          
         </td>
         <td align="center" nowrap>
-          Up
+          Menu
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate up in group
+          Show all frames info windows until a key is release
         </td>
       </tr>
       <tr>
@@ -1186,10 +178,10 @@
            Shift 
         </td>
         <td align="center" nowrap>
-          Escape
+          Menu
         </td>
         <td style="color:#0000ff" nowrap>
-          Unhide all hidden windows into the current group
+          Show all frames info windows
         </td>
       </tr>
       <tr>
@@ -1197,21 +189,21 @@
            Control 
         </td>
         <td align="center" nowrap>
-          Escape
+          Menu
         </td>
         <td style="color:#0000ff" nowrap>
-          Remove the current window in the current group
+          Show/Hide the root frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Escape
+            B
         </td>
         <td style="color:#0000ff" nowrap>
-          Destroy the current window in all groups and workspaces
+          Move the pointer to the lower right corner of the screen
         </td>
       </tr>
       <tr>
@@ -1222,18 +214,18 @@
           Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Delete the current window in all groups and workspaces
+          Delete the focus window in all frames and workspaces
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control 
+           Mod-1  Control  Shift 
         </td>
         <td align="center" nowrap>
-          Return
+          Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave second mode
+          Destroy the focus window in all frames and workspaces
         </td>
       </tr>
       <tr>
@@ -1241,76 +233,32 @@
            Control 
         </td>
         <td align="center" nowrap>
-            <
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Leave second mode
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
           Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave second mode
+          Remove the focus window in the current frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Shift 
         </td>
         <td align="center" nowrap>
-          Return
+          Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave second mode and maximize current group
+          Unhide all hidden windows into the current child
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
             T
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave second mode and maximize current group
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            !
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Run a program from the query input
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-          :
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Eval a lisp form from the query input
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-            I
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Identify a key
+          Switch to editing mode
         </td>
       </tr>
       <tr>
@@ -1318,10 +266,10 @@
            Control 
         </td>
         <td align="center" nowrap>
-            G
+          Less
         </td>
         <td style="color:#0000ff" nowrap>
-          Stop all pending actions (actions like open in new workspace/group)
+          Switch to editing mode
         </td>
       </tr>
       <tr>
@@ -1329,41 +277,10 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-          F1
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Open the help and info window
-        </td>
-      </tr>
-    </table>
-    <h3>
-      <u>
-        Mouse buttons actions in second mode
-      </u>
-    </h3>
-    <table class="ex" cellspacing="5" border="0" width="100%">
-      <tr>
-        <th align="right" width="10%">
-          Modifiers
-        </th>
-        <th align="center" width="10%">
-          Key/Button
-        </th>
-        <th align="left">
-          Function
-        </th>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-          Motion
+          |1|
         </td>
         <td style="color:#0000ff" nowrap>
-          
-Move or resize group. Move window from a group to another.
-Go to top left or rigth corner to change workspaces.
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
@@ -1371,10 +288,10 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-          5
+          |2|
         </td>
         <td style="color:#0000ff" nowrap>
-          Circulate down in workspaces
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
@@ -1382,87 +299,65 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-          4
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Circulate up in workspaces
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-          5
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Rotate window down
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-          
-        </td>
-        <td align="center" nowrap>
-          4
+          |3|
         </td>
         <td style="color:#0000ff" nowrap>
-          Rotate window up
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          3
+          |4|
         </td>
         <td style="color:#0000ff" nowrap>
-          Copy selected window
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          3
+          |5|
         </td>
         <td style="color:#0000ff" nowrap>
-          Move selected window
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          2
+          |6|
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave second mode
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          2
+          |7|
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave second mode and maximize current group
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          1
+          |8|
         </td>
         <td style="color:#0000ff" nowrap>
-          Copy selected group
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
@@ -1470,27 +365,27 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-          1
+          |9|
         </td>
         <td style="color:#0000ff" nowrap>
-          Resize selected group
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          1
+          |0|
         </td>
         <td style="color:#0000ff" nowrap>
-          Move selected group or create a new group on the root window
+          Bind or jump to a slot
         </td>
       </tr>
     </table>
     <h3>
       <u>
-        Pager mode keys
+        Mouse buttons actions in main mode
       </u>
     </h3>
     <table class="ex" cellspacing="5" border="0" width="100%">
@@ -1507,35 +402,24 @@
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
-        </td>
-        <td align="center" nowrap>
-            2
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Sort workspaces by numbers
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
+          
         </td>
         <td align="center" nowrap>
-            1
+          1
         </td>
         <td style="color:#0000ff" nowrap>
-          Reset workspaces numbers (1 for current workspace, 2 for the second...) 
+          Move and focus the current frame or focus the current window parent
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+          
         </td>
         <td align="center" nowrap>
-            0
+          3
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 10
+          Resize and focus the current frame or focus the current window parent
         </td>
       </tr>
       <tr>
@@ -1543,10 +427,10 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-            9
+          1
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 9
+          Move and focus the current child - Create a new frame on the root window
         </td>
       </tr>
       <tr>
@@ -1554,43 +438,43 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-            8
+          3
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 8
+          Resize and focus the current child - Create a new frame on the root window
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+           Mod-1  Control 
         </td>
         <td align="center" nowrap>
-            7
+          1
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 7
+          Move the window under the mouse cursor to another frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+          
         </td>
         <td align="center" nowrap>
-            6
+          4
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 6
+          Select the next level in frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+          
         </td>
         <td align="center" nowrap>
-            5
+          5
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 5
+          Select the previous level in frame
         </td>
       </tr>
       <tr>
@@ -1598,10 +482,10 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-            4
+          4
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 4
+          Enter in the selected frame - ie make it the root frame
         </td>
       </tr>
       <tr>
@@ -1609,296 +493,292 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-            3
+          5
         </td>
         <td style="color:#0000ff" nowrap>
-          Focus workspace 3
+          Leave the selected frame - ie make its parent the root frame
         </td>
       </tr>
+    </table>
+    <h3>
+      <u>
+        Second mode keys
+      </u>
+    </h3>
+    <table class="ex" cellspacing="5" border="0" width="100%">
       <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
-        </td>
-        <td align="center" nowrap>
-            2
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 2
-        </td>
+        <th align="right" width="10%">
+          Modifiers
+        </th>
+        <th align="center" width="10%">
+          Key/Button
+        </th>
+        <th align="left">
+          Function
+        </th>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
            Mod-1 
         </td>
         <td align="center" nowrap>
-            1
-        </td>
-        <td style="color:#0000ff" nowrap>
-          Focus workspace 1
-        </td>
-      </tr>
-      <tr>
-        <td align="right" style="color:#ff0000" nowrap>
-           Control  Shift 
-        </td>
-        <td align="center" nowrap>
-          Right
+          F1
         </td>
         <td style="color:#0000ff" nowrap>
-          Copy the current group to the next workspace
+          Open the help and info window for the second mode
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control  Shift 
+          
         </td>
         <td align="center" nowrap>
-          Left
+          M
         </td>
         <td style="color:#0000ff" nowrap>
-          Copy the current group to the previous workspace
+          Open the main menu
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Shift 
+          
         </td>
         <td align="center" nowrap>
-          Up
+          F
         </td>
         <td style="color:#0000ff" nowrap>
-          Move the current window to the previous line
+          Open the frame menu
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Shift 
+          
         </td>
         <td align="center" nowrap>
-          Down
+          W
         </td>
         <td style="color:#0000ff" nowrap>
-          Move the current window to the next line
+          Open the window menu
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Shift 
+          
         </td>
         <td align="center" nowrap>
-          Right
+          N
         </td>
         <td style="color:#0000ff" nowrap>
-          Move the current group to the next workspace
+          Open the action by name menu
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Shift 
+          
         </td>
         <td align="center" nowrap>
-          Left
+          U
         </td>
         <td style="color:#0000ff" nowrap>
-          Move the current group to the previous workspace
+          Open the action by number menu
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
+          
         </td>
         <td align="center" nowrap>
-          Left
+          I
         </td>
         <td style="color:#0000ff" nowrap>
-          Resize group left
+          Identify a key
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
+          
         </td>
         <td align="center" nowrap>
-          Right
+          Colon
         </td>
         <td style="color:#0000ff" nowrap>
-          Resize group right
+          Eval a lisp form from the query input
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
+          
         </td>
         <td align="center" nowrap>
-          Down
+          Exclam
         </td>
         <td style="color:#0000ff" nowrap>
-          Resize group down
+          Run a program from the query input
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control 
+          
         </td>
         <td align="center" nowrap>
-          Up
+            T
         </td>
         <td style="color:#0000ff" nowrap>
-          Resize group up
+          Leave second mode
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+          
         </td>
         <td align="center" nowrap>
-          Left
+          Return
         </td>
         <td style="color:#0000ff" nowrap>
-          Move group left
+          Leave second mode
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+          
         </td>
         <td align="center" nowrap>
-          Right
+          Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Move group right
+          Leave second mode
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+           Control 
         </td>
         <td align="center" nowrap>
-          Down
+            <
         </td>
         <td style="color:#0000ff" nowrap>
-          Move group down
+          Leave second mode
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+           Mod-1  Control  Shift 
         </td>
         <td align="center" nowrap>
-          Up
+          Home
         </td>
         <td style="color:#0000ff" nowrap>
-          Move group up
+          Quit clfswm
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-            M
+          Right
         </td>
         <td style="color:#0000ff" nowrap>
-          Center the current group
+          Select the next brother frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
           Left
         </td>
         <td style="color:#0000ff" nowrap>
-          Move cursor, pack, fill or resize group left
+          Select the previous brother frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Right
+          Down
         </td>
         <td style="color:#0000ff" nowrap>
-          Move cursor, pack, fill or resize group right
+          Select the previous level in frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Down
+          Up
         </td>
         <td style="color:#0000ff" nowrap>
-          Move cursor, pack, fill or resize group down
+          Select the next level in frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Up
+          Tab
         </td>
         <td style="color:#0000ff" nowrap>
-          Move cursor, pack, fill or resize group up
+          Select the next child
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+           Mod-1  Shift 
         </td>
         <td align="center" nowrap>
-            L
+          Iso_left_tab
         </td>
         <td style="color:#0000ff" nowrap>
-          Resize down the current group
+          Select the previous child
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-            L
+          Return
         </td>
         <td style="color:#0000ff" nowrap>
-          Resize down the current group to its minimal size
+          Enter in the selected frame - ie make it the root frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control 
+           Mod-1  Shift 
         </td>
         <td align="center" nowrap>
-            F
+          Return
         </td>
         <td style="color:#0000ff" nowrap>
-          Fill group horizontally
+          Leave the selected frame - ie make its parent the root frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Shift 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-            F
+          Home
         </td>
         <td style="color:#0000ff" nowrap>
-          Fill group vertically
+          Switch to the root frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+           Mod-1  Shift 
         </td>
         <td align="center" nowrap>
-            F
+          Home
         </td>
         <td style="color:#0000ff" nowrap>
-          Fill group in all directions
+          Switch and select the root frame
         </td>
       </tr>
       <tr>
@@ -1906,21 +786,21 @@
           
         </td>
         <td align="center" nowrap>
-            F
+          Menu
         </td>
         <td style="color:#0000ff" nowrap>
-          Fill group on next arrow action (fill in all directions on second f keypress)
+          Show all frames info windows until a key is release
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Shift 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-            R
+            B
         </td>
         <td style="color:#0000ff" nowrap>
-          Resize group on next arrow action
+          Move the pointer to the lower right corner of the screen
         </td>
       </tr>
       <tr>
@@ -1928,43 +808,43 @@
           
         </td>
         <td align="center" nowrap>
-            R
+            O
         </td>
         <td style="color:#0000ff" nowrap>
-          Resize group to its half width or heigth on next arrow action
+          Open the next window in a new frame in the root frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Shift 
+           Control 
         </td>
         <td align="center" nowrap>
-            M
+            O
         </td>
         <td style="color:#0000ff" nowrap>
-          Move group on next arrow action
+          Open the next window in a new frame in the parent frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Control  Shift 
         </td>
         <td align="center" nowrap>
-            P
+          Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Pack group on next arrow action
+          Delete the focus window in all frames and workspaces
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control  Shift 
+           Mod-1  Control  Shift 
         </td>
         <td align="center" nowrap>
-            Y
+          Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Move all windows in the current workspace to one group and remove other groups
+          Destroy the focus window in all frames and workspaces
         </td>
       </tr>
       <tr>
@@ -1972,54 +852,54 @@
            Control 
         </td>
         <td align="center" nowrap>
-            Y
+          Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Create a new group for each window in the current group
+          Remove the focus window in the current frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Shift 
         </td>
         <td align="center" nowrap>
-            Y
+          Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Tile the current workspace with the current window on one side and others on the other
+          Unhide all hidden windows into the current child
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Shift 
+           Control 
         </td>
         <td align="center" nowrap>
-            T
+          X
         </td>
         <td style="color:#0000ff" nowrap>
-          Tile the current workspace horizontally
+          Cut the current child to the selection
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1  Control 
         </td>
         <td align="center" nowrap>
-            T
+          X
         </td>
         <td style="color:#0000ff" nowrap>
-          Tile the current workspace vertically
+          Clear the current selection
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+           Control 
         </td>
         <td align="center" nowrap>
-            X
+          C
         </td>
         <td style="color:#0000ff" nowrap>
-          Swap the current window with the next window
+          Copy the current child to the selection
         </td>
       </tr>
       <tr>
@@ -2027,32 +907,32 @@
            Control 
         </td>
         <td align="center" nowrap>
-            X
+          V
         </td>
         <td style="color:#0000ff" nowrap>
-          Swap the current group with the next group
+          Paste the selection in the current frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Control  Shift 
         </td>
         <td align="center" nowrap>
-            X
+          V
         </td>
         <td style="color:#0000ff" nowrap>
-          Swap the current workspace with the next workspace
+          Paste the selection in the current frame - Do not clear the selection after paste
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+          
         </td>
         <td align="center" nowrap>
-            W
+          Delete
         </td>
         <td style="color:#0000ff" nowrap>
-          Remove the current workspace
+          Remove the current child from its parent frame
         </td>
       </tr>
       <tr>
@@ -2060,87 +940,87 @@
           
         </td>
         <td align="center" nowrap>
-            W
+            C
         </td>
         <td style="color:#0000ff" nowrap>
-          Create a new default workspace
+          start an xterm
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1 
+          
         </td>
         <td align="center" nowrap>
-            G
+            E
         </td>
         <td style="color:#0000ff" nowrap>
-          Remove the current group in the current workspace
+          start emacs
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Control 
         </td>
         <td align="center" nowrap>
-            G
+            E
         </td>
         <td style="color:#0000ff" nowrap>
-          Create a new default group
+          start an emacs for another user
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Shift 
+          
         </td>
         <td align="center" nowrap>
-          Escape
+            H
         </td>
         <td style="color:#0000ff" nowrap>
-          Unhide all hidden windows into the current group
+          start an xclock
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control 
+           Shift 
         </td>
         <td align="center" nowrap>
-          Escape
+          Menu
         </td>
         <td style="color:#0000ff" nowrap>
-          Remove the current window in the current group
+          Show all frames info windows
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Control  Shift 
+           Control 
         </td>
         <td align="center" nowrap>
-          Escape
+          Menu
         </td>
         <td style="color:#0000ff" nowrap>
-          Destroy the current window in all groups and workspaces
+          Show/Hide the root frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control  Shift 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Escape
+          |1|
         </td>
         <td style="color:#0000ff" nowrap>
-          Delete the current window in all groups and workspaces
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Mod-1  Shift 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Tab
+          |2|
         </td>
         <td style="color:#0000ff" nowrap>
-          Rotate down windows in the current group
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
@@ -2148,76 +1028,76 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-          Tab
+          |3|
         </td>
         <td style="color:#0000ff" nowrap>
-          Rotate up windows in the current group
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          End
+          |4|
         </td>
         <td style="color:#0000ff" nowrap>
-          Select the last workspace
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Home
+          |5|
         </td>
         <td style="color:#0000ff" nowrap>
-          Select the first workspace
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-            B
+          |6|
         </td>
         <td style="color:#0000ff" nowrap>
-          Move the pointer to the lower right corner of the screen and redraw all groups
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Escape
+          |7|
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave the pager mode
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          Return
+          |8|
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave the pager mode
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-            G
+          |9|
         </td>
         <td style="color:#0000ff" nowrap>
-          Stop all pending actions (actions like open in new workspace/group)
+          Bind or jump to a slot
         </td>
       </tr>
       <tr>
@@ -2225,16 +1105,16 @@
            Mod-1 
         </td>
         <td align="center" nowrap>
-          F1
+          |0|
         </td>
         <td style="color:#0000ff" nowrap>
-          Open the help and info window
+          Bind or jump to a slot
         </td>
       </tr>
     </table>
     <h3>
       <u>
-        Mouse buttons actions in pager mode
+        Mouse buttons actions in second mode
       </u>
     </h3>
     <table class="ex" cellspacing="5" border="0" width="100%">
@@ -2254,10 +1134,10 @@
           
         </td>
         <td align="center" nowrap>
-          Motion
+          1
         </td>
         <td style="color:#0000ff" nowrap>
-          Select workspaces
+          Move and focus the current child - Create a new frame on the root window
         </td>
       </tr>
       <tr>
@@ -2265,32 +1145,43 @@
           
         </td>
         <td align="center" nowrap>
-          5
+          3
         </td>
         <td style="color:#0000ff" nowrap>
-          Rotate down windows in selected group
+          Resize and focus the current child - Create a new frame on the root window
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          4
+          1
         </td>
         <td style="color:#0000ff" nowrap>
-          Rotate up windows in selected group
+          Move and focus the current child - Create a new frame on the root window
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control 
+           Mod-1 
         </td>
         <td align="center" nowrap>
           3
         </td>
         <td style="color:#0000ff" nowrap>
-          Copy selected window
+          Resize and focus the current child - Create a new frame on the root window
+        </td>
+      </tr>
+      <tr>
+        <td align="right" style="color:#ff0000" nowrap>
+           Mod-1  Control 
+        </td>
+        <td align="center" nowrap>
+          1
+        </td>
+        <td style="color:#0000ff" nowrap>
+          Move the window under the mouse cursor to another frame
         </td>
       </tr>
       <tr>
@@ -2298,10 +1189,10 @@
           
         </td>
         <td align="center" nowrap>
-          3
+          4
         </td>
         <td style="color:#0000ff" nowrap>
-          Move selected window
+          Select the next level in frame
         </td>
       </tr>
       <tr>
@@ -2309,32 +1200,32 @@
           
         </td>
         <td align="center" nowrap>
-          2
+          5
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave the pager mode
+          Select the previous level in frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-           Control 
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          1
+          4
         </td>
         <td style="color:#0000ff" nowrap>
-          Copy selected group
+          Enter in the selected frame - ie make it the root frame
         </td>
       </tr>
       <tr>
         <td align="right" style="color:#ff0000" nowrap>
-          
+           Mod-1 
         </td>
         <td align="center" nowrap>
-          1
+          5
         </td>
         <td style="color:#0000ff" nowrap>
-          Move selected group
+          Leave the selected frame - ie make its parent the root frame
         </td>
       </tr>
     </table>
@@ -2360,10 +1251,10 @@
           
         </td>
         <td align="center" nowrap>
-          Page_up
+            Q
         </td>
         <td style="color:#0000ff" nowrap>
-          Move ten lines up
+          Leave the info mode
         </td>
       </tr>
       <tr>
@@ -2371,10 +1262,10 @@
           
         </td>
         <td align="center" nowrap>
-          Page_down
+          Return
         </td>
         <td style="color:#0000ff" nowrap>
-          Move ten lines down
+          Leave the info mode
         </td>
       </tr>
       <tr>
@@ -2382,10 +1273,10 @@
           
         </td>
         <td align="center" nowrap>
-          End
+          Escape
         </td>
         <td style="color:#0000ff" nowrap>
-          Move to last line
+          Leave the info mode
         </td>
       </tr>
       <tr>
@@ -2393,10 +1284,10 @@
           
         </td>
         <td align="center" nowrap>
-          Home
+             
         </td>
         <td style="color:#0000ff" nowrap>
-          Move to first line
+          Leave the info mode
         </td>
       </tr>
       <tr>
@@ -2404,10 +1295,10 @@
           
         </td>
         <td align="center" nowrap>
-          Right
+          Twosuperior
         </td>
         <td style="color:#0000ff" nowrap>
-          Move one char right
+          Move the pointer to the lower right corner of the screen
         </td>
       </tr>
       <tr>
@@ -2415,10 +1306,10 @@
           
         </td>
         <td align="center" nowrap>
-          Left
+          Down
         </td>
         <td style="color:#0000ff" nowrap>
-          Move one char left
+          Move one line down
         </td>
       </tr>
       <tr>
@@ -2437,10 +1328,10 @@
           
         </td>
         <td align="center" nowrap>
-          Down
+          Left
         </td>
         <td style="color:#0000ff" nowrap>
-          Move one line down
+          Move one char left
         </td>
       </tr>
       <tr>
@@ -2448,10 +1339,10 @@
           
         </td>
         <td align="center" nowrap>
-          Twosuperior
+          Right
         </td>
         <td style="color:#0000ff" nowrap>
-          Move the pointer to the lower right corner of the screen
+          Move one char right
         </td>
       </tr>
       <tr>
@@ -2459,10 +1350,10 @@
           
         </td>
         <td align="center" nowrap>
-             
+          Home
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave the info mode
+          Move to first line
         </td>
       </tr>
       <tr>
@@ -2470,10 +1361,10 @@
           
         </td>
         <td align="center" nowrap>
-          Escape
+          End
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave the info mode
+          Move to last line
         </td>
       </tr>
       <tr>
@@ -2481,10 +1372,10 @@
           
         </td>
         <td align="center" nowrap>
-          Return
+          Page_down
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave the info mode
+          Move ten lines down
         </td>
       </tr>
       <tr>
@@ -2492,10 +1383,10 @@
           
         </td>
         <td align="center" nowrap>
-            Q
+          Page_up
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave the info mode
+          Move ten lines up
         </td>
       </tr>
     </table>
@@ -2521,10 +1412,10 @@
           
         </td>
         <td align="center" nowrap>
-          Motion
+          1
         </td>
         <td style="color:#0000ff" nowrap>
-          Grab text
+          Begin grab text
         </td>
       </tr>
       <tr>
@@ -2532,10 +1423,10 @@
           
         </td>
         <td align="center" nowrap>
-          5
+          2
         </td>
         <td style="color:#0000ff" nowrap>
-          Move one line down
+          Leave the info mode
         </td>
       </tr>
       <tr>
@@ -2554,10 +1445,10 @@
           
         </td>
         <td align="center" nowrap>
-          2
+          5
         </td>
         <td style="color:#0000ff" nowrap>
-          Leave the info mode
+          Move one line down
         </td>
       </tr>
       <tr>
@@ -2565,10 +1456,10 @@
           
         </td>
         <td align="center" nowrap>
-          1
+          Clfswm  motion
         </td>
         <td style="color:#0000ff" nowrap>
-          Begin grab text
+          Grab text
         </td>
       </tr>
     </table>

Modified: clfswm/doc/keys.txt
==============================================================================
--- clfswm/doc/keys.txt	(original)
+++ clfswm/doc/keys.txt	Wed Apr 30 18:05:17 2008
@@ -6,257 +6,151 @@
 Main mode keys:
 --------------
 
-Mod-1                0               Focus workspace 10
-Mod-1                9               Focus workspace 9
-Mod-1                8               Focus workspace 8
-Mod-1                7               Focus workspace 7
-Mod-1                6               Focus workspace 6
-Mod-1                5               Focus workspace 5
-Mod-1                4               Focus workspace 4
-Mod-1                3               Focus workspace 3
-Mod-1                2               Focus workspace 2
-Mod-1                1               Focus workspace 1
-Mod-1 Control Shift  Left            Circulate down in workspace copying current group in the next workspace
-Mod-1 Shift          Left            Circulate down in workspace moving current group in the next workspace
-Mod-1                Left            Circulate down in workspace
-Mod-1 Control Shift  Right           Circulate up in workspace copying current group in the next workspace
-Mod-1 Shift          Right           Circulate up in workspace moving current group in the next workspace
-Mod-1                Right           Circulate up in workspace
-Mod-1 Control Shift  Down            Circulate down in group copying the current window in the next group
-Mod-1 Shift          Down            Circulate down in group moving the current window in the next group
-Mod-1                Down            Circulate down in group
-Mod-1 Control Shift  Up              Circulate up in group copying the current window in the next group
-Mod-1 Shift          Up              Circulate up in group moving the current window in the next group
-Mod-1                Up              Circulate up in group
-Shift                Escape          Unhide all hidden windows into the current group
-Control              Escape          Remove the current window in the current group
-Mod-1 Control Shift  Escape          Destroy the current window in all groups and workspaces
-Control Shift        Escape          Delete the current window in all groups and workspaces
-Mod-1 Control        B               Maximize/minimize the current group
-Mod-1                B               Move the pointer to the lower right corner of the screen and redraw all groups
-Mod-1 Shift          Tab             Rotate down windows in the current group
-Mod-1                Tab             Rotate up windows in the current group
-Control              Less            Switch to editing mode
-Mod-1                T               Switch to editing mode
-Mod-1 Control Shift  Home            Quit clfswm
 Mod-1                F1              Open the help and info window
+Mod-1 Control Shift  Home            Quit clfswm
+Mod-1                Right           Select the next brother frame
+Mod-1                Left            Select the previous brother frame
+Mod-1                Down            Select the previous level in frame
+Mod-1                Up              Select the next level in frame
+Mod-1                Tab             Select the next child
+Mod-1 Shift          Iso_left_tab    Select the previous child
+Mod-1                Return          Enter in the selected frame - ie make it the root frame
+Mod-1 Shift          Return          Leave the selected frame - ie make its parent the root frame
+Mod-1                Home            Switch to the root frame
+Mod-1 Shift          Home            Switch and select the root frame
+                     Menu            Show all frames info windows until a key is release
+Shift                Menu            Show all frames info windows
+Control              Menu            Show/Hide the root frame
+Mod-1                B               Move the pointer to the lower right corner of the screen
+Control Shift        Escape          Delete the focus window in all frames and workspaces
+Mod-1 Control Shift  Escape          Destroy the focus window in all frames and workspaces
+Control              Escape          Remove the focus window in the current frame
+Shift                Escape          Unhide all hidden windows into the current child
+Mod-1                T               Switch to editing mode
+Control              Less            Switch to editing mode
+Mod-1                |1|             Bind or jump to a slot
+Mod-1                |2|             Bind or jump to a slot
+Mod-1                |3|             Bind or jump to a slot
+Mod-1                |4|             Bind or jump to a slot
+Mod-1                |5|             Bind or jump to a slot
+Mod-1                |6|             Bind or jump to a slot
+Mod-1                |7|             Bind or jump to a slot
+Mod-1                |8|             Bind or jump to a slot
+Mod-1                |9|             Bind or jump to a slot
+Mod-1                |0|             Bind or jump to a slot
+
+
+Mouse buttons actions in main mode:
+----------------------------------
+
+                     1               Move and focus the current frame or focus the current window parent
+                     3               Resize and focus the current frame or focus the current window parent
+Mod-1                1               Move and focus the current child - Create a new frame on the root window
+Mod-1                3               Resize and focus the current child - Create a new frame on the root window
+Mod-1 Control        1               Move the window under the mouse cursor to another frame
+                     4               Select the next level in frame
+                     5               Select the previous level in frame
+Mod-1                4               Enter in the selected frame - ie make it the root frame
+Mod-1                5               Leave the selected frame - ie make its parent the root frame
 
 
 Second mode keys:
 ----------------
 
-Shift                Left            Resize group left
-Shift                Right           Resize group right
-Shift                Down            Resize group down
-Shift                Up              Resize group up
-                     Left            Move, pack, fill or resize group left
-                     Right           Move, pack, fill or resize group right
-                     Down            Move, pack, fill or resize group down
-                     Up              Move, pack, fill or resize group up
-                     M               Center the current group
-Mod-1                L               Resize down the current group
-                     L               Resize down the current group to its minimal size
-                     R               Resize group to its half width or heigth on next arraw action
-Control              F               Fill group horizontally
-Shift                F               Fill group vertically
-Mod-1                F               Fill group in all directions
-                     F               Fill group on next arrow action (fill in all directions on second f keypress)
-                     P               Pack group on next arrow action
-Control Shift        Y               Move all windows in the current workspace to one group and remove other groups
-Control              Y               Create a new group for each window in the current group
-Mod-1                Y               Reconfigure the workspace tiling for the current session
-                     Y               Tile the current workspace with the current window on one side and others on the other
-Control Shift        T               Tile the current workspace horizontally
-Control              T               Tile the current workspace vertically
-Mod-1                D               Show debuging info
-Mod-1                A               Force the current window to move in the group (Useful only for transient windows)
-                     A               Force the current window to move in the center of the group (Useful only for transient windows)
-                     H               start an xclock
-Control              E               start an emacs for another user
-                     E               start emacs
-                     C               start an xterm
-Mod-1 Control        O               Open each next window in a new group
-Mod-1                O               Open the next window in a new group and all others in the same group
-Control              O               Open the next window in a numbered workspace
-                     O               Open the next window in a new workspace
-Mod-1                W               Remove the current workspace
-                     W               Create a new default workspace
-Mod-1                G               Remove the current group in the current workspace
-                     G               Create a new default group
-                     K               Remove the current window in the current group
-Mod-1                K               Destroy the current window in all groups and workspaces
-                     X               Open the fullscreen pager
-Mod-1                B               Maximize/minimize the current group
-                     B               Move the pointer to the lower right corner of the screen and redraw all groups
-Mod-1 Shift          Tab             Rotate down windows in the current group
-Mod-1                Tab             Rotate up windows in the current group
-Mod-1 Control        2               Sort workspaces by numbers
-Mod-1 Control        1               Reset workspaces numbers (1 for current workspace, 2 for the second...) 
-Mod-1                0               Focus workspace 10
-Mod-1                9               Focus workspace 9
-Mod-1                8               Focus workspace 8
-Mod-1                7               Focus workspace 7
-Mod-1                6               Focus workspace 6
-Mod-1                5               Focus workspace 5
-Mod-1                4               Focus workspace 4
-Mod-1                3               Focus workspace 3
-Mod-1                2               Focus workspace 2
-Mod-1                1               Focus workspace 1
-Mod-1 Control Shift  Left            Circulate down in workspace copying current group in the next workspace
-Mod-1 Shift          Left            Circulate down in workspace moving current group in the next workspace
-Mod-1                Left            Circulate down in workspace
-Mod-1 Control Shift  Right           Circulate up in workspace copying current group in the next workspace
-Mod-1 Shift          Right           Circulate up in workspace moving current group in the next workspace
-Mod-1                Right           Circulate up in workspace
-Mod-1 Control Shift  Down            Circulate down in group copying the current window in the next group
-Mod-1 Shift          Down            Circulate down in group moving the current window in the next group
-Mod-1                Down            Circulate down in group
-Mod-1 Control Shift  Up              Circulate up in group copying the current window in the next group
-Mod-1 Shift          Up              Circulate up in group moving the current window in the next group
-Mod-1                Up              Circulate up in group
-Shift                Escape          Unhide all hidden windows into the current group
-Control              Escape          Remove the current window in the current group
-Mod-1 Control Shift  Escape          Destroy the current window in all groups and workspaces
-Control Shift        Escape          Delete the current window in all groups and workspaces
-Control              Return          Leave second mode
-Control              <               Leave second mode
-                     Escape          Leave second mode
-                     Return          Leave second mode and maximize current group
-                     T               Leave second mode and maximize current group
-                     !               Run a program from the query input
-                     :               Eval a lisp form from the query input
+Mod-1                F1              Open the help and info window for the second mode
+                     M               Open the main menu
+                     F               Open the frame menu
+                     W               Open the window menu
+                     N               Open the action by name menu
+                     U               Open the action by number menu
                      I               Identify a key
-Control              G               Stop all pending actions (actions like open in new workspace/group)
-Mod-1                F1              Open the help and info window
+                     Colon           Eval a lisp form from the query input
+                     Exclam          Run a program from the query input
+                     T               Leave second mode
+                     Return          Leave second mode
+                     Escape          Leave second mode
+Control              <               Leave second mode
+Mod-1 Control Shift  Home            Quit clfswm
+Mod-1                Right           Select the next brother frame
+Mod-1                Left            Select the previous brother frame
+Mod-1                Down            Select the previous level in frame
+Mod-1                Up              Select the next level in frame
+Mod-1                Tab             Select the next child
+Mod-1 Shift          Iso_left_tab    Select the previous child
+Mod-1                Return          Enter in the selected frame - ie make it the root frame
+Mod-1 Shift          Return          Leave the selected frame - ie make its parent the root frame
+Mod-1                Home            Switch to the root frame
+Mod-1 Shift          Home            Switch and select the root frame
+                     Menu            Show all frames info windows until a key is release
+Mod-1                B               Move the pointer to the lower right corner of the screen
+                     O               Open the next window in a new frame in the root frame
+Control              O               Open the next window in a new frame in the parent frame
+Control Shift        Escape          Delete the focus window in all frames and workspaces
+Mod-1 Control Shift  Escape          Destroy the focus window in all frames and workspaces
+Control              Escape          Remove the focus window in the current frame
+Shift                Escape          Unhide all hidden windows into the current child
+Control              X               Cut the current child to the selection
+Mod-1 Control        X               Clear the current selection
+Control              C               Copy the current child to the selection
+Control              V               Paste the selection in the current frame
+Control Shift        V               Paste the selection in the current frame - Do not clear the selection after paste
+                     Delete          Remove the current child from its parent frame
+                     C               start an xterm
+                     E               start emacs
+Control              E               start an emacs for another user
+                     H               start an xclock
+Shift                Menu            Show all frames info windows
+Control              Menu            Show/Hide the root frame
+Mod-1                |1|             Bind or jump to a slot
+Mod-1                |2|             Bind or jump to a slot
+Mod-1                |3|             Bind or jump to a slot
+Mod-1                |4|             Bind or jump to a slot
+Mod-1                |5|             Bind or jump to a slot
+Mod-1                |6|             Bind or jump to a slot
+Mod-1                |7|             Bind or jump to a slot
+Mod-1                |8|             Bind or jump to a slot
+Mod-1                |9|             Bind or jump to a slot
+Mod-1                |0|             Bind or jump to a slot
 
 
 Mouse buttons actions in second mode:
 ------------------------------------
 
-                     Motion          
-Move or resize group. Move window from a group to another.
-Go to top left or rigth corner to change workspaces.
-Mod-1                5               Circulate down in workspaces
-Mod-1                4               Circulate up in workspaces
-                     5               Rotate window down
-                     4               Rotate window up
-Control              3               Copy selected window
-                     3               Move selected window
-Control              2               Leave second mode
-                     2               Leave second mode and maximize current group
-Control              1               Copy selected group
-Mod-1                1               Resize selected group
-                     1               Move selected group or create a new group on the root window
-
-
-Pager mode keys:
----------------
-
-Mod-1 Control        2               Sort workspaces by numbers
-Mod-1 Control        1               Reset workspaces numbers (1 for current workspace, 2 for the second...) 
-Mod-1                0               Focus workspace 10
-Mod-1                9               Focus workspace 9
-Mod-1                8               Focus workspace 8
-Mod-1                7               Focus workspace 7
-Mod-1                6               Focus workspace 6
-Mod-1                5               Focus workspace 5
-Mod-1                4               Focus workspace 4
-Mod-1                3               Focus workspace 3
-Mod-1                2               Focus workspace 2
-Mod-1                1               Focus workspace 1
-Control Shift        Right           Copy the current group to the next workspace
-Control Shift        Left            Copy the current group to the previous workspace
-Shift                Up              Move the current window to the previous line
-Shift                Down            Move the current window to the next line
-Shift                Right           Move the current group to the next workspace
-Shift                Left            Move the current group to the previous workspace
-Mod-1 Control        Left            Resize group left
-Mod-1 Control        Right           Resize group right
-Mod-1 Control        Down            Resize group down
-Mod-1 Control        Up              Resize group up
-Mod-1                Left            Move group left
-Mod-1                Right           Move group right
-Mod-1                Down            Move group down
-Mod-1                Up              Move group up
-                     M               Center the current group
-                     Left            Move cursor, pack, fill or resize group left
-                     Right           Move cursor, pack, fill or resize group right
-                     Down            Move cursor, pack, fill or resize group down
-                     Up              Move cursor, pack, fill or resize group up
-Mod-1                L               Resize down the current group
-                     L               Resize down the current group to its minimal size
-Control              F               Fill group horizontally
-Shift                F               Fill group vertically
-Mod-1                F               Fill group in all directions
-                     F               Fill group on next arrow action (fill in all directions on second f keypress)
-Shift                R               Resize group on next arrow action
-                     R               Resize group to its half width or heigth on next arrow action
-Shift                M               Move group on next arrow action
-                     P               Pack group on next arrow action
-Control Shift        Y               Move all windows in the current workspace to one group and remove other groups
-Control              Y               Create a new group for each window in the current group
-                     Y               Tile the current workspace with the current window on one side and others on the other
-Shift                T               Tile the current workspace horizontally
-                     T               Tile the current workspace vertically
-Mod-1                X               Swap the current window with the next window
-Control              X               Swap the current group with the next group
-                     X               Swap the current workspace with the next workspace
-Mod-1                W               Remove the current workspace
-                     W               Create a new default workspace
-Mod-1                G               Remove the current group in the current workspace
-                     G               Create a new default group
-Shift                Escape          Unhide all hidden windows into the current group
-Control              Escape          Remove the current window in the current group
-Mod-1 Control Shift  Escape          Destroy the current window in all groups and workspaces
-Control Shift        Escape          Delete the current window in all groups and workspaces
-Mod-1 Shift          Tab             Rotate down windows in the current group
-Mod-1                Tab             Rotate up windows in the current group
-                     End             Select the last workspace
-                     Home            Select the first workspace
-                     B               Move the pointer to the lower right corner of the screen and redraw all groups
-                     Escape          Leave the pager mode
-                     Return          Leave the pager mode
-Control              G               Stop all pending actions (actions like open in new workspace/group)
-Mod-1                F1              Open the help and info window
-
-
-Mouse buttons actions in pager mode:
------------------------------------
-
-                     Motion          Select workspaces
-                     5               Rotate down windows in selected group
-                     4               Rotate up windows in selected group
-Control              3               Copy selected window
-                     3               Move selected window
-                     2               Leave the pager mode
-Control              1               Copy selected group
-                     1               Move selected group
+                     1               Move and focus the current child - Create a new frame on the root window
+                     3               Resize and focus the current child - Create a new frame on the root window
+Mod-1                1               Move and focus the current child - Create a new frame on the root window
+Mod-1                3               Resize and focus the current child - Create a new frame on the root window
+Mod-1 Control        1               Move the window under the mouse cursor to another frame
+                     4               Select the next level in frame
+                     5               Select the previous level in frame
+Mod-1                4               Enter in the selected frame - ie make it the root frame
+Mod-1                5               Leave the selected frame - ie make its parent the root frame
 
 
 Info mode keys:
 --------------
 
-                     Page_up         Move ten lines up
-                     Page_down       Move ten lines down
-                     End             Move to last line
-                     Home            Move to first line
-                     Right           Move one char right
-                     Left            Move one char left
-                     Up              Move one line up
-                     Down            Move one line down
-                     Twosuperior     Move the pointer to the lower right corner of the screen
-                                     Leave the info mode
-                     Escape          Leave the info mode
-                     Return          Leave the info mode
                      Q               Leave the info mode
+                     Return          Leave the info mode
+                     Escape          Leave the info mode
+                                     Leave the info mode
+                     Twosuperior     Move the pointer to the lower right corner of the screen
+                     Down            Move one line down
+                     Up              Move one line up
+                     Left            Move one char left
+                     Right           Move one char right
+                     Home            Move to first line
+                     End             Move to last line
+                     Page_down       Move ten lines down
+                     Page_up         Move ten lines up
 
 
 Mouse buttons actions in info mode:
 ----------------------------------
 
-                     Motion          Grab text
-                     5               Move one line down
-                     4               Move one line up
-                     2               Leave the info mode
                      1               Begin grab text
+                     2               Leave the info mode
+                     4               Move one line up
+                     5               Move one line down
+                     Clfswm::motion   Grab text
 

Added: clfswm/doc/menu.html
==============================================================================
--- (empty file)
+++ clfswm/doc/menu.html	Wed Apr 30 18:05:17 2008
@@ -0,0 +1,290 @@
+<html>
+  <head>
+    <title>
+      CLFSWM Menu
+    </title>
+  </head>
+  <body>
+    <h1>
+      <a name="top">
+        CLFSWM Menu
+      </a>
+    </h1>
+    <p>
+      Here is the map of the CLFSWM menu:
+      (By default it is bound on second-mode + m)
+    </p>
+    <h3>
+      <a name="MAIN"></a><a href="#Top">Main</a>
+    </h3>
+    <p>
+      f: <a href="#FRAME-MENU">< Frame menu ></a>
+    </p>
+    <p>
+      w: <a href="#WINDOW-MENU">< Window menu ></a>
+    </p>
+    <p>
+      s: <a href="#SELECTION-MENU">< Selection menu ></a>
+    </p>
+    <p>
+      n: <a href="#ACTION-BY-NAME-MENU">< Action by name menu ></a>
+    </p>
+    <p>
+      u: <a href="#ACTION-BY-NUMBER-MENU">< Action by number menu ></a>
+    </p>
+    <p>
+      y: <a href="#UTILITY-MENU">< Utility menu ></a>
+    </p>
+    <hr>
+    <h3>
+      <a name="FRAME-MENU"></a><a href="#MAIN">Frame-Menu</a>
+    </h3>
+    <p>
+      a: <a href="#FRAME-ADDING-MENU">< Adding frame menu ></a>
+    </p>
+    <p>
+      l: < Frame layout menu >
+    </p>
+    <p>
+      o: < Frame layout menu (Set only once) >
+    </p>
+    <p>
+      n: < Frame new window hook menu >
+    </p>
+    <p>
+      m: <a href="#FRAME-MOVEMENT-MENU">< Frame movement menu ></a>
+    </p>
+    <p>
+      w: <a href="#MANAGED-WINDOW-MENU">< Managed window type menu ></a>
+    </p>
+    <p>
+      i: <a href="#FRAME-INFO-MENU">< Frame info menu ></a>
+    </p>
+    <p>
+      r: Rename the current child
+    </p>
+    <p>
+      u: Renumber the current frame
+    </p>
+    <p>
+      x: Create a new frame for each window in frame
+    </p>
+    <hr>
+    <h3>
+      <a name="FRAME-ADDING-MENU"></a><a href="#FRAME-MENU">Frame-Adding-Menu</a>
+    </h3>
+    <p>
+      a: Add a default frame
+    </p>
+    <p>
+      p: Add a placed frame
+    </p>
+    <hr>
+    <h3>
+      <a name="FRAME-MOVEMENT-MENU"></a><a href="#FRAME-MENU">Frame-Movement-Menu</a>
+    </h3>
+    <p>
+      p: <a href="#FRAME-PACK-MENU">< Frame pack menu ></a>
+    </p>
+    <p>
+      f: <a href="#FRAME-FILL-MENU">< Frame fill menu ></a>
+    </p>
+    <p>
+      r: <a href="#FRAME-RESIZE-MENU">< Frame resize menu ></a>
+    </p>
+    <p>
+      c: Center the current frame
+    </p>
+    <hr>
+    <h3>
+      <a name="FRAME-PACK-MENU"></a><a href="#FRAME-MOVEMENT-MENU">Frame-Pack-Menu</a>
+    </h3>
+    <p>
+      Up: Pack the current frame up
+    </p>
+    <p>
+      Down: Pack the current frame down
+    </p>
+    <p>
+      Left: Pack the current frame left
+    </p>
+    <p>
+      Right: Pack the current frame right
+    </p>
+    <hr>
+    <h3>
+      <a name="FRAME-FILL-MENU"></a><a href="#FRAME-MOVEMENT-MENU">Frame-Fill-Menu</a>
+    </h3>
+    <p>
+      Up: Fill the current frame up
+    </p>
+    <p>
+      Down: Fill the current frame down
+    </p>
+    <p>
+      Left: Fill the current frame left
+    </p>
+    <p>
+      Right: Fill the current frame right
+    </p>
+    <p>
+      a: Fill the current frame in all directions
+    </p>
+    <p>
+      v: Fill the current frame vertically
+    </p>
+    <p>
+      h: Fill the current frame horizontally
+    </p>
+    <hr>
+    <h3>
+      <a name="FRAME-RESIZE-MENU"></a><a href="#FRAME-MOVEMENT-MENU">Frame-Resize-Menu</a>
+    </h3>
+    <p>
+      Up: Resize the current frame up to its half height
+    </p>
+    <p>
+      Down: Resize the current frame down to its half height
+    </p>
+    <p>
+      Left: Resize the current frame left to its half width
+    </p>
+    <p>
+      Right: Resize the current frame right to its half width
+    </p>
+    <p>
+      d: Resize down the current frame
+    </p>
+    <p>
+      a: Resize down the current frame to its minimal size
+    </p>
+    <hr>
+    <h3>
+      <a name="MANAGED-WINDOW-MENU"></a><a href="#FRAME-MENU">Managed-Window-Menu</a>
+    </h3>
+    <p>
+      m: Change window types to be managed by a frame
+    </p>
+    <p>
+      a: Manage all window type
+    </p>
+    <p>
+      n: Manage only normal window type
+    </p>
+    <p>
+      u: Do not manage any window type
+    </p>
+    <hr>
+    <h3>
+      <a name="FRAME-INFO-MENU"></a><a href="#FRAME-MENU">Frame-Info-Menu</a>
+    </h3>
+    <p>
+      s: Show all frames info windows
+    </p>
+    <p>
+      h: Hide all frames info windows
+    </p>
+    <hr>
+    <h3>
+      <a name="WINDOW-MENU"></a><a href="#MAIN">Window-Menu</a>
+    </h3>
+    <p>
+      i: Display information on the current window
+    </p>
+    <p>
+      f: Force the current window to move in the frame (Useful only for transient windows)
+    </p>
+    <p>
+      c: Force the current window to move in the center of the frame (Useful only for transient windows)
+    </p>
+    <p>
+      m: Force to manage the current window by its parent frame
+    </p>
+    <p>
+      u: Force to not manage the current window by its parent frame
+    </p>
+    <p>
+      a: Adapt the current frame to the current window minimal size hints
+    </p>
+    <p>
+      w: Adapt the current frame to the current window minimal width hint
+    </p>
+    <p>
+      h: Adapt the current frame to the current window minimal height hint
+    </p>
+    <hr>
+    <h3>
+      <a name="SELECTION-MENU"></a><a href="#MAIN">Selection-Menu</a>
+    </h3>
+    <p>
+      x: Cut the current child to the selection
+    </p>
+    <p>
+      c: Copy the current child to the selection
+    </p>
+    <p>
+      v: Paste the selection in the current frame
+    </p>
+    <p>
+      p: Paste the selection in the current frame - Do not clear the selection after paste
+    </p>
+    <p>
+      Delete: Remove the current child from its parent frame
+    </p>
+    <p>
+      z: Clear the current selection
+    </p>
+    <hr>
+    <h3>
+      <a name="ACTION-BY-NAME-MENU"></a><a href="#MAIN">Action-By-Name-Menu</a>
+    </h3>
+    <p>
+      f: Focus a frame by name
+    </p>
+    <p>
+      o: Open a new frame in a named frame
+    </p>
+    <p>
+      d: Delete a frame by name
+    </p>
+    <p>
+      m: Move current child in a named frame
+    </p>
+    <p>
+      c: Copy current child in a named frame
+    </p>
+    <hr>
+    <h3>
+      <a name="ACTION-BY-NUMBER-MENU"></a><a href="#MAIN">Action-By-Number-Menu</a>
+    </h3>
+    <p>
+      f: Focus a frame by number
+    </p>
+    <p>
+      o: Open a new frame in a numbered frame
+    </p>
+    <p>
+      d: Delete a frame by number
+    </p>
+    <p>
+      m: Move current child in a numbered frame
+    </p>
+    <p>
+      c: Copy current child in a numbered frame
+    </p>
+    <hr>
+    <h3>
+      <a name="UTILITY-MENU"></a><a href="#MAIN">Utility-Menu</a>
+    </h3>
+    <p>
+      i: Identify a key
+    </p>
+    <p>
+      colon: Eval a lisp form from the query input
+    </p>
+    <p>
+      exclam: Run a program from the query input
+    </p>
+    <hr>
+  </body>
+</html>

Added: clfswm/doc/menu.txt
==============================================================================
--- (empty file)
+++ clfswm/doc/menu.txt	Wed Apr 30 18:05:17 2008
@@ -0,0 +1,102 @@
+Here is the map of the CLFSWM menu:
+(By default it is bound on second-mode + m)
+
+Main
+f: < Frame menu >
+w: < Window menu >
+s: < Selection menu >
+n: < Action by name menu >
+u: < Action by number menu >
+y: < Utility menu >
+
+Frame-Menu
+a: < Adding frame menu >
+l: < Frame layout menu >
+o: < Frame layout menu (Set only once) >
+n: < Frame new window hook menu >
+m: < Frame movement menu >
+w: < Managed window type menu >
+i: < Frame info menu >
+r: Rename the current child
+u: Renumber the current frame
+x: Create a new frame for each window in frame
+
+Frame-Adding-Menu
+a: Add a default frame
+p: Add a placed frame
+
+Frame-Movement-Menu
+p: < Frame pack menu >
+f: < Frame fill menu >
+r: < Frame resize menu >
+c: Center the current frame
+
+Frame-Pack-Menu
+Up: Pack the current frame up
+Down: Pack the current frame down
+Left: Pack the current frame left
+Right: Pack the current frame right
+
+Frame-Fill-Menu
+Up: Fill the current frame up
+Down: Fill the current frame down
+Left: Fill the current frame left
+Right: Fill the current frame right
+a: Fill the current frame in all directions
+v: Fill the current frame vertically
+h: Fill the current frame horizontally
+
+Frame-Resize-Menu
+Up: Resize the current frame up to its half height
+Down: Resize the current frame down to its half height
+Left: Resize the current frame left to its half width
+Right: Resize the current frame right to its half width
+d: Resize down the current frame
+a: Resize down the current frame to its minimal size
+
+Managed-Window-Menu
+m: Change window types to be managed by a frame
+a: Manage all window type
+n: Manage only normal window type
+u: Do not manage any window type
+
+Frame-Info-Menu
+s: Show all frames info windows
+h: Hide all frames info windows
+
+Window-Menu
+i: Display information on the current window
+f: Force the current window to move in the frame (Useful only for transient windows)
+c: Force the current window to move in the center of the frame (Useful only for transient windows)
+m: Force to manage the current window by its parent frame
+u: Force to not manage the current window by its parent frame
+a: Adapt the current frame to the current window minimal size hints
+w: Adapt the current frame to the current window minimal width hint
+h: Adapt the current frame to the current window minimal height hint
+
+Selection-Menu
+x: Cut the current child to the selection
+c: Copy the current child to the selection
+v: Paste the selection in the current frame
+p: Paste the selection in the current frame - Do not clear the selection after paste
+Delete: Remove the current child from its parent frame
+z: Clear the current selection
+
+Action-By-Name-Menu
+f: Focus a frame by name
+o: Open a new frame in a named frame
+d: Delete a frame by name
+m: Move current child in a named frame
+c: Copy current child in a named frame
+
+Action-By-Number-Menu
+f: Focus a frame by number
+o: Open a new frame in a numbered frame
+d: Delete a frame by number
+m: Move current child in a numbered frame
+c: Copy current child in a numbered frame
+
+Utility-Menu
+i: Identify a key
+colon: Eval a lisp form from the query input
+exclam: Run a program from the query input

Added: clfswm/src/clfswm-autodoc.lisp
==============================================================================
--- (empty file)
+++ clfswm/src/clfswm-autodoc.lisp	Wed Apr 30 18:05:17 2008
@@ -0,0 +1,198 @@
+;;; --------------------------------------------------------------------------
+;;; CLFSWM - FullScreen Window Manager
+;;;
+;;; --------------------------------------------------------------------------
+;;; Documentation: Auto documentation tools
+;;; --------------------------------------------------------------------------
+;;;
+;;; (C) 2005 Philippe Brochard <hocwp at free.fr>
+;;;
+;;; This program is free software; you can redistribute it and/or modify
+;;; it under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or
+;;; (at your option) any later version.
+;;;
+;;; This program is distributed in the hope that it will be useful,
+;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with this program; if not, write to the Free Software
+;;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+;;;
+;;; --------------------------------------------------------------------------
+
+(in-package :clfswm)
+
+
+(defun produce-doc-html (hash-table-key-list &optional (stream t))
+  "Produce an html doc from a hash-table key"
+  (labels ((clean-string (str)
+	     (cond ((string-equal str "#\\:") ":")
+		   ((string-equal str "#\\#") "#")
+		   ((string-equal str "#\\\\") "\\")
+		   (t (substitute #\Space #\#
+				  (substitute #\Space #\\
+					      (substitute #\Space #\: str))))))
+	   (produce-keys (hk)
+	     `("table class=\"ex\" cellspacing=\"5\" border=\"0\" width=\"100%\""
+	       (tr ("th align=\"right\" width=\"10%\"" "Modifiers")
+		   ("th align=\"center\" width=\"10%\"" "Key/Button")
+		   ("th align=\"left\"" "Function"))
+	       ,@(let ((acc nil))
+		      (maphash #'(lambda (k v)
+				   (when (consp k)
+				     (push `(tr
+					     ("td align=\"right\" style=\"color:#FF0000\" nowrap"
+					      ,(clean-string (format nil "~{~@(~S ~)~}" (state->modifiers (second k)))))
+					     ("td align=\"center\" nowrap"
+					      ,(clean-string (format nil "~@(~S~)"
+								     (or (and (stringp (first k))
+									      (intern (string-upcase (first k))))
+									 (first k)))))
+					     ("td style=\"color:#0000FF\" nowrap" ,(documentation (or (first v) (third v)) 'function)))
+					   acc)))
+			       hk)
+		      (nreverse acc)))))
+    (produce-html
+     `(html
+       (head
+	(title "CLFSWM Keys"))
+       (body
+	(h1 "CLFSWM Keys")
+	(p (small "Note: Mod-1 is the Meta or Alt key"))
+	,@(let ((acc nil))
+	       (dolist (hk hash-table-key-list)
+		 (push `(h3 (u ,(gethash 'name hk))) acc)
+		 (push (produce-keys hk) acc))
+	       (nreverse acc))))
+     0 stream)))
+
+
+(defun produce-doc-html-in-file (filename)
+  (with-open-file (stream filename :direction :output
+			  :if-exists :supersede :if-does-not-exist :create)
+    (produce-doc-html (list *main-keys* *main-mouse* *second-keys* *second-mouse*
+			    *info-keys* *info-mouse*)
+		      stream)))
+
+
+
+(defun produce-doc (hash-table-key-list &optional (stream t))
+  "Produce a text doc from a hash-table key"
+  (format stream "    * CLFSWM Keys *~%")
+  (format stream "      -----------~%")
+  (format stream "~%Note: Mod-1 is the Meta or Alt key~%")
+  (dolist (hk hash-table-key-list)
+    (format stream "~2&~A:~%" (gethash 'name hk))
+    (dotimes (i (length (gethash 'name hk)))
+      (format stream "-"))
+    (format stream "~2%")
+    (maphash #'(lambda (k v)
+		 (when (consp k)
+		   (format stream "~&~20@<~{~@(~A~) ~}~> ~13@<~@(~A~)~>   ~A~%"
+			   (state->modifiers (second k))
+			   (remove #\# (remove #\\ (format nil "~S" (or (and (stringp (first k))
+									     (intern (string-upcase (first k))))
+									(first k)))))
+			   (documentation (or (first v) (third v)) 'function))))
+	     hk)
+    (format stream "~2&")))
+
+			   
+
+(defun produce-doc-in-file (filename)
+  (with-open-file (stream filename :direction :output
+			  :if-exists :supersede :if-does-not-exist :create)
+    (produce-doc (list *main-keys* *main-mouse* *second-keys* *second-mouse*
+		       *info-keys* *info-mouse*)
+		 stream)))
+
+
+
+
+
+;;; Menu autodoc functions
+(defun produce-menu-doc (&optional (stream t))
+  (labels ((rec (base)
+	     (format stream "~2&~:(~A~)~%" (menu-name base))
+	     (dolist (item (menu-item base))
+	       (typecase item
+		 (menu (format stream "~A: ~A~%" (menu-name item) (menu-doc item)))
+		 (menu-item (format stream "~A: ~A~%" (menu-item-key item)
+				    (typecase (menu-item-value item)
+				      (menu (format nil "< ~A >" (menu-doc (menu-item-value item))))
+				      (t (documentation (menu-item-value item) 'function)))))))
+	     (dolist (item (menu-item base))
+	       (typecase item
+		 (menu (rec item))
+		 (menu-item (when (menu-p (menu-item-value item))
+			      (rec (menu-item-value item))))))))
+    (format stream "Here is the map of the CLFSWM menu:~%")
+    (format stream "(By default it is bound on second-mode + m)~%")
+    (rec *menu*)))
+
+
+  
+(defun produce-menu-doc-in-file (filename)
+  (with-open-file (stream filename :direction :output
+			  :if-exists :supersede :if-does-not-exist :create)
+    (produce-menu-doc stream)))
+
+
+
+
+(defun produce-menu-doc-html (&optional (stream t))
+  (let ((menu-list nil))
+    (labels ((rec (base parent)
+	       (push `(h3 ,(format nil "<a name=\"~A\"></a><a href=\"#~A\">~:(~A~)</a>"
+				   (menu-name base)
+				   (if parent (menu-name parent) "Top")
+				   (menu-name base))) menu-list)
+	       (dolist (item (menu-item base))
+		 (typecase item
+		   (menu (push `(p ,(format nil "~A: ~A" (menu-name item) (menu-doc item))) menu-list))
+		   (menu-item (push `(p ,(format nil "~A: ~A" (menu-item-key item)
+						 (typecase (menu-item-value item)
+						   (menu (format nil "<a href=\"#~A\">< ~A ></a>"
+								 (menu-name (menu-item-value item))
+								 (menu-doc (menu-item-value item))))
+						   (t (documentation (menu-item-value item) 'function)))))
+				    menu-list))))
+	       (push '<hr> menu-list)
+	       (dolist (item (menu-item base))
+		 (typecase item
+		   (menu (rec item base))
+		   (menu-item (when (menu-p (menu-item-value item))
+				(rec (menu-item-value item) base)))))))
+      (rec *menu* nil)
+      (produce-html `(html
+		      (head
+		       (title "CLFSWM Menu"))
+		      (body
+		       (h1 ("a name=\"Top\"" "CLFSWM Menu"))
+		       (p "Here is the map of the CLFSWM menu:"
+			  "(By default it is bound on second-mode + m)")
+		       ,@(nreverse menu-list)))
+		    0 stream))))
+
+  
+(defun produce-menu-doc-html-in-file (filename)
+  (with-open-file (stream filename :direction :output
+			  :if-exists :supersede :if-does-not-exist :create)
+    (produce-menu-doc-html stream)))
+
+
+
+
+
+
+
+(defun produce-all-docs ()
+  "Produce all docs in keys.html and keys.txt"
+  (produce-doc-in-file "doc/keys.txt")
+  (produce-doc-html-in-file "doc/keys.html")
+  (produce-menu-doc-in-file "doc/menu.txt")
+  (produce-menu-doc-html-in-file "doc/menu.html"))
+

Modified: clfswm/src/clfswm-keys.lisp
==============================================================================
--- clfswm/src/clfswm-keys.lisp	(original)
+++ clfswm/src/clfswm-keys.lisp	Wed Apr 30 18:05:17 2008
@@ -194,96 +194,3 @@
 
 
 
-;;;,-----
-;;;| Auto documentation tools
-;;;`-----
-
-(defun produce-doc-html (hash-table-key-list &optional (stream t))
-  "Produce an html doc from a hash-table key"
-  (labels ((clean-string (str)
-	     (cond ((string-equal str "#\\:") ":")
-		   ((string-equal str "#\\#") "#")
-		   ((string-equal str "#\\\\") "\\")
-		   (t (substitute #\Space #\#
-				  (substitute #\Space #\\
-					      (substitute #\Space #\: str))))))
-	   (produce-keys (hk)
-	     `("table class=\"ex\" cellspacing=\"5\" border=\"0\" width=\"100%\""
-	       (tr ("th align=\"right\" width=\"10%\"" "Modifiers")
-		   ("th align=\"center\" width=\"10%\"" "Key/Button")
-		   ("th align=\"left\"" "Function"))
-	       ,@(let ((acc nil))
-		      (maphash #'(lambda (k v)
-				   (when (consp k)
-				     (push `(tr
-					     ("td align=\"right\" style=\"color:#FF0000\" nowrap"
-					      ,(clean-string (format nil "~{~@(~S ~)~}" (state->modifiers (second k)))))
-					     ("td align=\"center\" nowrap"
-					      ,(clean-string (format nil "~@(~S~)"
-								     (or (and (stringp (first k))
-									      (intern (string-upcase (first k))))
-									 (first k)))))
-					     ("td style=\"color:#0000FF\" nowrap" ,(documentation (or (first v) (third v)) 'function)))
-					   acc)))
-			       hk)
-		      (nreverse acc)))))
-    (produce-html
-     `(html
-       (head
-	(title "CLFSWM Keys"))
-       (body
-	(h1 "CLFSWM Keys")
-	(p (small "Note: Mod-1 is the Meta or Alt key"))
-	,@(let ((acc nil))
-	       (dolist (hk hash-table-key-list)
-		 (push `(h3 (u ,(gethash 'name hk))) acc)
-		 (push (produce-keys hk) acc))
-	       (nreverse acc))))
-     0 stream)))
-
-
-(defun produce-doc-html-in-file (filename)
-  (with-open-file (stream filename :direction :output
-			  :if-exists :supersede :if-does-not-exist :create)
-    (produce-doc-html (list *main-keys* *main-mouse* *second-keys* *second-mouse*
-			    *info-keys* *info-mouse*)
-		      stream)))
-
-
-
-(defun produce-doc (hash-table-key-list &optional (stream t))
-  "Produce a text doc from a hash-table key"
-  (format stream "    * CLFSWM Keys *~%")
-  (format stream "      -----------~%")
-  (format stream "~%Note: Mod-1 is the Meta or Alt key~%")
-  (dolist (hk hash-table-key-list)
-    (format stream "~2&~A:~%" (gethash 'name hk))
-    (dotimes (i (length (gethash 'name hk)))
-      (format stream "-"))
-    (format stream "~2%")
-    (maphash #'(lambda (k v)
-		 (when (consp k)
-		   (format stream "~&~20@<~{~@(~A~) ~}~> ~13@<~@(~A~)~>   ~A~%"
-			   (state->modifiers (second k))
-			   (remove #\# (remove #\\ (format nil "~S" (or (and (stringp (first k))
-									     (intern (string-upcase (first k))))
-									(first k)))))
-			   (documentation (or (first v) (third v)) 'function))))
-	     hk)
-    (format stream "~2&")))
-
-			   
-
-(defun produce-doc-in-file (filename)
-  (with-open-file (stream filename :direction :output
-			  :if-exists :supersede :if-does-not-exist :create)
-    (produce-doc (list *main-keys* *main-mouse* *second-keys* *second-mouse*
-		       *info-keys* *info-mouse*)
-		 stream)))
-
-
-(defun produce-all-docs ()
-  "Produce all docs in keys.html and keys.txt"
-  (produce-doc-in-file "keys.txt")
-  (produce-doc-html-in-file "keys.html"))
-

Modified: clfswm/src/clfswm-menu.lisp
==============================================================================
--- clfswm/src/clfswm-menu.lisp	(original)
+++ clfswm/src/clfswm-menu.lisp	Wed Apr 30 18:05:17 2008
@@ -26,13 +26,6 @@
 (in-package :clfswm)
 
 
-(defstruct menu name item doc)
-(defstruct menu-item key value)
-
-
-(defvar *menu* (make-menu :name 'main))
-
-
 (defmacro with-all-menu ((menu item) &body body)
   (let ((rec (gensym))
 	(subm (gensym)))

Modified: clfswm/src/package.lisp
==============================================================================
--- clfswm/src/package.lisp	(original)
+++ clfswm/src/package.lisp	Wed Apr 30 18:05:17 2008
@@ -125,17 +125,12 @@
 (defparameter *info-mouse*  (make-hash-table :test 'equal))
 
 
-(defparameter *open-next-window-in-new-workspace* nil
-  "Set to t to open the next window in a new workspace
-or to a number to open in a numbered workspace")
-
-(defparameter *open-next-window-in-new-frame* nil
-  "Set to t to open the each next window in a new frame
-or set to :once open the next window in a new frame and all
-others in the same frame")
 
-(defparameter *arrow-action* nil
-  "Arrow action in the second mode")
+(defstruct menu name item doc)
+(defstruct menu-item key value)
+
+
+(defvar *menu* (make-menu :name 'main :doc "Main menu"))
 
 
 ;;; Main mode hooks (set in clfswm.lisp)
@@ -173,14 +168,6 @@
 
 
 
-;;; Second mode global variables
-(defparameter *motion-action* nil)
-(defparameter *motion-object* nil)
-(defparameter *motion-start-frame* nil)
-(defparameter *motion-dx* nil)
-(defparameter *motion-dy* nil)
-
-
 ;; For debug - redefine defun
 ;;(shadow :defun)
 ;;



More information about the clfswm-cvs mailing list