[hackers] [wmii] [guide] Some updates to wmii.pdf to track the man pages. || Kris Maglione

From: <hg_AT_suckless.org>
Date: Wed, 16 Jun 2010 22:32:19 +0000 (UTC)

changeset: 2729:5c26a61a3296
tag: tip
user: Kris Maglione <kris_AT_suckless.org>
date: Wed Jun 16 18:32:09 2010 -0400
files: cmd/menu/Makefile cmd/strut/Makefile cmd/wmii/Makefile cmd/wmii/dat.h cmd/wmii/fns.h cmd/wmii/fs.c cmd/wmii/main.c cmd/wmii/print.c debian/changelog doc/wmii.tex mk/wmii.mk util/link
description:
[guide] Some updates to wmii.pdf to track the man pages.

diff -r c70b9f7c54f9 -r 5c26a61a3296 cmd/menu/Makefile
--- a/cmd/menu/Makefile Tue Jun 15 15:13:12 2010 -0400
+++ b/cmd/menu/Makefile Wed Jun 16 18:32:09 2010 -0400
@@ -16,7 +16,6 @@
 
 LIB = $(LIBS9) $(LIBIXP)
 LIBS += -lm
-CFLAGS += -DIXP_NEEDAPI=86
 OBJ = main \
         caret \
         history \
diff -r c70b9f7c54f9 -r 5c26a61a3296 cmd/strut/Makefile
--- a/cmd/strut/Makefile Tue Jun 15 15:13:12 2010 -0400
+++ b/cmd/strut/Makefile Wed Jun 16 18:32:09 2010 -0400
@@ -11,7 +11,6 @@
 
 LIB = $(LIBS9)
 LIBS += -lm
-CFLAGS += -DIXP_NEEDAPI=86
 OBJ = main \
         ewmh \
         win
diff -r c70b9f7c54f9 -r 5c26a61a3296 cmd/wmii/Makefile
--- a/cmd/wmii/Makefile Tue Jun 15 15:13:12 2010 -0400
+++ b/cmd/wmii/Makefile Wed Jun 16 18:32:09 2010 -0400
@@ -13,7 +13,6 @@
 LIB = $(LIBIXP) $(LIBS9)
 LIBS += -lm
 
-CFLAGS += $(INCICONV) -DIXP_NEEDAPI=97
 OBJ = area \
         bar \
         backtrace \
diff -r c70b9f7c54f9 -r 5c26a61a3296 cmd/wmii/dat.h
--- a/cmd/wmii/dat.h Tue Jun 15 15:13:12 2010 -0400
+++ b/cmd/wmii/dat.h Wed Jun 16 18:32:09 2010 -0400
@@ -3,7 +3,6 @@
  */
 
 #define _XOPEN_SOURCE 600
-#define IXP_P9_STRUCTS
 #define IXP_NO_P9_
 #include <assert.h>
 #include <regexp9.h>
diff -r c70b9f7c54f9 -r 5c26a61a3296 cmd/wmii/fns.h
--- a/cmd/wmii/fns.h Tue Jun 15 15:13:12 2010 -0400
+++ b/cmd/wmii/fns.h Wed Jun 16 18:32:09 2010 -0400
@@ -184,7 +184,7 @@
 void fs_clunk(Ixp9Req*);
 void fs_create(Ixp9Req*);
 void fs_flush(Ixp9Req*);
-void fs_freefid(Fid*);
+void fs_freefid(IxpFid*);
 void fs_open(Ixp9Req*);
 void fs_read(Ixp9Req*);
 void fs_remove(Ixp9Req*);
diff -r c70b9f7c54f9 -r 5c26a61a3296 cmd/wmii/fs.c
--- a/cmd/wmii/fs.c Tue Jun 15 15:13:12 2010 -0400
+++ b/cmd/wmii/fs.c Wed Jun 16 18:32:09 2010 -0400
@@ -195,7 +195,7 @@
 static uint fs_size(IxpFileId*);
 
 static void
