commit e2b1f6c27dd403da07eb08d5e96e6c6a714a1d5e
parent 2b8252c70fda52daab91672a23e7ecbfa09861c4
Author: Anselm R. Garbe <garbeam@wmii.de>
Date: Thu, 27 Apr 2006 22:55:15 +0200
this might fix the hidden focus setting bug in stacking mode reported by DenisG, also touched several man pages, though wmiiwm.1 is only at a early stage.
Diffstat:
5 files changed, 111 insertions(+), 167 deletions(-)
diff --git a/cmd/wm/client.c b/cmd/wm/client.c
@@ -132,11 +132,10 @@ focus_client(Client *c, Bool restack)
update_client_grab(c, True);
}
- XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
- draw_client(c);
- XSync(dpy, False);
if(i > 0 && f->area->mode == Colstack)
arrange_column(f->area, False);
+ XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
+ draw_client(c);
snprintf(buf, sizeof(buf), "ClientFocus %d\n", idx_of_client_id(c->id));
write_event(buf);
}
diff --git a/cmd/wm/wmii.1 b/cmd/wm/wmii.1
@@ -3,8 +3,6 @@
wmii \- window manager improved 2
.SH SYNOPSIS
.B wmii
-.RB [ \-t
-.IR tag ]
.SH DESCRIPTION
.SS Overview
.BR wmii (1)
@@ -23,12 +21,12 @@ sure that they are executable.
.P
Here is a list of the default actions:
.TP 2
-extern <cmd>
-clean the environment and execute the given command
-.TP 2
status
periodically print date and load average to the bar
.TP 2
+quit
+leave the window manager nicely
+.TP 2
welcome
display a welcome message that contains the wmii tutorial
.TP 2
@@ -63,8 +61,7 @@ The following variables are set and exported within
.BR wmii (1)
and thus can be used in actions.
.TP
-old_path
-path as it was before
+PATH
.BR wmii (1)
added the local and global actions directory.
.TP
diff --git a/cmd/wm/wmiiwm.1 b/cmd/wm/wmiiwm.1
@@ -1,163 +1,99 @@
-.de FN
-\fI\|\\$1\|\fP\\$2
-..
-.TH wmii 1
+.TH WMIIWM 1 wmii-3
.SH NAME
-wmii \- window manager improved 2 for X11
-
-.SH DESCRIPTION
-.B wmii
-is a dynamic window manager for the X Window System.
-It provides a synthesis of conventional, tiled and tabbed window
-management based on dynamic layouts.
-Several roots of these window management capabilities have been
-introduced by the Ion and LarsWM window managers.
-Apart from this, it implements a socket-based fileserver,
-which is accessed to configure and interoperate with wmii. The idea
-behind this file-based approach is derived from the plan9
-operating system and can be found in the Acme programming environment.
-.B wmii
-consists of the core window manager itself and several utilities, such
-as
-.BR wmiibar (1),
-.BR wmiifs (1),
-.BR wmiimenu (1),
-.BR wmiikeys (1),
-.BR wmiipsel (1),
-.BR wmiir (1)
-and
-.BR wmiiwarp (1).
-
+wmiiwm \- window manager improved 2 (core)
.SH SYNOPSIS
-.B wmii
-.RB [ \-s
-.IR socketfile ]
+.B wmiiwm
+.RB \-a
+.IR <address>
+.br
+.RB [ \-c ]
+.br
+.RB [ \-v ]
+.SH DESCRIPTION
+.SS Overview
+.BR wmiiwm (1)
+is the core of the window manager improved 2.
+.BR wmii
+is a dynamic window manager for X11. It supports classic and tiled window
+management with extended keyboard, mouse, and 9P-based remote control.
+.SS Dynamic window manager
+Dynamic window management states that it is the window manager's job to manage
+windows - and not the user's job to have to set up some specialized layout that
+will only work for one specific work scenario.
.br
-.B wmii
-.RB \-v
+In contrast to static window management, the user rarely has to think about how
+to organize windows, no matter what he is doing or how many applications are
+used at the same time. The window manager adapts to the current environment and
+helps the user to fit to his needs, rather than forcing him to use a preset,
+fixed layout and trying to shoehorn all windows and applications into it.
+.br
+Dynamic window management has many advantages - one can create and tear down
+whole working environments in a matter of seconds, rather than spending months
+fine-tuning a fixed layout that would never work well in all cases anyway. The
+number and nature of windows one works with, changes all the time, and a dynamic
+window manager lets the user adapt to that and always efficiently use its
+precious screen real estate.
+.SS Terminology
+.TP 2
+Screen
-.SH OPTIONS
-.TP
-.BI \-s " socketfile"
-lets you override the default socketfile which
-.B wmii
-should use for connecting fileserver clients.
-.TP
-.B \-v
-prints version information to stdout, then exits.
+.TP 2
+View
-.SH FILES
-.TP
-.FN /tmp/.ixp-$USER/wmii\-$WMII_IDENT
-this file is the default socket file used by
-.B wmii.
-.TP
-.FN $HOME/.wmii/rc [start|stop]
-this file is executed when
-.B wmii
-starts up or shuts down. If it is not present,
-.B wmii
-executes
-.FN $WMII_CONFDIR/rc [start|stop]
-as fallback.
-The rc script is used to customize and setup
-.B wmii
-beside its components to match the users needs.
-It can be a simple shell script, a native binary or whatever executable.
+.TP 2
+Tag
-.SH STRUCTURE
-The structure of
-.B wmii
-consists of following objects which are described in more detail.
-.TP
-.B Display
-The display is a running X server which consists of at least one
-.B Screen (Monitor),
-.B Keyboard,
-and the
-.B Mouse.
-Applications with X11 support can connect to such X server display in
-order to be used.
-.TP
-.B Screen (Monitor)
-A screen is the physical device which displays a part or the whole
-display driven by the X server. Each screen consists of a root window
-which matches the physical conditions the X server is configured to
-drive the graphics adaptor and the connected screen, such as color
-depth and resolution.
+.TP 2
+Floating layer
+
+.TP 2
+Managed layer
+
+.TP 2
+Column
+
+.TP 2
+Client
+
+.SS Configuration
+If you feel the need to change the default configuration, then customize (as
+described above) the
+.B wmiirc
+action. This action is executed at the end of the
+.BR wmii (1)
+script and does all the work of setting up the window manager, the key
+bindings, the bar labels, etc.
+.SH FILES
.TP
-.B (Root) Window
-A window is a rectangular area which is drawn by the X server. A root
-window is the complete drawable area of a screen. Root windows are
-top-level windows which are always at the most-background position. If
-you have set a wallpaper, the root window displays the wallpaper.
-All other windows are children of the root window. Thus, windows of X
-clients, frames surrounding them and bars are all windows.
+/tmp/ns.$USER.$DISPLAY/wmii
+The wmii socket file which provides a 9P service.
.TP
-.B Client
-A client is the window provided by X applications (clients) without the
-surrounding frame. There're X clients supported, such as xmms, which
-request not to be surrounded by a frame, those are called borderless.
+CONFPREFIX/wmii-3
+Global action directory.
.TP
-.B Frame
-A frame is a parent window of a client or of nested frames in a layout.
-Mostly a frame consists of a border and a titlebar. The titlebar
-provides tabs, if the frame contains nested frames, otherwise it shows the title
-of the surrounded client.
+$HOME/.wmii-3
+User-specific action directory. Actions are first searched here.
+.SH ENVIRONMENT
.TP
-.B Layout
-A layout defines how to arrange nested frames of a frame. See
-CUSTOMIZATION section for further details about how such definitions look
-like.
+HOME, USER
+See the section
+.B FILES
+above.
+.P
+The following variables are set and exported within
+.BR wmii (1)
+and thus can be used in actions.
.TP
-.B Page
-A page is a container of the size of the root window which contains
-nested frames. It can be compared to workspaces in other window
-managers, but with the exception, that a page behaves very similiar to a
-frame, except that it reuses the root window as frame window.
+PATH
+.BR wmii (1)
+added the local and global actions directory.
.TP
-.B Action
-An action is an internal interface command or an external process call
-in order to reach a specific window management result, ie resizing a
-frame or launching a terminal.
-
-.SH CUSTOMIZATION
-.B wmii
-is customized through the rc script, which manipulates the namespace its
-fileserver provides to other processes. This namespace can be accessed
-using the
-.BR wmiir (1)
-utility. The default rc script uses this utility to setup wmii and its
-components.
-.P
-A namespace is a filesystem structure consisting of files
-and directories, which is specified by its underlying fileserver
-process, like
-.B wmii.
-Such
-namespaces can be bound (mounted) to userdefined namespaces using the
-.BR wmiifs (1)
-utility. In the default rc script the namespace provided by wmii, is
-bound to
-.FN /wmii
-.P
-There are four actions provided by the
-.BR wmiir (1)
-utility to manipulate your namespace:
-.BR create ,
-.BR remove ,
-.BR write ,
-and
-.BR read .
-.P
-
-.SH AUTHOR
-Copyright \(co 2003 - 2005 by Anselm R. Garbe <garbeam (at) gmail (dot) com>
+WMII_ADDRESS
+Socket file of
+.BR wmii (1).
+Used by
+.BR wmiir (1).
.SH SEE ALSO
-.BR wmiibar (1),
-.BR wmiifs (1),
+.BR wmiiwm (1),
.BR wmiimenu (1),
-.BR wmiikeys (1),
-.BR wmiipsel (1),
-.BR wmiir (1),
-.BR wmiiwarp (1),
+.BR wmiir (1)
diff --git a/cmd/wmiimenu.1 b/cmd/wmiimenu.1
@@ -27,7 +27,7 @@ terminates.
is completely controlled by the keyboard. The following keys are recognized:
.TP 2
Any printable character
-append the character to the text in the input field. This works as a filter:
+appends the character to the text in the input field. This works as a filter:
only items containing this text will be displayed.
.TP 2
Left/Right (Control-p/Control-n)
@@ -50,6 +50,13 @@ remove enough characters from the input field to change its filtering effect.
.TP 2
Control-u
remove all characters from the input field.
+.SS Exit codes
+.B wmiimenu
+returns
+.B 0
+if Enter is pressed on termination,
+.B 1
+if Escape is pressed.
.SH ENVIRONMENT
.TP
WMII_FONT
diff --git a/cmd/wmiir.1 b/cmd/wmiir.1
@@ -13,7 +13,9 @@ wmiir \- window manager improved 2 remote
.SH DESCRIPTION
.SS Overview
.B wmiir
-is a client to access wmii's filesystem from the command line or from shell
+is a client to access the filesystem of
+.BR wmiiwm (1)
+from the command line or from shell
scripts. It can be used to configure
.BR wmii (1).
.SS Options
@@ -24,12 +26,15 @@ Lets you specify the address to which
will establish a connection. If this option is not supplied, and the
environment variable WMII_ADDRESS is set,
.B wmiir
-will use this value as it's address. Currently, the address can only be a
-socket file. The syntax for
+will use this value as its address. Currently, the address can only be a
+unix socket file or a tcp socket. The syntax for
.I address
is taken (along with many other profound ideas) from the Plan 9 operating
system and has the form
-.BR unix!/path/to/socket .
+.BR unix!/path/to/socket
+for unix socket files, and
+.BR tcp!hostname!port
+for tcp sockets.
.TP
.B \-v
Prints version information to stdout, then exits.
@@ -62,15 +67,15 @@ See above.
.SH EXAMPLES
.TP
.B wmiir read /
-This displays the root of the wmii filesystem. For more information about the
-contents of this filesystem, see
+This prints the root directory of the wmii filesystem. For more information
+about the contents of this filesystem, see
.BR wmiiwm (1).
.TP
.B echo -n quit | wmiir write /ctl
Write 'quit' to the main control file of the wmii filesystem, effectively
leaving wmii.
.TP
-.B echo -n select 2 | wmiir write /ctl
+.B echo -n view 2 | wmiir write /ctl
Bring into view all clients having a tag of '2'. To learn about clients and
tags, see
.BR wmiiwm (1).