wmix: fix multiple definitions of global variables.
[dockapps.git] / wmswallow / README
blobbdfcbfcef367967ad27135f39d498c6115c06420
1                 wmswallow
3         A WindowMaker dock applet to make any application dockable.
5         Copyright 2000 by Friedrich Delgado Friedrichs
7            (be sure to read the LICENCE file as well)
9 ===========================================================================
11 Why?
12 ----
13         I wanted to have coolmail in my Windowmaker dock.
15 How?
16 ----
18 INSTALLATION:
19 +++++++++++++
20         untar the sources by typing something along the lines of
22         zcat wmswallow.tar.Z|tar cvf -
23         cd wmswallow
24         make <platform>
26         where platform is currently one out of
27                 xfree, solaris, solaris-gcc
29         The xfree target works under linux and freebsd.
31         Linux is tested best, since i'm hacking this stuff under linux (at
32         home). I have access to several Solaris Workstations (some sparcs, and
33         2 pcs) whith quite different Installations which i regularly use, so
34         the solaris target will at least get some attention. Solaris users
35         please read README.solaris for some hints.
37         Other Unices might or might not get happy with the xfree target or
38         some or other... I really think using autoconf/automake for this small
39         app would be overkill. If you devise a proper patch for a different
40         Unix-flavour, i will include it, but i might not be able to test it.
41         (I have currently access to FreeBSD and AIX, in addition to my
42         "home-platforms")
44         After compilation put the binary somewhere you like (e.g. in /usr/local/bin)
45         and in case you want to delete the Sourcetree, you might want to copy the
46         README to /usr/doc/wmswallow
48         Now try
49                 wmswallow -h
50         to get a basic idea how it works.
52 USE:
53 ++++
54         Then some things you might try out are:
55         (i.e. lots of)
56         EXAMPLES:
57         =========
59 ------- wmswallow coolmail coolmail
60                 (Will make coolmail docked, but it starts an xterm with mailx
61                  per default so you will probably want:)
63 ------- wmswallow coolmail coolmail -e "xterm -n mutt -T mutt -e mutt"
65 ------- wmswallow glbiff glbiff
66                 (glbiff is really a killer! Try it! (If you have some 3D
67                  hardware) :-) Find it at
68                  http://www.dgp.toronto.edu/~mac/projects/glbiff.html
70 ------- wmswallow asclock asclock -shape -exe plan
71                 (Works with the unpatched "classic" version of asclock)
73 ------- wmswallow oclock oclock -transparent -minute red -bd green
74                 (is one of my personal favorites)
76 ------- wmswallow tuXeyes tuXeyes --puppy
77                 (a nice alternative to xeyes)
79 ------- wmswallow Lament /usr/local/bin/demos/lament -name Lament -geom 55x57
80                 (/usr/local/bin/demos is where my xscreensaver demos are
81                 installed.
82                 This commandline demonstrates two things:
83         1. You can give a WM_CLASS on the commandline instead of a WM_NAME
84         2. Some applications don't handle resizing well and must get the correct
85            geometry on their commandline, which is always 55x57 for dockapps.)
87 ------- wmswallow xaos xaos
88                 (This kinda obsoletes wmmand :-)
90 ------- wmswallow xload xload -nolabel -hl LightSeaGreen -fg LightSeaGreen \
91                 -bg black -update 5
92                 (This is like wmload, but there is a frame at the edges which is a
93                 little annoying, so wmload is a better choice)
95 ------- wmswallow -focus XTerm
96                 (Weeelll...
97         1. wmswallow can swallow apps without starting them
98         2. it takes the first it gets
99         3. swallowed apps can take keyboard focus now! (Is that useful? I doubt
100            it, but i could not resist :-))
102 ------- wmswallow -geom 64x64 -getclick "xterm -e top" xeyes xeyes
103                 (A more advanced example. The xeyes look better with 64x64 than
104                  with the default width/height of 55x57, and since xeyes ignores
105                  mouseclicks, we can grab them and execute an xterm on a click.
106                  Note that you must poke xeyes right in the eye! :-)
108 ------- wmswallow -noshape -getclick gtop -geom 57x57 xload xload -nolabel \
109         -hl LightSeaGreen -fg LightSeaGreen -bg black -update 5
110                 (This looks and behaves a little more like wmload. Executes
111                  the "Gnome Systemmonitor" on a mouse click. The -noshape
112                  option lets wmswallow ignore any shape the application might
113                  have. I thought this would increase performance for some
114                  apps, but it doesn't. [It just uses a very slight bit less
115                  memory])
116 ------- wmswallow -unmanaged xteddy xteddy
117                 (swallows the left ear of an xteddy, that will complain about it...
118                  completely useless :-)
119 ------- wmswallow -focus bb xterm -bg black -fg white -T bb -fn "-*-*-*-*-*-*-2-*-*-*-*-*-*-*" -geometry 50x25 -e bb -driver curses
120                 (utterly useless as well! :)
122 How not?
123 --------
124         When should you *not* use wmswallow?
126 -       In general, if a special dockapp for that purpose already exists, you
127         should use it, because every instance of wmswallow has a memory
128         footprint of about 600k, and a simple dockapp usually uses less
129         ressources. If the WindowMaker developers will one day choose to
130         implement "swallowing" applications as a feature in the WindowMaker
131         dock, this will probably a much more simple and clean solution.
133 -       You should not swallow applications over slow network links.
134         First tests show, that 2 mbit/s are more than enough, but 90kbit/s get
135         terribly hogged if you run wmswallow on a remote hosts over such a
136         link. Note that i am not referring to your hardware, but to the
137         overall throughput that can be acchieved between the two hosts.
139 Have a lot of fun... :-)
141 Thanks
142 ------
143         The following people helped and/or contributed to wmswallow:
145         Dan Piponi <dan@mvfx.com>:
146                 Makefile fix for FreeBSD
148         Jason Lowdermilk <lowdermilk@visto.com>:
149                 diff to enable wmswallow really to look after the WM_NAME of a
150                 window.
151                 Valuable suggestions and code on how to identify the wanted
152                 window more reliably.
153                 further valuable input
155         honx:
156                 Giving me the idea to wmswallow, by constantly nagging that
157                 WindowMaker cannot swallow apps :-) Next thing to satisfy this
158                 dude, somebody will have to write a pager for WindowMaker
159                 (like the one for fvwm) that works *without* gnome... Somebody
160                 else will have to do that, since i don't like Pagers :-)