-dostat(Stat *s, IxpFileId *f) {
+dostat(IxpStat *s, IxpFileId *f) {
         s->type = 0;
         s->dev = 0;
         s->qid.path = QID(f->tab.type, f->id);
@@ -363,7 +363,7 @@
         r->fid->qid.type = f->tab.qtype;
         r->fid->qid.path = QID(f->tab.type, 0);
         r->ofcall.rattach.qid = r->fid->qid;
- respond(r, nil);
+ ixp_respond(r, nil);
 }
 
 void
@@ -394,7 +394,7 @@
 void
 fs_stat(Ixp9Req *r) {
         IxpMsg m;
- Stat s;
+ IxpStat s;
         int size;
         char *buf;
         IxpFileId *f;
@@ -402,7 +402,7 @@
         f = r->fid->aux;
 
         if(!ixp_srv_verifyfile(f, lookup_file)) {
- respond(r, Enofile);
+ ixp_respond(r, Enofile);
                 return;
         }
 
@@ -415,7 +415,7 @@
         ixp_pstat(&m, &s);
 
         r->ofcall.rstat.stat = (uchar*)m.data;
- respond(r, nil);
+ ixp_respond(r, nil);
 }
 
 void
@@ -427,7 +427,7 @@
         f = r->fid->aux;
 
         if(!ixp_srv_verifyfile(f, lookup_file)) {
- respond(r, Enofile);
+ ixp_respond(r, Enofile);
                 return;
         }
 
@@ -443,49 +443,49 @@
                 switch(f->tab.type) {
                 case FsFprops:
                         ixp_srv_readbuf(r, f->p.client->props, strlen(f->p.client->props));
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 case FsFColRules:
                 case FsFRules:
                         ixp_srv_readbuf(r, f->p.rule->string, f->p.rule->size);
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 case FsFKeys:
                         ixp_srv_readbuf(r, def.keys, def.keyssz);
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 case FsFCtags:
                         ixp_srv_readbuf(r, f->p.client->tags, strlen(f->p.client->tags));
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 case FsFClabel:
                         ixp_srv_readbuf(r, f->p.client->name, strlen(f->p.client->name));
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 case FsFBar:
                         ixp_srv_readbuf(r, f->p.bar->buf, strlen(f->p.bar->buf));
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 case FsFRctl:
                         buf = readctl_root();
                         ixp_srv_readbuf(r, buf, strlen(buf));
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 case FsFCctl:
                         buf = readctl_client(f->p.client);
                         ixp_srv_readbuf(r, buf, strlen(buf));
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 case FsFTindex:
                         buf = view_index(f->p.view);
                         ixp_srv_readbuf(r, buf, strlen(buf));
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 case FsFTctl:
                         buf = readctl_view(f->p.view);
                         n = strlen(buf);
                         ixp_srv_readbuf(r, buf, n);
- respond(r, nil);
+ ixp_respond(r, nil);
                         return;
                 }
         }
@@ -502,18 +502,18 @@
         uint i;
 
         if(r->ifcall.io.count == 0) {
- respond(r, nil);
+ ixp_respond(r, nil);
                 return;
         }
         f = r->fid->aux;
 
         if(!ixp_srv_verifyfile(f, lookup_file)) {
- respond(r, Enofile);
+ ixp_respond(r, Enofile);
                 return;
         }
 
         if(waserror()) {
- respond(r, ixp_errbuf());
+ ixp_respond(r, ixp_errbuf());
                 return;
         }
 
@@ -521,11 +521,11 @@
         case FsFColRules:
         case FsFRules:
                 ixp_srv_writebuf(r, &f->p.rule->string, &f->p.rule->size, 0);
- respond(r, nil);
+ ixp_respond(r, nil);
                 break;
         case FsFKeys:
                 ixp_srv_writebuf(r, &def.keys, &def.keyssz, 0);
- respond(r, nil);
+ ixp_respond(r, nil);
                 break;
         case FsFClabel:
                 ixp_srv_data2cstring(r);
@@ -535,13 +535,13 @@
                 frame_draw(f->p.client->sel);
                 update_class(f->p.client);
                 r->ofcall.io.count = r->ifcall.io.count;
