|
 |
 |
 |
 |
FAQ - CHAPTER 5 |
 |
Chapter 5: Application Compatibility
5.1 How do I assign gimp an appicon?
You can enter the following line in WMWindowAttributes:
gimp={Icon="gimp.tiff";};
Window Maker now can assign Icons from within the windowmanager. To do so, right
click on the title bar of an app, click on the droplist->Icon and WorkSpace entry, enter the icon file name (
make sure this is in your pixmap path ), click update, apply, and then save.
5.2 How do I get an appicon for XEmacs 20.3+?
Thanks to Michael Hafner for this answer.
You don't need to patch the XEmacs code, just run
./configure --with-session=yes (in addition to any other options you use)
in your XEmacs 20.3+ sourcedir and rebuild it. Then XEmacs shows an appicon
when running and you can easily dock it.
5.3 Where do I get the nifty clock program I always see on people's desktops?
It's called asclock. Once included with Window Maker, it now is available
at ftp://ftp.windowmaker.org/pub/contrib/srcs/apps/asclock.tgz
asclock was written by Beat Christen and used to have its own website, which
seems to have disappeared. However, references to it exist all over
the place, and can be found by searching Google.
Beat Christen wrote this awhile back:
"Please note that the asclock-gtk version 2.0 beta 4
(asclock-gtk-2.0b4.tar.gz) does not have the -d switch yet and that the
asclock-xlib-2.1b2.tar.gz does not have the shaped asclock builtin."
A wonderful alternative to asclock is Jim Knoble's
wmclock.
It duplicates asclock and adds some much needed improvements.
5.4 How do you dock asclock?
It is highly recommended that you use the asclock mentioned previously in question 5.3. The asclock that is typically included in AfterStep will not properly dock with Window Maker. At this point, there are at least four or five different versions of asclock floating about.
For older versions such as asclock-classic , use a command line similar to
asclock -shape -iconic -12 &
For newer versions such as asclock-xlib 2.0 and asclock-gtk use
asclock -shape -iconic -12 -d &
Drag it from the top right corner of the clock to the dock. Right click on the icon and
select autolaunch.
In order to make asclock launch every time you start Window Maker, right click on the
outer edge of the border for asclock until a menu appears. Select the "Settings" item
and then select the "Lauch this Program Automatically" option then select the "OK"
button.
If you get an error such as sh: /dev/console: Permission denied, login as root, cd to /dev/ and run
./MAKEDEV console
5.5 Where can I get more dockapps?
The Window Maker team got tired of people E-mailing constantly asking where the websites for obscure dockapps disappeared to. So we've created the ultimate dockapps community website.
Visit dockapps.org for the latest, up-to-date links, information, and download for Window Maker and related dockapps.
Another large index of dockapp links is available at http://www.bensinclair.com/dockapp . The downside to this is that they're only links, so if someone stops maintaining a dockapp, or their web hosting provider cuts them off, you won't be able to get to it. Still, Ben Sinclair's site was the first big "dockapp warehouse" site, so we give credit where credit is due. :)
5.6 How do I get an appicon for rxvt so I can dock it?
The default rxvt that comes with most distributions is an outdated version of rxvt. The
newest development version of rxvt is availible from
ftp://ftp.math.fu-berlin.de/pub/rxvt/devel/. As of the time of this writing, the version is
2.4.7 and it natively produces an appicon without a patch.
John Eikenberry has also created an rpm which is available from
ftp://ftp.coe.uga.edu/users/jae/windowmaker
5.7 How do I allow Alt+# to work in an rxvt/xterm session?
First, Launch a unique instance of rxvt or xterm. This can be done using the -N
option of rxvt.
rxvt -name foo -e irc
Then, go to the Attributes menu ( right click on titlebar -> Attributes) / Advanced
Options and enable "Don't Bind Keyboard shortcuts". Click Save and Apply and you
should be able to run your session without the shortcuts.
5.8 How do I get different icons for different rxvt's and xterms?
The hint is the -name option for xterm or rxvt. This will allow you to change the exact
WM_CLASS in the attributes menu and assign a unique icon.
rxvt -name foo -title Testing
Then Right click on the title bar to bring up the attributes menu, and you will be able
to edit the properties for foo.XTerm (ie: assign a unique icon).
5.9 How do I launch multiple instances of XTerm from one appicon?
Thanks for the update by Sara C. Pickett:
The easiest way to accomplish this is to dock XTerm as normal. Then
Go to the Attributes menu -> Application Specific and select no application icon
for XTerm.
Then right-click on the docked appicon and select settings. Change the
Application Path with arguments section to
'/bin/sh -c "exec xterm &"'
5.10 Window Maker breaks scilab.
If you refer to the problem of the "graphics" window of scilab not showing
up in Window Maker, this is caused by a bug in scilab. You can see the
cause of the problem by yourself, by running xprop on the graphic window:
WM_NORMAL_HINTS(WM_SIZE_HINTS):
user specified location: 136679205, 1074468360
user specified size: 400 by 300
program specified minimum size: 400 by 300
Now, when scilab opens it's window, Window Maker nicely does exactly what it
is told, that is, map the window at position 136679205, 1074468360 which
obviously falls outside the screen no matter how big is your monitor ;)
Meanwhile, the workaround for this is to open the window list menu
(click on the root window with the middle mouse button) and click
on the ScilabGraphic entry. The window should be brought to your
reach. Then, open the window commands menu (right click on window's
titlebar) and open the Attributes panel. Go to the "Advanced Options"
section, check the "Keep inside screen" option and save.
If you can recompile Scilab, this came from a Scilab developer:
replace
size_hints.flags = USPosition | USSize | PMinSize;
with
size_hints.flags = /** USPosition |**/ USSize | PMinSize;
in routines/xsci/jpc_SGraph.c
5.11 How do I get a transparent xterm/rxvt/xconsole?
You need a terminal emulator that has support for transparency, like
Eterm, the latest rxvt, wterm, aterm or gnome-terminal.
You can find these programs on http://www.freshmeat.net
5.12 How do I dock an arbitrary console application like mutt?
There are two key things to do if you want a program (such as mutt) to
be able to start in a terminal window from the Dock or the Clip:
(1) Make the terminal window start the program you want to run
instead of a shell. Both xterm and rxvt (and its descendants)
are capable of doing this. For example:
xterm -e mutt
rxvt -e mutt
gnome-terminal -e mutt
(2) Convince Window Maker that the resulting terminal window is not a
regular terminal window, but rather some other program instance.
Both xterm and rxvt are also capable of doing this. Make sure
that -e is the last command option. For example:
xterm -name muttTerm -e mutt
rxvt -name muttTerm -e mutt
gnome-terminal --name=muttTerm -e mutt
This causes the instance of the terminal window that you start to
have an <instance-name>.<class-name> pair of `muttTerm.XTerm'
(usually rxvt's class is also XTerm; don't know about its
descendants, such as wterm and Eterm).
Do not use spaces or periods in the instance name. For example,
these are BAD instance names:
xterm -name mutt.term -e mutt
rxvt -name 'mutt term' -e mutt
Window Maker will not like you if you use them.
With a different instance name, you can now do the following:
- Dock the resulting appicon in the dock, or clip it to the Clip.
- Assign a different icon and different window properties to
the `special' terminal window running your program (make
sure you choose the exact `muttTerm.XTerm' window
specification in the Attributes editor).
- Specify different resource settings for muttTerm in your
~/.Xdefaults file (e.g., different default foreground and
background colors).
There are a few other non-key things you can do to complete the process:
(3) Tell the terminal window to display a more meaningful or prettier
title and icon title than what gets put there due to `-e'. For
example:
rxvt -title 'Mail (mutt)' -n 'Mail' -name muttTerm -e mutt
Xterm works the same way.
(4) These are getting to be a lot of command-line options. Make a
wrapper script to use so you don't have to remember them all:
mkdir ~/bin
cat >~/bin/muttTerm <<EOF
#!/bin/sh
rxvt -title 'Mail (mutt)' -n 'Mail' -name muttTerm -e mutt
EOF
chmod +x ~/bin/muttTerm
Now you can do the same thing as that really long command in [3]
above using the simple:
~/bin/muttTerm
If you put ~/bin in your PATH, you can use the even simpler:
muttTerm
(5) If you want to be sly, you can change the docked muttTerm to use
your new wrapper script instead of the really long command; then,
when you want to change anything in the really long command
except for the instance name, you can just change the wrapper
script, and it's done. Here's the procedure:
(a) [RightButtonDown] on the muttTerm dock tile
(b) Choose `Settings...'
(c) Replace the text in the `Application path and arguments'
field with the following:
muttTerm
(d) Choose `OK'
Note that Window Maker needs to know that ~/bin is on your PATH
for this to work; you may need to exit your X session and start
it again.
To change the instance name of the terminal window (e.g., from
`muttTerm' to `mailTerm' or `blah' or
`terminalWindowRunningMutt'), you need to do the following
(e) Change your muttTerm script
(f) Undock your old muttTerm
(g) Run your muttTerm script
(h) Dock the resulting terminal window
(i) Do the stuff in [a] through [d] above again.
Good luck.
Thanks to Jim Knoble for this answer.
5.13 How do I get an appicon for Netscape?
If you are not using one of the latest Navigators, you can
1) Right click on the title bar
2) Click ``Attributes''
3) Select ``Advanced Options'' from the pull down menu
4) Select ``Emulate Application Icon''
5) Click Save
and older netscapes should now produce an application icon.
If you are using a newer rpm from Redhat Linux, try running
grep irix `which netscape`
This seems to have been introduced in their 4.7 update. Comment out
irix-session management restart netscape. Alternatively, you may run
either
/usr/lib/netscape/netscape-communicator
or
/usr/lib/netscape/netscape-navigator
depending on which rpms you have installed.
5.14 How can I dock an application from a remote machine using ssh?
This answer asumes that you have already set up RSA
authentication using ``ssh-keygen''. To be able to launch applications
without being prompted for the password, you can use ``ssh-agent'' and
``ssh-add'' as follows.
With the addition to ~/.xsession of
eval `ssh-agent`
ssh-add /dev/null
just before
exec wmaker
Then ssh will no longer prompt for the RSA-key passphrase.
The ``/dev/null'' argument to ``ssh-add'' causes it to use the
``ssh-askpass'' graphical dialog.
The following procedure shows how to dock a remote xterm
using ``ssh''. This procedure should work well for any well-behaved
X11 application, including most Dock applets.
1) From a terminal window, start an ssh session with ``xterm'' as the command:
ssh -a -C -X remote.example.net "xterm -name blah"
(The '-a' switch turns off agent forwarding, for security reasins and
the '-X' switch turns on X11 forwarding, required for the remote xterm
to run. The -C option turns on compression, very
useful for things such as X)
2) When the remote xterm appears, find the appicon. If it's not
already in the Clip, drag it there.
3) [RightButtonDown] on the appicon and choose 'Settings...' from
the menu. Note that the 'Application path and arguments' field
contains only:
xterm -name blah
Change that to:
ssh -a -C -X remote.example.net "xterm -name blah"
The backslashes and double quotes are critical. Change the
contents of 'Command for files dropped with DND' in the same
fashion, putting '%d' inside the double quotes.
If you wish, change the icon so that you can recognize the tile
easily. Press 'OK'.
4) [RightButtonDown] on the appicon again and choose 'Keep Icon(s)'.
5) Exit the remote xterm. The new Clip tile should remain, with the
three dots at the lower lefthand corner to indicate the app is no
longer running.
6) [DoubleClick] on the new Clip tile. You should get the remote
xterm again after a short while, depending on the speed of your
network and of the remote machine.
7) You may either leave the remote application in the Clip, or drag it
to the Dock.
[NOTE: You should be wary of docking
something like ``wminet'' or ``wmnet'' in the manner, since you may
create a feedback loop by causing additional network traffic, which
the program monitors, causing yet more network traffic... ]
5.15 How do you make an omnipresent window not take focus whenever switching workspaces?
Typically, on applications like xmms, they are set to omnipresent so
they will appear on every workspace. This causes the app to often get
the focus unintentionally when switching workspaces.
To remedy this,
1) Bring up the ``Attributes'' menu. You can do this by [Right Clicking]
on the title bar and seletcing ``Attributes''. Alternatively, you may
hit 'Control+ESC' at the same time to bring up the title bar menu on apps
that do not have a title bar.
2) In the ``Window Attributes'' menu, select ``Skip Window List''
3) Push ``Save'' and then hit the close dialog window icon in the upper
right corner of the window frame.
Now the window will not take focus when switching workspaces.
[NOTE: this will also make the window non-focusable via keyboard window
switching. The only way to shift focus to the window is via the mouse. ]
 |
 |
 |
|
|