reverted to KeepInsideScreen
[wmaker-crm.git] / README
blob7a9e197fd99cf1d2aa921ff2526134f8f5cc1880
4                                 GNU Window Maker
5                                X11 Window Manager
7                            <http://windowmaker.org>
8                          <ftp://ftp.windowmaker.org>
10                                      by
12                              Alfredo K. Kojima 
14                                  Dan Pascu
16                               Matthew Hawkins
18                                     ]d
21                                Web/FTP Master
23                                Phillip Smith
27                 Congratulations! You have purchased an extremely fine
28         device that would give you thousands of years of trouble-free 
29         service, except that you undoubtably will destroy it via some 
30         typical bonehead consumer maneuver. Which is why we ask you
31         to PLEASE FOR GOD'S SAKE READ THIS OWNER'S MANUAL CAREFULLY
32         BEFORE YOU UNPACK THE DEVICE. YOU ALREADY UNPACKED IT, DIDN'T
33         YOU? YOU UNPACKED IT AND PLUGGED IT IN AND TURNED IT ON AND 
34         FIDDLED WITH THE KNOBS, AND NOW YOUR CHILD, THE SAME CHILD WHO
35         ONCE SHOVED A POLISH SAUSAGE INTO YOUR VIDEOCASSETTE RECORDER
36         AND SET IT ON "FAST FORWARD", THIS CHILD ALSO IS FIDDLING
37         WITH THE KNOBS, RIGHT?  AND YOU'RE JUST NOW STARTING TO READ 
38         THE INSTRUCTIONS, RIGHT???  WE MIGHT AS WELL JUST BREAK THESE 
39         DEVICES RIGHT AT THE FACTORY BEFORE WE SHIP THEM OUT, YOU 
40         KNOW THAT? 
41                                 -- Dave Barry, "Read This First!"
44 Description
45 ===========
47 Window Maker is the GNU window manager for the X Window System. It was
48 designed to emulate the look and feel of part of the NEXTSTEP(tm) GUI. It's
49 supposed to be relatively fast and small, feature rich, easy to configure and
50 easy to use, with a simple and elegant appearance borrowed from NEXTSTEP(tm).
52 Window Maker was designed keeping integration with GNUstep in mind and is the
53 "official" window manager for it. It is also part of the GNU project
54 (www.gnu.org) Read more about GNUstep further on this file.
56 Hints (information given by applications to integrate well with the window 
57 manager) for Motif(tm), OPEN LOOK(tm), KDE and GNOME are also supported. 
58 So you can replace any of the window managers for these environments
59 with Window Maker while keeping most, if not all, of the native window manager
60 functionality.
62 Window Maker was previously called WindowMaker.
64 Window Maker has no connection with Windowmaker, the software for
65 making windows and doors.
68 Documentation
69 =============
71 Read before asking.
73 * README files all over the source tree have info related to the stuff
74 in the directories. 
76 * INSTALL has installation instructions and some troubleshooting tips.
77 You're meant to read it before installing. it was not written just to 
78 fill up space in the package...
80 * FAQ: Frequently Asked Questions. READ IT!!! FAQ.I18N is for
81 internationalization related questions.
83 * NEWS: list user visible changes from the previous version. Read it if
84 you are upgrading.
86 * MIRRORS: some alternative places where you can get Window Maker,
87 including platform specific packages of Window Maker.
89 * BUGFORM: use it to send bug reports. Please do use it.
91 * ChangeLog: what changed from the previous version?
93 * BUGS: list of known bugs
96 *** User Guide
98 The Window Maker User's Guide can be downloaded from the official ftp
99 or web sites.
100 It can also be viewed in HTML format in:
101 http://people.delphi.com/crc3419/WMUserGuide/index.htm
103 The User Guide explains how to use Window Maker, the configuration files
104 and options.
107 *** man pages
109 Type "man wmaker" in the shell prompt to get general help about Window Maker
113 Directories & Files in the Source Tree
114 ======================================
116 * Install is a script for configuring and compiling Window Maker in a easy
117 way (not that the normal way is difficult, but...).
119 * AUTHORS: the credits
121 * TODO: plans for the future
123 * contrib/ has some contributed patches that are not supported by Window Maker
124   because they conflict with design filosophies of the developers or some 
125   other reason.
127 * util/ has various utility programs.
129 * WPrefs.app/ is the configuration program. 
131 * src/wconfig.h has compile time options you can change to select some
132 options/features and other stuff. 
134 * WINGs/ NEXTSTEP lookalike widget library
136 * wrlib/ image processing library
138 * po/ has message catalogs wich are the translated versions of the messages
139 displayed by Window Maker.
141 * docklib-x.x.tar.gz  a library for writing dockapps
144 HELP ME!!!
145 ==========
147 There is a mailing list for discussing Window Maker at
148 wm-user@windowmaker.org To subscribe to it, send a message containing:
149         subscribe 
150 in the subject of the message to wm-user-request@windowmaker.org
152 If you got a problem, ask there (after reading the docs, of course). The
153 people there is more likely to be able to answer your questions than we are.
154 For bug reports use the BUGFORM.
156 If you have a problem with a precompiled version of Window Maker 
157 (rpm, deb etc), first ask the person who made the package.
159 IMPORTANT NOTE: when asking for help (in the mailing list or to the
160 developerts, directly) *always* send information about the system you are
161 using. You can use the system information section at the end of BUGFORM as a
162 guideline. Another thing: please don't send HTML mail.
165 There is also a #windowmaker IRC channel at openprojects. To join there,
166 connect your irc client to irc.openprojects.net, irc.linux.com or some other
167 server of that network.
170 GNUstep
171 =======
173 GNUstep is a complete object-oriented development system, based on the
174 OpenStep specification released by NeXT(tm) (now Apple(tm)) and Sun(tm). It
175 will provide everything one needs to produce cross-platform, object-oriented,
176 graphical (and non-graphical) applications; providing among other things,
177 base system libraries, a high-level GUI application framework that uses a
178 Display PostScript(tm)-like imaging model (DGS), objects for accessing
179 relational databases, distributed objects and a graphical development
180 environment, with tools like interface modeller, a project management system
181 (project center) and other tools.
183 The GNUstep development system will be used to create a user environment,
184 with everything needed for a complete graphical user interface, such as a
185 file viewer, text editors and other applications. Note that the user
186 environment (or "desktop environment") is only a small part of the whole
187 GNUstep project and therefore it does not "compete" with other projects like
188 KDE or GNOME, simply because they are completely different things.
190 For more information on the GNUstep project, visit: http://www.gnustep.org
191 and http://gnustep.current.nu
194 Running multiple instances of Window Maker
195 ==========================================
197 It is not a good idea to run more than one instance of Window Maker
198 from the same user (so that wmaker will use the same configuration
199 files) at the same time. You might get unexpected behaviour when Window Maker
200 updates it's configuration files.
203 Sound support
204 =============
206 Sound is supported for Linux and FreeBSD systems with the use of a
207 separately distributed module. You can download it at:
208 http://www.frontiernet.net/~southgat/wmsound
210 Note that you must compile Window Maker with the --enable-sound configure
211 flag and set the DisableSound option to NO.
214 OpenL**k support
215 ================
217 I guess many users, mainly from the academic world, have to use
218 applications written using the OpenL**k toolkits, so having support
219 for these apps must be of some use.
221 To enable, use --enable-openlook when doing the configure. Note that
222 not everything is implemented. 
224 Implemented stuff include decoration hints and the push-pin. Not implemented
225 stuff include _SUN_WINDOW_STATE (the compose led state stuff), drag and drop
226 interest stuff, header (not sure what's it) and footer strings.
228 Please give me feedback if something doesn't work. If the feature is
229 already implemented, but is not working because of a bug, I'll try to
230 have that fixed. If it's a non-implemented feature and you mention that
231 it's important (ie: not just cosmetical), I'll consider implementing it.
233 The "out" state of the pushpin is emulated as a pushed-in close button.
234 Just click on the button to make it pushed-out, which corresponds
235 to the pinned-in state of the pushpin. If you push again in the pushed-out
236 close button, it will act as a normal close button: it will close the window.
239 Performance Tuning
240 ==================
242 If you want to diminish Window Maker's memory usage and improve performance,
243 while keeping a nice appearance and good functionality, follow the items
244 bellow:
246 - use solid textures for everything, mainly titlebars and menus. If you
247   want a nice looking desktop, use the Traditional style.
248 - turn NewStyle and Superfluous off
249 - do not bind many shortcuts in the menu and keep only the essential items
250   in the menu
251 - turn on DisableClip
252 - edit wconfig.h and disable the NUMLOCK_HACK and the features you
253   don't use anyway (keep in mind that some of the #defines might not
254   work, as they are not fully supported). Make sure to always keep
255   NumLock and ScrollLock turned off.
256 - turn on DisableAnimations. You can also #undefine ANIMATIONS in wconfig.h
257 - strip down the default IconPath and PixmapPath entries to contain only 
258   the paths that you really have in your system. 
259 - do not use large images in the root background
260 - remove support for image formats you don't use
261 - to reduce memory usage, disable the icon cache, by setting the RIMAGE_CACHE
262   environment variable to 0. If you want to increase performance at the cost
263   of memory usage, set it's value to a value like the number of different
264   icons you use.
267 Keyboard Mouse Control
268 ======================
270 Many people ask about adding keyboard control of mouse, like in fvwm,
271 but Window Maker will not have such feature. The XKB extension supports
272 mouse simulation from the keyboard, in a much more powerfull fashion than
273 any simulation done by a window manager. 
275 To enable it, hit the Control+Shift+NumLock or Shift+NumLock key combination. 
276 You should hear the speaker beeping. To disable it, do the same thing.
278 To control the mouse the numeric keypad is used as follows:
279 - 4 (left arrow), 7 (Home), 8 (up arrow), 9 (PgUp), 6 (right arrow), 
280 3 (PgDn), 2 (down arrow) and 1 (End) move the mouse to the corresponding
281 direction;
282 - holding one of the above keys and then holding the 5 key will move the
283 pointer faster;
284 - / will select the first mouse button (left button);
285 - * will select the second mouse button (middle button);
286 - - will select the third mouse button (right button);
287 - 5 will do a click with the currently selected mouse button;
288 - + will do a double-click with the currently selected button;
289 - 0 (Ins) will click and hold the currently selected button;
290 - . (Del) will release the currently selected button that was previously
291 clicked with the 0 (Ins) key.
294 The above key values work in a XFree86 3.2 (X11R6.1) X server but your
295 milleage may vary.
298 How to make a gdb backtrace
299 ===========================
301 Backtraces can help us fix bugs that make Window Maker crash. If you
302 find a bug that crashes Window Maker, please send a backtrace with your
303 bug report.
305 To make a usefull backtrace, you need a core file with debugging
306 information produced by Window Maker when it crashes. The default
307 for Window Maker is to restart another window manager when it crashes,
308 so you will not get a core file. You need to edit the src/wconfig.h
309 file *after* running configure and change the line that looks like:
311 #undef NO_EMERGENCY_AUTORESTART
315 #define NO_EMERGENCY_AUTORESTART
317 Then, in the src directory type:
318 make clean
319 make CFLAGS=-g
320 make install
322 and wait for Window Maker to be installed.
324 Once having Window Maker installed, start X and reproduce the bug so
325 that Window Maker crashes. When it does crash, go to the directory
326 where you compiled wmaker and type the following from your shell:
328 script
329 cd src
330 gdb .libs/wmaker path_to_the_core_file
332 Then, in the gdb prompt type "bt". Quit from gdb by typing "quit"
333 and then, in the shell prompt, type "exit".
335 The file named typescript will contain the backtrace.
339 Copyrights & Disclaimers
340 ========================
342 Window Maker is copyrighted by Alfredo K. Kojima and is licensed through the
343 GNU General Public License. Read the COPYING file for the complete license.
345 The icons that are distributed with this program and were made by Marco van
346 Hylckama Vlieg are licensed through the OpenContent License. Read the 
347 COPYING.OPL file for the complete license.
349 NeXT, OpenStep and NEXTSTEP are a trademarks of NeXT Computer, Inc.
350 All other trademarks are property of their respective owners.
352 The authors reserve the right to make changes in the software without prior
353 notice.
356 Authors
357 =======
359 Alfredo K. Kojima <kojima@windowmaker.org>
360 Dan Pascu <dan@windowmaker.org>
361 Matt Hawkins <matt@windowmaker.org>
362 ]d <id@windowmaker.org>
364 Please don't ask us questions before reading the documentation (esp. the
365 FAQ, this file and INSTALL files) and about "cool" things you see in
366 people's desktop screenshots.
369 The AUTHORS file contains a list of the people who have contributed to the
370 project. The name of people who have helped with localization (translation)
371 can be found in po/README and Window Maker/README
373 If you have any comments, fixes and bug reports (filled BUGFORMs) send them
374 to developers@windowmaker.org
379 Musicware
380 =========
382 If you use Window Maker and *really* like it, please consider making my day
383 by sending me a music CD (or a MiniDisc or even a MP3 CDR) of your favorite
384 band, singer, instrumentist, composer or whatever :^). I like listening to
385 music and would love to get new CDs, especially from other parts of the
386 world. I like almost any kind of music, from Ozzy Osbourne to Bach (mas não
387 pagode e sertanejo pelamordideus :), so I will be happy to receive just about
388 anything.
390 Snail mail address:
392 Alfredo Kengi Kojima
393 Rua Firmino O. Bimbi, 255/25B
394 Porto Alegre - RS
395 CEP 91751-330
396 Brazil