- respond(r, nil);
+ ixp_respond(r, nil);
                 break;
         case FsFCtags:
                 ixp_srv_data2cstring(r);
                 client_applytags(f->p.client, r->ifcall.io.data);
                 r->ofcall.io.count = r->ifcall.io.count;
- respond(r, nil);
+ ixp_respond(r, nil);
                 break;
         case FsFBar:
                 i = strlen(f->p.bar->buf);
@@ -549,7 +549,7 @@
                 ixp_srv_writebuf(r, &p, &i, 279);
                 bar_load(f->p.bar);
                 r->ofcall.io.count = i - r->ifcall.io.offset;
- respond(r, nil);
+ ixp_respond(r, nil);
                 break;
         case FsFCctl:
                 mf = (MsgFunc)message_client;
@@ -563,7 +563,7 @@
         msg:
                 errstr = ixp_srv_writectl(r, mf);
                 r->ofcall.io.count = r->ifcall.io.count;
- respond(r, errstr);
+ ixp_respond(r, errstr);
                 break;
         case FsFEvent:
                 if(r->ifcall.io.data[r->ifcall.io.count-1] == '\n')
@@ -571,7 +571,7 @@
                 else
                         event("%.*s\n", (int)r->ifcall.io.count, r->ifcall.io.data);
                 r->ofcall.io.count = r->ifcall.io.count;
- respond(r, nil);
+ ixp_respond(r, nil);
                 break;
         default:
                 /* This should not be called if the file is not open for writing. */
@@ -588,7 +588,7 @@
         f = r->fid->aux;
 
         if(!ixp_srv_verifyfile(f, lookup_file)) {
- respond(r, Enofile);
+ ixp_respond(r, Enofile);
                 return;
         }
 
@@ -606,9 +606,9 @@
         || (r->ifcall.topen.mode&3) != OREAD && !(f->tab.perm & 0200)
         || (r->ifcall.topen.mode&3) != OWRITE && !(f->tab.perm & 0400)
         || (r->ifcall.topen.mode & ~(3|OAPPEND|OTRUNC)))
- respond(r, Enoperm);
+ ixp_respond(r, Enoperm);
         else
- respond(r, nil);
+ ixp_respond(r, nil);
 }
 
 void
@@ -619,24 +619,24 @@
 
         switch(f->tab.type) {
         default:
- respond(r, Enoperm);
+ ixp_respond(r, Enoperm);
                 return;
         case FsDBars:
                 if(!strlen(r->ifcall.tcreate.name)) {
- respond(r, Ebadvalue);
+ ixp_respond(r, Ebadvalue);
                         return;
                 }
                 bar_create(f->p.bar_p, r->ifcall.tcreate.name);
                 f = lookup_file(f, r->ifcall.tcreate.name);
                 if(!f) {
- respond(r, Enofile);
+ ixp_respond(r, Enofile);
                         return;
                 }
                 r->ofcall.ropen.qid.type = f->tab.qtype;
                 r->ofcall.ropen.qid.path = QID(f->tab.type, f->id);
                 f->next = r->fid->aux;
                 r->fid->aux = f;
- respond(r, nil);
+ ixp_respond(r, nil);
                 break;
         }
 }
@@ -648,20 +648,20 @@
 
         f = r->fid->aux;
         if(!ixp_srv_verifyfile(f, lookup_file)) {
- respond(r, Enofile);
+ ixp_respond(r, Enofile);
                 return;
         }
 
 
         switch(f->tab.type) {
         default:
- respond(r, Enoperm);
+ ixp_respond(r, Enoperm);
                 return;
         case FsFBar:
                 s = f->p.bar->screen;
                 bar_destroy(f->next->p.bar_p, f->p.bar);
                 bar_draw(s);
- respond(r, nil);
+ ixp_respond(r, nil);
                 break;
         }
 }
@@ -672,7 +672,7 @@
 
         f = r->fid->aux;
         if(!ixp_srv_verifyfile(f, lookup_file)) {
- respond(r, nil);
+ ixp_respond(r, nil);
                 return;
         }
 
@@ -694,7 +694,7 @@
                 update_keys();
                 break;
         }
- respond(r, nil);
+ ixp_respond(r, nil);
 }
 
 void
@@ -707,12 +707,12 @@
         if(f->pending)
                 ixp_pending_flush(r);
         /* else die() ? */
- respond(r->oldreq, Einterrupted);
- respond(r, nil);
+ ixp_respond(r->oldreq, Einterrupted);
+ ixp_respond(r, nil);
 }
 
 void
-fs_freefid(Fid *f) {
+fs_freefid(IxpFid *f) {
         IxpFileId *id, *tid;
 
         tid = f->aux;
diff -r c70b9f7c54f9 -r 5c26a61a3296 cmd/wmii/main.c
--- a/cmd/wmii/main.c Tue Jun 15 15:13:12 2010 -0400
+++ b/cmd/wmii/main.c Wed Jun 16 18:32:09 2010 -0400
@@ -405,7 +405,7 @@
         event_debug = debug_event;
 
         srv.preselect = event_preselect;
- ixp_listen(&srv, sock, &p9srv, serve_9pcon, nil);
+ ixp_listen(&srv, sock, &p9srv, ixp_serve9conn, nil);
         ixp_listen(&srv, ConnectionNumber(display), nil, event_fdready, closedisplay);
 
         def.border = 1;
diff -r c70b9f7c54f9 -r 5c26a61a3296 cmd/wmii/print.c
--- a/cmd/wmii/print.c Tue Jun 15 15:13:12 2010 -0400
+++ b/cmd/wmii/print.c Wed Jun 16 18:32:09 2010 -0400
@@ -34,15 +34,15 @@
 };
 
 static int
-qid(Fmt *f, Qid *q) {
+qid(Fmt *f, IxpQid *q) {
         return fmtprint(f, "(%uhd,%uld,%ullx)", q->type, q->version, q->path);
 }
 
 int
 Ffmt(Fmt *f) {
- Fcall *fcall;
+ IxpFcall *fcall;
 
- fcall = va_arg(f->args, Fcall*);
+ fcall = va_arg(f->args, IxpFcall*);
         fmtprint(f, "% 2d %s\t", fcall->hdr.tag, fcnames[fcall->hdr.type - TVersion]);
         switch(fcall->hdr.type) {
         case TVersion:
diff -r c70b9f7c54f9 -r 5c26a61a3296 debian/changelog
--- a/debian/changelog Tue Jun 15 15:13:12 2010 -0400
+++ b/debian/changelog Wed Jun 16 18:32:09 2010 -0400
@@ -1,5 +1,5 @@
-wmii-hg (hg2608) unstable; urgency=low
+wmii-hg (hg2728) unstable; urgency=low
 
- * Closes issue #175.
+ * Remove long deprecated special treatment of the '!' tag.
 
- -- Kris Maglione <jg_AT_suckless.org> Mon, 17 May 2010 12:35:12 -0400
+ -- Kris Maglione <kris_AT_suckless.org> Tue, 15 Jun 2010 15:13:12 -0400
diff -r c70b9f7c54f9 -r 5c26a61a3296 doc/wmii.tex
--- a/doc/wmii.tex Tue Jun 15 15:13:12 2010 -0400
+++ b/doc/wmii.tex Wed Jun 16 18:32:09 2010 -0400
@@ -236,19 +236,24 @@
 client. If a client is fullscreen, it contains the line:
 
 \begin{code}
- Fullscreen on
+ fullscreen on
 \end{code}
 
 \noindent To change this, you'd update the file with the line
-% XXX: Broken /ctl cmd.
-|Fullscreen off| or even |Fullscreen| |toggle| to toggle
+% XXX: Line broken at /ctl cmd.
+|fullscreen off| or even |fullscreen| |toggle| to toggle
 the client's fullscreen state.
 
 The concept of controlling a program via a filesystem derives
 from Plan 9, where such interfaces are extensive and well
-proven. The metaphor has shown itself to be quite intuitive to
-Unix users, once the shock of a “virtual” filesystem wears off.
-The flexibility of being able to control \wmii\ from myriad
+proven\footnote{The concept has also taken hold on most Unixes
+in the form of \texttt{/proc} and \texttt{/sys} virtual
+filesystems, but tends to be very kernel-centric. On Plan 9,
+where the model is more pervasive, there are more virtual
+filesystems for user-level applications than for the kernel.}.
+The metaphor has shown itself to be quite intuitive to Unix
+users, once the shock of a “virtual” filesystem wears off. The
+flexibility of being able to control \wmii\ from myriad
 programming languages, including the standard Unix shell and
 even from the command line, is well worth the shock.
 
@@ -780,8 +785,9 @@
 
 Key names can be detected by running |xev| from a
 terminal, pressing the desired key, and looking at the output
-(it's in the parentheses, after the keysym). A \wmii-specific
-utility is forthcoming.
+(it's in the parentheses, after the keysym). Or, more simply,
+you can run the \man 1 {wikeyname} utility bundled with \wmii\
+and press the key you wish to bind.
 
 Examples of key bindings:
 
@@ -874,19 +880,19 @@
 client is fullscreen, its control file will contain the line:
 
 \begin{code}
- Fullscreen on
+ fullscreen on
 \end{code}
 
 \noindent To restore the client from fullscreen, either of the
 following lines may be written to its control file:
 
 \begin{code}
- Fullscreen off
- Fullscreen toggle
+ fullscreen off
+ fullscreen toggle
 \end{code}
 
-When next read, the |Fullscreen on| line will have been replaced
-with |Fullscreen off|. No care need be taken to preserve the
+When next read, the |fullscreen on| line will have been replaced
+with |fullscreen off|. No care need be taken to preserve the
 other contents of the file. They're generated anew each time
 it's read.
 
@@ -903,15 +909,39 @@
   \item[ctl] The control file. The properties are:
     \index{filesystem!/client/*/@\clientlabel!ctl}
     \begin{description}
- \item[Fullscreen] The client's fullscreen state. When
+ \item[allow] The set of unusual actions the client is
+ allowed to perform, in the same format as the tag set.
+ \begin{description}
+ \item[activate] The client is allowed to activate
+ itself—that is, focus its window and, as the case may
+ require, uncollapse it and select a tag it resides on.
+ This flag must be set on a client if you wish it able to
+ activate itself from the system tray.
+ \end{description}
+ \item[floating] Defines whether this client is likely to
+ float when attached to a new view. May be |on|, |off|,
+ |always|, or |never|. Ordinarilly, the value changes
+ automatically whenever the window is moved between the
+ floating and managed layers. However, setting a value of
+ |always| or |never| overrides this behavior.
+ \item[fullscreen] The client's fullscreen state. When
         |on|, the client is displayed fullscreen on all of its
         views. Possible values are |on|, |off|, and |toggle|.
- \item[Urgent] The client's urgency state. When |on|, the
+ \item[group] The client's group ID, or 0 if not part of a
+ group. Clients tend to open with the same tags and in
+ the same columns as the last active member of their
+ group. Setting this property is only useful when done
+ via the rules file.
+ \item[kill] When written, the window is closed politely,
+ if possible.
+ \item[pid] Read-only value of the PID of the program that
+ owns the window, if the value is available and the
+ process is on the same machine as wmii.
+ \item[slay] When written, the client is killed peremptorily.
+ \item[tags] The client's tags. The same as the tags file.
+ \item[urgent] The client's urgency state. When |on|, the
         client's layout box will be highlighted. Possible values
         are |on|, |off|, and |toggle|.
- \item[kill] When written, the window is closed politely,
- if possible.
- \item[slay] When written, the client is killed peremptorily.
     \end{description}
   \item[props] The client's window class (the X11 |WM_CLASS|
     property) and title string, separated by colons. This file
@@ -922,14 +952,20 @@
     \index{filesystem!/client/*/@\clientlabel!label}
   \item[tags]
     \index{filesystem!/client/*/@\clientlabel!tags}
- The client's tags. Tag names are separated by |+|
- signs. Tags beginning and ending with |/| are treated as
- regular expressions. If the written value begins with a |+|
- or a |-|, the tags are updated rather than overwritten. Tag
- names which directly follow a |-| sign are removed rather
- than added. Regular expression tags which directly follow a
- minus sign are treated as exclusion expressions. For
- example, the tag string |+/foo/-/food/| will match the tag
+ The client's tags. Tag names are separated by |+|, |-|, or
+ |^| signs. Tags beginning and ending with |/| are treated as
+ regular expressions, which place the client on any extant
+ matching tag\footnote{While a client with a regex tag will
+ always appear in all matching views, it will not keep those
+ views in existence. When the last client explicitly tagged
+ with a view is removed, the view is deleted as soon as it
+ becomes inactive.}. If the written value begins with a |+|,
+ |-|, or |^|, the tags are updated rather than overwritten.
+ Tag names which directly follow a |-| sign are removed
+ rather than added, while those following a |^| are toggled.
+ Regular expression tags which directly follow a minus sign
+ are treated as exclusion expressions. For example, the tag
+ string |+/foo/-/food/| will match the tag
     |foobar|, but not the tag |foodstand|.
 \end{description}
 
@@ -967,9 +1003,9 @@
   «Client Menu Events» ::=
   ClientMouseDown) # ClientMouseDown ‹Client ID› ‹Button›
     [ $2 = 3 ] && clickmenu \
- “Delete:xwrite /client/$1/ctl kill” \
- “Kill:xwrite /client/$1/ctl slay” \
- “Fullscreen:/client/$1/ctl Fullscreen on”
+ “Delete:wmiir xwrite /client/$1/ctl kill” \
+ “Kill: wmiirxwrite /client/$1/ctl slay” \
+ “Fullscreen:wmiir xwrite /client/$1/ctl fullscreen on”
 \end{code}
 
 \subsection{Unresponsive Clients}
@@ -1128,8 +1164,8 @@
   «Command Execution Initialization» ::=
   terminal() { wmiir setsid xterm “$@” }
   proglist() {
- IFS=: set -- $1
- find -L $@ -maxdepth 1 -perm /111 | sed ‘1d; s,.*/,,’ | sort | uniq
+ IFS=:
+ wmiir proglist $1 | sort | uniq
       unset IFS
   }
 \end{code}
@@ -1232,22 +1268,35 @@
         If there is no ‹n›th width, it is given
         $1/\mbox{‹ncol›th}$ of the screen.
 
- \item[tagrules]
- \index{filesystem!/!tagrules}
- The |/tagrules| file contains a list of
- rules similar to the colrules. These rules specify
- the tags a client is to be given when it is created.
- Rules are specified:
+ \item[rules]
+ \index{filesystem!/!rules}
+ The |/rules| file contains a list of
+ rules similar to the colrules. These rules set
+ properties for a client when it is created.
+ Rules are specified:
 
- \begin{quote}\texttt{
- /‹regex›/ -> ‹tag›{\color{gray}[}+‹tag›{\color{gray}]*}}
- \end{quote}
+ \begin{quote}\texttt{
+ /‹regex›/ -> ‹key›{\color{gray}=}‹value› {\color{gray}\ldots}}
+ \end{quote}
 
- When a client's ‹name›:‹class›:‹title› matches
- ‹regex›, it is given the tagstring ‹tag›. There are
- two special tags. |!|, which is deprecated, and identical
- to |sel|, represents the current tag. |~|
- represents the floating layer.
+ When a client's ‹name›:‹class›:‹title› matches
+ ‹regex›, the matching rules are applied. For each
+ ‹key›=‹value› pair, the |ctl| file property matching
+ ‹key› is set to ‹value›. Additionally, the following
+ keys are accepted and have special meaning:
+
+ \begin{description}
+ \item[continue]
+ Normally, when a matching rule is encountered,
+ rule matching stops. When the continue key is
+ provided (with any value), matching continues at
+ the next rule.
+ \item[force-tags]
+ Like tags, but overrides any settings obtained
+ obtained from the client's group or from the
+ |_WMII_TAGS| window property.
+ \end{description}
+
 \end{description}
 
 \index{!filesystem!/|)}
@@ -1312,8 +1361,8 @@
   # «Command Execution Initialization»
   terminal() { wmiir setsid xterm “$@” }
   proglist() {
- IFS=: set -- $1
- find -L $@ -maxdepth 1 -perm /111 | sed ‘1d; s,.*/,,’ | sort | uniq
+ IFS=:
+ wmiir proglist $1 | sort | uniq
       unset IFS
   }
 
@@ -1448,7 +1497,7 @@
 
           # «Client Command Keys»
           Mod4-Shift-c) wmiir xwrite /client/sel/ctl kill;;
- Mod4-f) wmiir xwrite /client/sel/ctl Fullscreen toggle;;
+ Mod4-f) wmiir xwrite /client/sel/ctl fullscreen toggle;;
 
           # «Command Execution Keys»
           Mod4-Return) terminal & ;;
@@ -1484,9 +1533,9 @@
       # «Client Menu Events»
       ClientMouseDown) # ClientMouseDown ‹Client ID› ‹Button›
         [ $2 = 3 ] && clickmenu \
- “Delete:xwrite /client/$1/ctl kill” \
- “Kill:xwrite /client/$1/ctl slay” \
- “Fullscreen:/client/$1/ctl Fullscreen on”
+ “Delete:wmiir xwrite /client/$1/ctl kill” \
+ “Kill:wmiir xwrite /client/$1/ctl slay” \
+ “Fullscreen:wmiir xwrite /client/$1/ctl fullscreen on”
 
       # «Tag Menu Events»
       LeftBarMouseDown) # LeftBarMouseDown ‹Button› ‹Bar Name›
diff -r c70b9f7c54f9 -r 5c26a61a3296 mk/wmii.mk
--- a/mk/wmii.mk Tue Jun 15 15:13:12 2010 -0400
+++ b/mk/wmii.mk Wed Jun 16 18:32:09 2010 -0400
@@ -20,7 +20,8 @@
 
 CFLAGS += '-DVERSION=\"$(VERSION)\"' '-DCOPYRIGHT=\"$(COPYRIGHT)\"' \
           '-DCONFDIR=\"$(CONFDIR)\"' '-DCONFPREFIX=\"$(ETC)\"' \
- '-DLOCALCONF=\"$(LOCALCONF)\"' '-DGLOBALCONF=\"$(GLOBALCONF)\"'
+ '-DLOCALCONF=\"$(LOCALCONF)\"' '-DGLOBALCONF=\"$(GLOBALCONF)\"' \
+ -DIXP_NEEDAPI=127
 
 FILTER = sed "s|@CONFPREFIX@|$(ETC)|g; \
               s|@GLOBALCONF@|$(GLOBALCONF)|g; \
diff -r c70b9f7c54f9 -r 5c26a61a3296 util/link
--- a/util/link Tue Jun 15 15:13:12 2010 -0400
+++ b/util/link Wed Jun 16 18:32:09 2010 -0400
@@ -27,7 +27,7 @@
 [ -n "$noisycc" ] && echo $LD -o $outfile $ofiles $LDFLAGS $args
 $LD -o $outfile $ofiles $LDFLAGS $args >$xtmp 2>&1
 status=$?
-[ $status -eq 0 ] || $LD -o $outfile $ofiles $LDFLAGS $args >&2
+[ $status -eq 0 ] || echo $LD -o $outfile $ofiles $LDFLAGS $args >&2
 
 sed 's/.*: In function `[^:]*: *//' $xtmp | egrep . |
 egrep -v 'is almost always misused|is dangerous, better use|in statically linked applications requires at runtime'
Received on Wed Jun 16 2010 - 22:32:19 UTC

This archive was generated by hypermail 2.2.0 : Wed Jun 16 2010 - 22:36:03 UTC