Merge pull request #5 from gryf/master
Docs convertion to reStructuredText format.
15
README.md
@@ -7,7 +7,8 @@ files accepted by [Jekyll](https://jekyllrb.com) static site generator.
|
|||||||
Build/serve
|
Build/serve
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
In order to build the site, you'll need Jekyll framework installed. Easiest way
|
In order to build the site, you'll need Jekyll framework installed and
|
||||||
|
[jekyll-rst](https://github.com/gryf/jekyll-rst) plugin. Easiest way
|
||||||
to achieve it, is to install it from system repositories.
|
to achieve it, is to install it from system repositories.
|
||||||
|
|
||||||
If your distribution doesn't contain it (even in external ones, like PPA for
|
If your distribution doesn't contain it (even in external ones, like PPA for
|
||||||
@@ -18,10 +19,18 @@ typical usage would be as follows:
|
|||||||
```
|
```
|
||||||
$ cd window-maker.github.io && bundler init
|
$ cd window-maker.github.io && bundler init
|
||||||
$ bundler add jekyll
|
$ bundler add jekyll
|
||||||
|
$ mkdir _plugins
|
||||||
|
$ git clone https://github.com/gryf/jekyll-rst _plugins/jekyll-rst
|
||||||
|
$ pip install docutils pygments
|
||||||
|
$ gem install RbST nokogiri
|
||||||
$ bundler exec jekyll serve
|
$ bundler exec jekyll serve
|
||||||
```
|
```
|
||||||
|
|
||||||
which will initialize gemfile, add jekyll to it, and then perform `jekyll serve`
|
Consult [jekyll-rst](https://github.com/gryf/jekyll-rst) plugin documentation
|
||||||
which underneath will build the site and than run simple http server on
|
for requirements. Other options for installing dependencies are also possible -
|
||||||
|
they might be installed from distribution repositories.
|
||||||
|
|
||||||
|
Last line will initialize gemfile, add jekyll to it, and then perform `jekyll
|
||||||
|
serve` which underneath will build the site and than run simple http server on
|
||||||
`http://localhost:4000` in development mode. More about jekyll you can find [on
|
`http://localhost:4000` in development mode. More about jekyll you can find [on
|
||||||
it's page](https://jekyllrb.com/docs)
|
it's page](https://jekyllrb.com/docs)
|
||||||
|
|||||||
@@ -1 +1,3 @@
|
|||||||
title: Window Maker
|
title: Window Maker
|
||||||
|
rst:
|
||||||
|
initial_header_level: 1
|
||||||
|
|||||||
2104
docs/FAQ.html
2249
docs/FAQ.rst
Normal file
@@ -1,49 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: User Guide - Introduction
|
|
||||||
---
|
|
||||||
<h3>Introduction</h3>
|
|
||||||
|
|
||||||
<p>This manual describes the usage and configuration of the WindowMaker window manager. It is intended for both users
|
|
||||||
who never used the X Window System and for users who have experience with other window managers.</p>
|
|
||||||
|
|
||||||
<p>How to Read this guide If you never have used a X window manager, you should read all of this guide, as it contains
|
|
||||||
detailed instructions for new users.</p>
|
|
||||||
|
|
||||||
<p>Text in sans serif font, indicate instructions you must follow to accomplish a given task. If you're out of time (or
|
|
||||||
patience), you should at least read text in these parts.</p>
|
|
||||||
|
|
||||||
<p>You can ignore the text in Extra Bindings boxes while you're getting familiar with WindowMaker. Once you've got
|
|
||||||
familiar with it, you can read the text in these boxes to learn more ways to accomplish tasks.</p>
|
|
||||||
|
|
||||||
<h1>1.1 What is a window manager?</h1>
|
|
||||||
|
|
||||||
<p>If you come from the Windows or MacOS world, you might be confused about all these things like window managers, X
|
|
||||||
windows etc.</p>
|
|
||||||
|
|
||||||
<p>In the Unix world, the task of providing a graphical user interface (GUI) is normally divided by 3 different
|
|
||||||
components:</p>
|
|
||||||
|
|
||||||
<p>the window server; the window manager and the user interface toolkit. The window server is standard and is usually
|
|
||||||
the X Window System or some vendor provided compatible version of it. The X Window System, or X for short, is a window
|
|
||||||
server. It's function is to provide a portable and high-level access to devices like keyboard, mouse and video display.
|
|
||||||
It allows applications to show graphical information on the display through rectangular areas called windows.</p>
|
|
||||||
|
|
||||||
<p>Most user interface objects, like buttons, menus and scrollers are made of windows. The top level windows displayed
|
|
||||||
by applications are named windows as well. These objects are not provided by the window server. These must be made by
|
|
||||||
the application program or by the user interface toolkit.</p>
|
|
||||||
|
|
||||||
<p>For more information, read the manual page for X(1) and the documentation for Xlib.</p>
|
|
||||||
|
|
||||||
<p>The primary function of the window manager is to control the layout of top level windows on screen. WindowMaker is a
|
|
||||||
window manager. It provides a titlebar and a resizebar to change window layout, application menus to launch
|
|
||||||
applications and execute special commands, application icons, miniwindows and an application dock. They will be
|
|
||||||
explained in more detail in the following chapters.</p>
|
|
||||||
|
|
||||||
<p>The user interface toolkit is a library or collection of libraries that provide an API for application developers to
|
|
||||||
program the interfaces for their applications. Toolkits generally provide controls like buttons, menus, radio-buttons
|
|
||||||
etc to be used for program interaction. There are currently many of these toolkits available for X. Motif
|
|
||||||
â„¢, OpenLook â„¢, and Athena are examples of toolkits.</p>
|
|
||||||
|
|
||||||
<p>All other features normally found in other operating systems, like file managers, are implemented as separate
|
|
||||||
programs and are not directly related to the window manager.</p>
|
|
||||||
64
docs/chap1.rst
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: User Guide - Introduction
|
||||||
|
---
|
||||||
|
|
||||||
|
Introduction
|
||||||
|
============
|
||||||
|
|
||||||
|
This manual describes the usage and configuration of the Window Maker window
|
||||||
|
manager. It is intended for both users who never used the X Window System and
|
||||||
|
for users who have experience with other window managers.
|
||||||
|
|
||||||
|
How to Read this guide If you never have used a X window manager, you should
|
||||||
|
read all of this guide, as it contains detailed instructions for new users.
|
||||||
|
|
||||||
|
Text in sans serif font, indicate instructions you must follow to accomplish a
|
||||||
|
given task. If you're out of time (or patience), you should at least read text
|
||||||
|
in these parts.
|
||||||
|
|
||||||
|
You can ignore the text in Extra Bindings boxes while you're getting familiar
|
||||||
|
with Window Maker. Once you've got familiar with it, you can read the text in
|
||||||
|
these boxes to learn more ways to accomplish tasks.
|
||||||
|
|
||||||
|
What is a window manager?
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
If you come from the Windows or MacOS world, you might be confused about all
|
||||||
|
these things like window managers, X windows etc.
|
||||||
|
|
||||||
|
In the Unix world, the task of providing a graphical user interface (GUI) is
|
||||||
|
normally divided by 3 different components:
|
||||||
|
|
||||||
|
the window server; the window manager and the user interface toolkit. The
|
||||||
|
window server is standard and is usually the X Window System or some vendor
|
||||||
|
provided compatible version of it. The X Window System, or X for short, is a
|
||||||
|
window server. It's function is to provide a portable and high-level access to
|
||||||
|
devices like keyboard, mouse and video display. It allows applications to show
|
||||||
|
graphical information on the display through rectangular areas called windows.
|
||||||
|
|
||||||
|
Most user interface objects, like buttons, menus and scrollers are made of
|
||||||
|
windows. The top level windows displayed by applications are named windows as
|
||||||
|
well. These objects are not provided by the window server. These must be made
|
||||||
|
by the application program or by the user interface toolkit.
|
||||||
|
|
||||||
|
For more information, read the manual page for X(1) and the documentation for
|
||||||
|
Xlib.
|
||||||
|
|
||||||
|
The primary function of the window manager is to control the layout of top
|
||||||
|
level windows on screen. Window Maker is a window manager. It provides a
|
||||||
|
titlebar and a resizebar to change window layout, application menus to launch
|
||||||
|
applications and execute special commands, application icons, miniwindows and
|
||||||
|
an application dock. They will be explained in more detail in the following
|
||||||
|
chapters.
|
||||||
|
|
||||||
|
The user interface toolkit is a library or collection of libraries that provide
|
||||||
|
an API for application developers to program the interfaces for their
|
||||||
|
applications. Toolkits generally provide controls like buttons, menus,
|
||||||
|
radio-buttons etc to be used for program interaction. There are currently many
|
||||||
|
of these toolkits available for X. Motif, OpenLook, and Athena are examples of
|
||||||
|
toolkits.
|
||||||
|
|
||||||
|
All other features normally found in other operating systems, like file
|
||||||
|
managers, are implemented as separate programs and are not directly related to
|
||||||
|
the window manager.
|
||||||
840
docs/chap2.html
@@ -1,840 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: User Guide - Windows
|
|
||||||
---
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h2>Chapter 2</h2>
|
|
||||||
|
|
||||||
<h1>Windows</h1><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h2><a name="2.1">2.1 Anatomy of a Window</a></h2>Generally an application will have the following layout:<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/anatomy.gif" border="0" width="426" height="344" alt="[Anatomy of a Window]" /><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<table border="0" width="90%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="right" valign="top"><br />
|
|
||||||
<font face="Times New Roman, Times, Times Roman"><b>Titlebar</b></font></td>
|
|
||||||
|
|
||||||
<td align="left"><br />
|
|
||||||
<font face="Times New Roman, Times, Times Roman">The titlebar presents the name of the application, document or
|
|
||||||
window. It's color indicates the keyboard focus state and type of the window. You can use it to move, activate,
|
|
||||||
raise, lower and access the window commands menu.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="right" valign="top"><font face="Times New Roman, Times, Times Roman"><b>Miniaturize
|
|
||||||
button.</b></font></td>
|
|
||||||
|
|
||||||
<td align="left"><font face="Times New Roman, Times, Times Roman">You can click on the miniaturize button to
|
|
||||||
miniaturize/iconify a window or click it with the <b>Meta</b> key pressed to hide the application.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="right" valign="top"><br />
|
|
||||||
<font face="Times New Roman, Times, Times Roman"><b>Close Button.</b></font></td>
|
|
||||||
|
|
||||||
<td align="left"><br />
|
|
||||||
<font face="Times New Roman, Times, Times Roman">The close button can be used to close a window or kill the
|
|
||||||
application, if the application can't understand the close message.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="right" valign="top"><br />
|
|
||||||
<font face="Times New Roman, Times, Times Roman"><b>Resizebar.</b></font></td>
|
|
||||||
|
|
||||||
<td align="left"><br />
|
|
||||||
<font face="Times New Roman, Times, Times Roman">You use the resizebar to (surprise!) resize a
|
|
||||||
window.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="right" valign="top"><br />
|
|
||||||
<font face="Times New Roman, Times, Times Roman"><b>Client Area.</b></font></td>
|
|
||||||
|
|
||||||
<td align="left"><br />
|
|
||||||
<font face="Times New Roman, Times, Times Roman">The client area is where the application show it's
|
|
||||||
information. If the window if inactive, you can click on it to activate it.</font></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2"></a>
|
|
||||||
|
|
||||||
<h2><a name="2.2">2.2 Working With Windows</a></h2><a name="2.2"></a><br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2.1"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.2.1">2.2.1 Focusing a Window</a></h3><a name="2.2.1"></a><br />
|
|
||||||
Windows can be in two states: <i>focused</i> , or <i>unfocused.</i> The focused window (also called the key or active
|
|
||||||
window) has a black titlebar and is the window that receives keyboard input, ie: where you can type text. Usually it's
|
|
||||||
the window where you work on. Only one window may be focused at a time. Unfocused windows have a light gray titlebar.
|
|
||||||
Some applications have a special type of window, called dialog windows transient windows or panels. When these windows
|
|
||||||
are active, the window that owns them (the main window) get a dark gray titlebar. As soon as the dialog window is
|
|
||||||
closed, the focus is returned to the owner window.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
The image below shows an active Open File panel and it's owner window.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/focus.gif" border="0" width="574" height="360" alt="[Focused, Unfocused, and Parent Window]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
There are three styles of window focusing:<br />
|
|
||||||
<br />
|
|
||||||
<b>Click-to-Focus</b>,or manual focus mode. In click-to-focus mode, you explicitly choose the window that should be
|
|
||||||
focused. This is the default mode.<br />
|
|
||||||
<br />
|
|
||||||
<b>Focus-Follow-Mouse</b>,or auto-focus mode. In this mode, the focused window is chosen based on the position of the
|
|
||||||
mouse pointer. The window below the mouse pointer is always the focused window.<br />
|
|
||||||
<br />
|
|
||||||
<b>Sloppy-Focus</b>,or semi-auto-focus mode. This is similar to the focus-follow-mouse mode, but if you move the
|
|
||||||
pointer from a window to the root window, the window will not loose focus.<br />
|
|
||||||
<br />
|
|
||||||
You can choose between these modes with the <i>FocusMode</i> option<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To focus a window in click-to-focus mode:</b></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">Click on the titlebar, resizebar or in the client area of the window with the left or
|
|
||||||
right mouse button.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Click on the titlebar with the middle mouse button. This will focus the window without
|
|
||||||
bringing it to the front.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Open the window list menu and select the window to focus.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
When you click in the client area of an inactive window to set the focus, the click is normally processed by the
|
|
||||||
application. If you find this behaviour a little confusing, you can make the application ignore this click by using the
|
|
||||||
<i>IgnoreFocusClick</i> option.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To focus a window in focus-follow-mouse mode:</b></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">Move the pointer over the window you want to focus.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2.2"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.2.2">2.2.2 Reordering Overlapping Windows</a></h3><a name="2.2.2"></a> Windows can overlap other
|
|
||||||
windows, making some windows be over or in front of others.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To bring a window to the front:</b><br /></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">Click on the titlebar or resizebar of the desired window with the left mouse button.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Select the desired window from the Window List menu.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
Dialog/transient windows are always placed over their owner windows, unless the <i>OnTopTransients</i> option is
|
|
||||||
disabled. Some windows have a special attribute that allow them be permanently over normal windows. You can make
|
|
||||||
specific windows have this attribute use the <i>AlwaysOnTop</i> window option or set it in the Window Inspector
|
|
||||||
panel.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h3><b>Extra Bindings</b></h3>
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="80%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="left"><font face="Times New Roman, Times, Times Roman">Action</font></th>
|
|
||||||
|
|
||||||
<th align="left"><font face="Times New Roman, Times, Times Roman">Effect</font></th>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Meta-Click on the window
|
|
||||||
titlebar. with the left mouse button</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Sends the window to the
|
|
||||||
back.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Meta-Click on the Client Area of
|
|
||||||
the window with the left mouse button.</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Brings the window to the front
|
|
||||||
and focuses it.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Hold the Meta key and press the
|
|
||||||
Up Arrow key</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Brings the current focused
|
|
||||||
window to the front.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Hold the Meta key and press the
|
|
||||||
Down Arrow key</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Sends the current focused window
|
|
||||||
to the back.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2.3"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.2.3">2.2.3 Moving a Window</a></h3><a name="2.2.3"></a> To move the window around the screen, drag the
|
|
||||||
window through it's titlebar with the left mouse button pressed. This will also bring the window to the front and focus
|
|
||||||
the window.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To move a window:</b></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">Click on the titlebar of the window you want to move with the left mouse button and drag
|
|
||||||
it with the button pressed.</font></li>
|
|
||||||
</ul>While you move the window, a little box will appear in the screen, indicating the current window position in
|
|
||||||
pixels, relative to the top left corner of the screen. You can change the location of this position box by hitting the
|
|
||||||
Shift key during the move operation.<br />
|
|
||||||
<br />
|
|
||||||
In some rare occasions, it is possible for a window to be placed off screen. This can happen with some buggy
|
|
||||||
applications. To bring a window back to the visible screen area, select the window in the Window List menu. You can
|
|
||||||
prevent windows from doing that with the <i>DontMoveOff</i> window attribute.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h3><b>Extra Bindings</b></h3>
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="80%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="left"><font face="Times New Roman, Times, Times Roman">Action</font></th>
|
|
||||||
|
|
||||||
<th align="left"><font face="Times New Roman, Times, Times Roman">Effect</font></th>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Drag the titlebar with the
|
|
||||||
middle mouse button</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Move the window without changing
|
|
||||||
it's stacking order.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Drag the titlebar while holding
|
|
||||||
the Control key</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Move the window without focusing
|
|
||||||
it.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Drag the client area or
|
|
||||||
resizebar while holding the Meta key</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Move the window.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2.4"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.2.4">2.2.4 Resizing a Window</a></h3><a name="2.2.4"></a> The size of a window can be adjusted by
|
|
||||||
dragging the resizebar.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/resizebar.gif" border="0" width="470" height="47" alt="[A Resizebar]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
Depending on the place you click to drag the resizebar, the resize operation is constrained to a direction.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To resize a window</b></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">To change the window's height, click in the middle region of the resizebar and drag it
|
|
||||||
vertically.<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">To change the window's width, click in either end regions of the resizebar and drag it
|
|
||||||
horizontally.<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">To change both height and width at the same time, click in either end regions of the
|
|
||||||
resizebar and drag it diagonally.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h3><b>Extra Bindings</b></h3>
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="80%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="left"><font face="Times New Roman, Times, Times Roman"><b>Action</b></font></th>
|
|
||||||
|
|
||||||
<th align="left"><font face="Times New Roman, Times, Times Roman"><b>Effect</b></font></th>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Drag the window in the client
|
|
||||||
area with the Right mouse button, while holding the Meta key</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Resizes the window.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Drag the resizebar with the
|
|
||||||
middle mouse button</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Resize the window without
|
|
||||||
bringing it to the front</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Drag the resizebar while holding
|
|
||||||
the Control key</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Resize the window without
|
|
||||||
focusing it.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2.5"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.2.5">2.2.5 Miniaturizing a Window</a></h3><a name="2.2.5"></a><br />
|
|
||||||
If you want to temporarily get rid of a window, you can miniaturize it. When miniaturizing a window, it will shrink
|
|
||||||
into a miniwindow with a icon and a title that is placed at the bottom of the screen.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/imagtitle.gif" border="0" width="200" height="50" alt="[A Titlebar]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" cellspacing="0" cellpadding="5" width="40%">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td align="left"><img src="guide/images/mini.gif" border="0" width="64" height="64" alt="[A Mini-window]" /></td>
|
|
||||||
|
|
||||||
<td align="left"><font face="Times New Roman, Times, Times Roman">A mini-window</font></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
You can move the miniwindow around the screen by dragging it. Unlike application icons, miniwindows cannot be
|
|
||||||
docked.<br />
|
|
||||||
<br />
|
|
||||||
To restore a window from it's miniwindow, double click the miniwindow. The window will be restored in the current
|
|
||||||
workspace, with the same position, size and contents as it had before miniaturization.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To miniaturize a window:</b></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">Click on the miniaturize button.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Use the keyboard shortcut assigned to this action, Meta+m in the default
|
|
||||||
configuration.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
You can also restore all miniaturized and hidden windows of a given application by double clicking in it's application
|
|
||||||
icon with the middle mouse button.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2.6"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.2.6">2.2.6 Shading a Window</a></h3><a name="2.2.6"></a> If you want to temporarily get rid of a window,
|
|
||||||
an option for it's miniaturization is to <i>shade</i> it. When you shade a window, the window rolls up to it's
|
|
||||||
titlebar. You can do almost everything you do with a normal window with shaded windows, like miniaturizing or closing
|
|
||||||
it.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To shade a window:</b></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">Double Click on the titlebar of the window.</font></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/shade.gif" border="0" width="287" height="279" alt="[A Shaded window]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2.7"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.2.7">2.2.7 Closing a Window</a></h3><a name="2.2.7"></a> After finishing work in a window, you can close
|
|
||||||
it to completely get rid of it. When you close a window, it is removed from the screen and can no longer be restored.
|
|
||||||
So, before closing a window, be sure you have saved any work you were doing on it.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/imagtitle2.gif" border="0" width="200" height="50" alt="A Titlebar with a close button" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
Some windows will have a close button with some dots around it. These windows can't be closed normally and the only way
|
|
||||||
to get rid of them is by exiting the application. You should try exiting from inside the application (through it's
|
|
||||||
menus or buttons) when possible. Otherwise you can force WindowMaker to ``kill'' the application.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To force the closure of a window (by killing the application):</b></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">Hold the Control key and click on the close button.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Double click the close button.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
It is also possible to kill applications that can be normally closed by clicking the close button while holding the
|
|
||||||
Control key.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2.8"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.2.8">2.2.8 Maximizing a Window</a></h3><a name="2.2.8"></a> If you want to resize a window to occupy the
|
|
||||||
whole screen, you can maximize the window. When you unmaximize it, the window will be restored to the same position and
|
|
||||||
size it was before maximized.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To maximize a window:</b></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">Hold the Control key and double click on the window titlebar to resize the window's height
|
|
||||||
to full screen.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Hold the Shift key and double click on the window titlebar to resize the window's width to
|
|
||||||
full screen.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Hold both the Control and Shift keys and double click on the window titlebar to resize
|
|
||||||
both window's height and width to full screen.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To restore the size of a maximized window:</b></font>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><font face="Helvetica">Hold the Control OR Shift key and double click on the window titlebar.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
You can select whether the window should be maximized to the whole screen or if the position of the Dock should be
|
|
||||||
accounted for by setting the <i>WinDock</i> option.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.2.9"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.2.9">2.2.9 The Window Commands Menu</a></h3><a name="2.2.9"></a> Clicking on the titlebar of a window
|
|
||||||
with the right mouse button will open a menu containing commands that will apply to that window. The menu can also be
|
|
||||||
opened through the keyboard with the Control+Escape key, by default.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="90%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">(Un)Maximize</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Will either maximize the window
|
|
||||||
horizontally and vertically, or, if the window is a;ready maximized, restore the window to the size it was
|
|
||||||
prior to being maximized.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Miniaturize</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Will miniaturize the
|
|
||||||
window.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">(Un)Shade</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Will shade the window, or
|
|
||||||
unshade it if it is already shaded.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Hide</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Will hide all the windows of the
|
|
||||||
application</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Hide Others</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Will hide all current
|
|
||||||
applications except the current one</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Move To</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Allows you to move the window to
|
|
||||||
a different workspace</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Attributes...</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Opens the Window Attributes
|
|
||||||
Inspector (see section <a href="#2.3">2.3</a>
|
|
||||||
)</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Close</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Will close the
|
|
||||||
window</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Kill</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Will kill the application. Use
|
|
||||||
this option only if the application does not provide means to close it normally, or in extreme
|
|
||||||
cases.</font></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><a name="2.3"></a>
|
|
||||||
|
|
||||||
<h2><a name="2.3">2.3 The Window Attributes Inspector</a></h2><a name="2.3"></a> <a name="2.3.1"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.3.1">2.3.1 Window Specification</a></h3><a name="2.3.1"></a> This panel Allows you to specify the
|
|
||||||
WM_CLASS that WindowMaker should use to identify the window whose attributes you are setting.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/wiaspec.gif" border="0" width="262" height="374" alt=
|
|
||||||
"[Window Attributes Inspector: Window Specification]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.3.2"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.3.2">2.3.2 Window Attributes</a></h3><a name="2.3.2"></a> This panel lets you set the attributes for the
|
|
||||||
selected window.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/wiaattrib.gif" border="0" width="262" height="374" alt=
|
|
||||||
"[Window Attributes Inspector: Window Attributes]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="90%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Disable titlebar</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the titlebar for the
|
|
||||||
selected window not to be displayed</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Disable resizebar</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the resizebar for the
|
|
||||||
selected window not to be displayed</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Disable close
|
|
||||||
button</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the close button for the
|
|
||||||
selected window not to be displayed</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Disable miniaturize
|
|
||||||
button</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the miniaturize button
|
|
||||||
for the selected window not to be displayed</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Keep on Top</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the selected window to
|
|
||||||
stay on top of all other windows</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Omnipresent</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the selected window to be
|
|
||||||
displayed in all workspaces</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Start miniaturized</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the selected window to
|
|
||||||
start miniaturized</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Skip window list</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the select window to be
|
|
||||||
skipped when cycling through the window list.</font></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.3.3"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.3.3">2.3.3 Advanced Options</a></h3><a name="2.3.3"></a><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/wiaadvanced.gif" border="0" width="262" height="374" alt=
|
|
||||||
"[Window Attributes Inspector: Advanced Options]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="90%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Ignore HideOthers</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the selected window to
|
|
||||||
remain visible when <b>HideOthers</b> is selected from the <a href=
|
|
||||||
"#2.2.9">Window Commands Menu</a></font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Don't bind keyboard
|
|
||||||
shortcuts</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the selected window to
|
|
||||||
receive ALL keyboard events</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Don't bind mouse
|
|
||||||
clicks</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the selected window to
|
|
||||||
receive all mouse-click events</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Keep Inside Screen</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the selected window not
|
|
||||||
to be able to place itself off the screen</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Don't let it take
|
|
||||||
focus</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the selected window not
|
|
||||||
to be able to take input focus</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Don't Save Session</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Causes the state of the selected
|
|
||||||
window not to be saved when a session is saved. (either when quitting WindowMaker, or when done
|
|
||||||
manually.)</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Emulate Application
|
|
||||||
Icon</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Emulates an Application Icon for
|
|
||||||
"broken" applications</font></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.3.4"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.3.4">2.3.4 Icon and Initial Workspace</a></h3><a name="2.3.4"></a> This panel allows you to
|
|
||||||
<b>browse</b> for, and <b>update</b> the <b>mini-window image</b> for the selected window, as well as setting the
|
|
||||||
<b>initial workspace.</b><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/wiaiandiw.gif" border="0" width="262" height="374" alt=
|
|
||||||
"[Window Attributes Inspector: Icon and Initia Workspace]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="2.3.5"></a>
|
|
||||||
|
|
||||||
<h3><a name="2.3.5">2.3.5 Application Specific</a></h3><a name="2.3.5"></a> Attributes specific to the selected
|
|
||||||
application<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/wiaappspec.gif" border="0" width="262" height="374" alt=
|
|
||||||
"[Window Attributes Inspector: Icon and Initia Workspace]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<table border="0" width="90%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Start hidden</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Starts the selected application in
|
|
||||||
a hidden state</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">No application icon</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Disables the application icon for
|
|
||||||
the selected application</font></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
474
docs/chap2.rst
Normal file
@@ -0,0 +1,474 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: User Guide - Windows
|
||||||
|
---
|
||||||
|
|
||||||
|
Windows
|
||||||
|
=======
|
||||||
|
|
||||||
|
Anatomy of a Window
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Generally an application will have the following layout:
|
||||||
|
|
||||||
|
.. figure:: guide/images/anatomy.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Anatomy of a Window
|
||||||
|
|
||||||
|
Titlebar
|
||||||
|
The titlebar presents the name of the application, document or window. It's
|
||||||
|
color indicates the keyboard focus state and type of the window. You can use
|
||||||
|
it to move, activate, raise, lower and access the window commands menu.
|
||||||
|
|
||||||
|
Miniaturize button
|
||||||
|
You can click on the miniaturize button to miniaturize/iconify a window or
|
||||||
|
click it with the **Meta** key pressed to hide the application.
|
||||||
|
|
||||||
|
Close Button
|
||||||
|
The close button can be used to close a window or kill the application, if
|
||||||
|
the application can't understand the close message.
|
||||||
|
|
||||||
|
Resizebar
|
||||||
|
You use the resizebar to (surprise!) resize a window.
|
||||||
|
|
||||||
|
Client Area
|
||||||
|
The client area is where the application show it's information. If the
|
||||||
|
window if inactive, you can click on it to activate it.
|
||||||
|
|
||||||
|
|
||||||
|
Working With Windows
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
Focusing a Window
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Windows can be in two states: *focused*, or *unfocused.* The focused window
|
||||||
|
(also called the key or active window) has a black titlebar and is the window
|
||||||
|
that receives keyboard input, ie: where you can type text. Usually it's the
|
||||||
|
window where you work on. Only one window may be focused at a time. Unfocused
|
||||||
|
windows have a light gray titlebar. Some applications have a special type of
|
||||||
|
window, called dialog windows transient windows or panels. When these windows
|
||||||
|
are active, the window that owns them (the main window) get a dark gray
|
||||||
|
titlebar. As soon as the dialog window is closed, the focus is returned to the
|
||||||
|
owner window.
|
||||||
|
|
||||||
|
The image below shows an active Open File panel and it's owner window.
|
||||||
|
|
||||||
|
.. figure:: guide/images/focus.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Focused, Unfocused, and Parent Window
|
||||||
|
|
||||||
|
There are three styles of window focusing:
|
||||||
|
|
||||||
|
**Click-to-Focus**, or manual focus mode. In click-to-focus mode, you
|
||||||
|
explicitly choose the window that should be focused. This is the default mode.
|
||||||
|
|
||||||
|
**Focus-Follow-Mouse**, or auto-focus mode. In this mode, the focused window is
|
||||||
|
chosen based on the position of the mouse pointer. The window below the mouse
|
||||||
|
pointer is always the focused window.
|
||||||
|
|
||||||
|
**Sloppy-Focus**, or semi-auto-focus mode. This is similar to the
|
||||||
|
focus-follow-mouse mode, but if you move the pointer from a window to the root
|
||||||
|
window, the window will not loose focus.
|
||||||
|
|
||||||
|
You can choose between these modes with the *FocusMode* option.
|
||||||
|
|
||||||
|
To focus a window in **Click-To-Focus** mode:
|
||||||
|
|
||||||
|
- Click on the titlebar, resizebar or in the client area of the window with the
|
||||||
|
left or right mouse button.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Click on the titlebar with the middle mouse button. This will focus the
|
||||||
|
window without bringing it to the front.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Open the window list menu and select the window to focus.
|
||||||
|
|
||||||
|
When you click in the client area of an inactive window to set the focus, the
|
||||||
|
click is normally processed by the application. If you find this behaviour a
|
||||||
|
little confusing, you can make the application ignore this click by using the
|
||||||
|
*IgnoreFocusClick* option.
|
||||||
|
|
||||||
|
To focus a window in **Focus-Follow-Mouse** mode:
|
||||||
|
|
||||||
|
- Move the pointer over the window you want to focus.
|
||||||
|
|
||||||
|
|
||||||
|
Reordering Overlapping Windows
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Windows can overlap other windows, making some windows be over or in front of
|
||||||
|
others.
|
||||||
|
|
||||||
|
To bring a window to the front:
|
||||||
|
|
||||||
|
- Click on the titlebar or resizebar of the desired window with the left mouse
|
||||||
|
button.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Select the desired window from the Window List menu.
|
||||||
|
|
||||||
|
Dialog/transient windows are always placed over their owner windows, unless the
|
||||||
|
*OnTopTransients* option is disabled. Some windows have a special attribute
|
||||||
|
that allow them be permanently over normal windows. You can make specific
|
||||||
|
windows have this attribute use the *AlwaysOnTop* window option or set it in
|
||||||
|
the Window Inspector panel.
|
||||||
|
|
||||||
|
**Extra Bindings**
|
||||||
|
|
||||||
|
+------------------------------------+--------------------------------------+
|
||||||
|
| Action | Effect |
|
||||||
|
+====================================+======================================+
|
||||||
|
| Meta-Click on the window titlebar, | Sends the window to the |
|
||||||
|
| with the left mouse button | back. |
|
||||||
|
+------------------------------------+--------------------------------------+
|
||||||
|
| Meta-Click on the Client Area of | Brings the window to the front and |
|
||||||
|
| the window with the left mouse | focuses it. |
|
||||||
|
| button. | |
|
||||||
|
+------------------------------------+--------------------------------------+
|
||||||
|
| Hold the Meta key and press the Up | Brings the current focused window to |
|
||||||
|
| Arrow key | the front. |
|
||||||
|
+------------------------------------+--------------------------------------+
|
||||||
|
| Hold the Meta key and press the | Sends the current focused window to |
|
||||||
|
| Down Arrow key | the back. |
|
||||||
|
+------------------------------------+--------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Moving a Window
|
||||||
|
~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
To move the window around the screen, drag the window through it's titlebar
|
||||||
|
with the left mouse button pressed. This will also bring the window to the
|
||||||
|
front and focus the window.
|
||||||
|
|
||||||
|
To move a window:
|
||||||
|
|
||||||
|
- Click on the titlebar of the window you want to move with the left mouse
|
||||||
|
button and drag it with the button pressed.
|
||||||
|
|
||||||
|
While you move the window, a little box will appear in the screen, indicating
|
||||||
|
the current window position in pixels, relative to the top left corner of the
|
||||||
|
screen. You can change the location of this position box by hitting the Shift
|
||||||
|
key during the move operation.
|
||||||
|
|
||||||
|
In some rare occasions, it is possible for a window to be placed off screen.
|
||||||
|
This can happen with some buggy applications. To bring a window back to the
|
||||||
|
visible screen area, select the window in the Window List menu. You can prevent
|
||||||
|
windows from doing that with the *DontMoveOff* window attribute.
|
||||||
|
|
||||||
|
**Extra Bindings**
|
||||||
|
|
||||||
|
+-------------------------------------+---------------------------------------+
|
||||||
|
| Action | Effect |
|
||||||
|
+=====================================+=======================================+
|
||||||
|
| Drag the titlebar with the middle | Move the window without changing it's |
|
||||||
|
| mouse button | stacking order. |
|
||||||
|
+-------------------------------------+---------------------------------------+
|
||||||
|
| Drag the titlebar while holding the | Move the window without focusing it. |
|
||||||
|
| Control key | |
|
||||||
|
+-------------------------------------+---------------------------------------+
|
||||||
|
| Drag the client area or resizebar | Move the window. |
|
||||||
|
| while holding the Meta key | |
|
||||||
|
+-------------------------------------+---------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Resizing a Window
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
The size of a window can be adjusted by dragging the resizebar.
|
||||||
|
|
||||||
|
.. figure:: guide/images/resizebar.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: A Resizebar
|
||||||
|
|
||||||
|
Depending on the place you click to drag the resizebar, the resize operation is
|
||||||
|
constrained to a direction.
|
||||||
|
|
||||||
|
To resize a window:
|
||||||
|
|
||||||
|
- To change the window's height, click in the middle region of the resizebar
|
||||||
|
and drag it vertically.
|
||||||
|
- To change the window's width, click in either end regions of the resizebar
|
||||||
|
and drag it horizontally.
|
||||||
|
- To change both height and width at the same time, click in either end regions
|
||||||
|
of the resizebar and drag it diagonally.
|
||||||
|
|
||||||
|
**Extra Bindings**
|
||||||
|
|
||||||
|
+------------------------------------+------------------------------------+
|
||||||
|
| Action | Effect |
|
||||||
|
+====================================+====================================+
|
||||||
|
| Drag the window in the client area | Resizes the window. |
|
||||||
|
| with the Right mouse button, while | |
|
||||||
|
| holding the Meta key | |
|
||||||
|
+------------------------------------+------------------------------------+
|
||||||
|
| Drag the resizebar with the middle | Resize the window without bringing |
|
||||||
|
| mouse button | it to the front |
|
||||||
|
+------------------------------------+------------------------------------+
|
||||||
|
| Drag the resizebar while holding | Resize the window without focusing |
|
||||||
|
| the Control key | it. |
|
||||||
|
+------------------------------------+------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Miniaturizing a Window
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
If you want to temporarily get rid of a window, you can miniaturize it.
|
||||||
|
|
||||||
|
.. figure:: guide/images/title.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: A Titlebar
|
||||||
|
|
||||||
|
When miniaturizing a window, it will shrink into a miniwindow with a icon and a
|
||||||
|
title that is placed at the bottom of the screen.
|
||||||
|
|
||||||
|
.. figure:: guide/images/mini.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: A Mini-window
|
||||||
|
|
||||||
|
A mini-window
|
||||||
|
|
||||||
|
You can move the miniwindow around the screen by dragging it. Unlike
|
||||||
|
application icons, miniwindows cannot be docked.
|
||||||
|
|
||||||
|
To restore a window from it's miniwindow, double click the miniwindow. The
|
||||||
|
window will be restored in the current workspace, with the same position, size
|
||||||
|
and contents as it had before miniaturization.
|
||||||
|
|
||||||
|
To miniaturize a window:
|
||||||
|
|
||||||
|
- Click on the miniaturize button
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Use the keyboard shortcut assigned to this action, Meta+m in the default
|
||||||
|
configuration.
|
||||||
|
|
||||||
|
You can also restore all miniaturized and hidden windows of a given application
|
||||||
|
by double clicking in it's application icon with the middle mouse button.
|
||||||
|
|
||||||
|
|
||||||
|
Shading a Window
|
||||||
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
If you want to temporarily get rid of a window, an option for it's
|
||||||
|
miniaturization is to *shade* it. When you shade a window, the window rolls up
|
||||||
|
to it's titlebar. You can do almost everything you do with a normal window with
|
||||||
|
shaded windows, like miniaturizing or closing it.
|
||||||
|
|
||||||
|
To shade a window:
|
||||||
|
|
||||||
|
- Double Click on the titlebar of the window.
|
||||||
|
|
||||||
|
.. figure:: guide/images/shade.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: A Shaded window
|
||||||
|
|
||||||
|
|
||||||
|
Closing a Window
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
After finishing work in a window, you can close it to completely get rid of it.
|
||||||
|
When you close a window, it is removed from the screen and can no longer be
|
||||||
|
restored. So, before closing a window, be sure you have saved any work you were
|
||||||
|
doing on it.
|
||||||
|
|
||||||
|
.. figure:: guide/images/imagtitle2.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: A Titlebar with a close button
|
||||||
|
|
||||||
|
Some windows will have a close button with some dots around it. These windows
|
||||||
|
can't be closed normally and the only way to get rid of them is by exiting the
|
||||||
|
application. You should try exiting from inside the application (through it's
|
||||||
|
menus or buttons) when possible. Otherwise you can force WindowMaker to
|
||||||
|
``kill`` the application.
|
||||||
|
|
||||||
|
To force the closure of a window (by killing the application):
|
||||||
|
|
||||||
|
- Hold the Control key and click on the close button.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Double click the close button.
|
||||||
|
|
||||||
|
It is also possible to kill applications that can be normally closed by
|
||||||
|
clicking the close button while holding the Control key.
|
||||||
|
|
||||||
|
|
||||||
|
Maximizing a Window
|
||||||
|
~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
If you want to resize a window to occupy the whole screen, you can maximize the
|
||||||
|
window. When you unmaximize it, the window will be restored to the same
|
||||||
|
position and size it was before maximized.
|
||||||
|
|
||||||
|
To maximize a window:
|
||||||
|
|
||||||
|
- Hold the Control key and double click on the window titlebar to resize the
|
||||||
|
window's height to full screen.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Hold the Shift key and double click on the window titlebar to resize the
|
||||||
|
window's width to full screen.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Hold both the Control and Shift keys and double click on the window titlebar
|
||||||
|
to resize both window's height and width to full screen.
|
||||||
|
|
||||||
|
To restore the size of a maximized window:
|
||||||
|
|
||||||
|
- Hold the Control OR Shift key and double click on the window titlebar.
|
||||||
|
|
||||||
|
You can select whether the window should be maximized to the whole screen or if
|
||||||
|
the position of the Dock should be accounted for by setting the *WinDock*
|
||||||
|
option.
|
||||||
|
|
||||||
|
|
||||||
|
The Window Commands Menu
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Clicking on the titlebar of a window with the right mouse button will open a
|
||||||
|
menu containing commands that will apply to that window. The menu can also be
|
||||||
|
opened through the keyboard with the Control+Escape key, by default.
|
||||||
|
|
||||||
|
(Un)Maximize
|
||||||
|
Will either maximize the window horizontally and vertically, or, if the
|
||||||
|
window is already maximized, restore the window to the size it was prior to
|
||||||
|
being maximized.
|
||||||
|
|
||||||
|
Miniaturize
|
||||||
|
Will miniaturize the window.
|
||||||
|
|
||||||
|
(Un)Shade
|
||||||
|
Will shade the window, or unshade it if it is already shaded.
|
||||||
|
|
||||||
|
Hide
|
||||||
|
Will hide all the windows of the application
|
||||||
|
|
||||||
|
Hide Others
|
||||||
|
Will hide all current applications except the current one
|
||||||
|
|
||||||
|
Move To
|
||||||
|
Allows you to move the window to a different workspace
|
||||||
|
|
||||||
|
Attributes...
|
||||||
|
Opens the Window Attributes Inspector (see section `2.3 <#2.3>`)
|
||||||
|
|
||||||
|
Close
|
||||||
|
Will close the window
|
||||||
|
|
||||||
|
Kill
|
||||||
|
Will kill the application. Use this option only if the application does not
|
||||||
|
provide means to close it normally, or in extreme cases.
|
||||||
|
|
||||||
|
|
||||||
|
The Window Attributes Inspector
|
||||||
|
-------------------------------
|
||||||
|
|
||||||
|
Window Specification
|
||||||
|
~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
This panel Allows you to specify the WM_CLASS that WindowMaker should use to
|
||||||
|
identify the window whose attributes you are setting.
|
||||||
|
|
||||||
|
.. figure:: guide/images/wiaspec.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Window Attributes Inspector: Window Specification
|
||||||
|
|
||||||
|
|
||||||
|
Window Attributes
|
||||||
|
~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
This panel lets you set the attributes for the selected window.
|
||||||
|
|
||||||
|
.. figure:: guide/images/wiaattrib.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Window Attributes Inspector: Window Attributes
|
||||||
|
|
||||||
|
Disable titlebar
|
||||||
|
Causes the titlebar for the selected window not to be displayed
|
||||||
|
|
||||||
|
Disable resizebar
|
||||||
|
Causes the resizebar for the selected window not to be displayed
|
||||||
|
|
||||||
|
Disable close button
|
||||||
|
Causes the close button for the selected window not to be displayed
|
||||||
|
|
||||||
|
Disable miniaturize button
|
||||||
|
Causes the miniaturize button for the selected window not to be displayed
|
||||||
|
|
||||||
|
Keep on Top
|
||||||
|
Causes the selected window to stay on top of all other windows
|
||||||
|
|
||||||
|
Omnipresent
|
||||||
|
Causes the selected window to be displayed in all workspaces
|
||||||
|
|
||||||
|
Start miniaturized
|
||||||
|
Causes the selected window to start miniaturized
|
||||||
|
|
||||||
|
Skip window list
|
||||||
|
Causes the select window to be skipped when cycling through the window list.
|
||||||
|
|
||||||
|
|
||||||
|
Advanced Options
|
||||||
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: guide/images/wiaadvanced.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Window Attributes Inspector: Advanced Options
|
||||||
|
|
||||||
|
Ignore HideOthers
|
||||||
|
Causes the selected window to remain visible when **HideOthers** is selected
|
||||||
|
from the `Window Commands Menu <#2.2.9>`_
|
||||||
|
|
||||||
|
Don't bind keyboard shortcuts
|
||||||
|
Causes the selected window to receive ALL keyboard events
|
||||||
|
|
||||||
|
Don't bind mouse clicks
|
||||||
|
Causes the selected window to receive all mouse-click events
|
||||||
|
|
||||||
|
Keep Inside Screen
|
||||||
|
Causes the selected window not to be able to place itself off the screen
|
||||||
|
|
||||||
|
Don't let it take focus
|
||||||
|
Causes the selected window not to be able to take input focus
|
||||||
|
|
||||||
|
Don't Save Session
|
||||||
|
Causes the state of the selected window not to be saved when a session is
|
||||||
|
saved. (either when quitting WindowMaker, or when done manually.)
|
||||||
|
|
||||||
|
Emulate Application Icon
|
||||||
|
Emulates an Application Icon for "broken" applications
|
||||||
|
|
||||||
|
|
||||||
|
Icon and Initial Workspace
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
This panel allows you to **browse** for, and **update** the **mini-window
|
||||||
|
image** for the selected window, as well as setting the **initial workspace**.
|
||||||
|
|
||||||
|
.. figure:: guide/images/wiaiandiw.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Window Attributes Inspector: Icon and Initia Workspace
|
||||||
|
|
||||||
|
|
||||||
|
Application Specific
|
||||||
|
~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Attributes specific to the selected application
|
||||||
|
|
||||||
|
.. figure:: guide/images/wiaappspec.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Window Attributes Inspector: Icon and Initia Workspace
|
||||||
|
|
||||||
|
Start hidden
|
||||||
|
Starts the selected application in a hidden state
|
||||||
|
|
||||||
|
No application icon
|
||||||
|
Disables the application icon for the selected application
|
||||||
422
docs/chap3.html
@@ -1,422 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: User Guide - Workspace
|
|
||||||
---
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h2>Chapter 3</h2>
|
|
||||||
|
|
||||||
<h1>The Workspace</h1><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="3.1"></a>
|
|
||||||
|
|
||||||
<h2><a name="3.1">3.1 Working with Menus</a></h2><a name="3.1"></a> Menus provide a list of commands that you can
|
|
||||||
execute.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/menu.gif" border="0" width="480" height="300" alt="[An Example Menu]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
To execute a command listed in a menu, click in the corresponding item. The item will blink telling that the command is
|
|
||||||
going to be executed.<br />
|
|
||||||
<br />
|
|
||||||
Grayed commands are disabled and cannot be executed at that moment. If you click on them nothing will happen.<br />
|
|
||||||
<br />
|
|
||||||
Some menu entries have a little triangular indicator at the right. Selecting these entries will open a submenu, with a
|
|
||||||
new list of commands.<br />
|
|
||||||
<br />
|
|
||||||
You can use the keyboard to traverse and execute commands in some of the menus. First you must hit the key used to open
|
|
||||||
the menu --- like F12 for the root menu --- to enable keyboard traversal of it. Then you can use the Up and Down arrow
|
|
||||||
keys to change the current selected item and the Left and Right arrow keys to jump between submenus and parent menus.
|
|
||||||
To execute the current selected item press Return. To close the menu or stop menu traversal, press Escape.
|
|
||||||
Additionally, pressing the first letter for an menu item, will jump the current selection to that item.<br />
|
|
||||||
<br />
|
|
||||||
You can make frequently used menus ``stick'' to the workspace by dragging the titlebar of the menu. This will make a
|
|
||||||
close button appear in the menu titlebar. If you want to close the menu, just click in that button.<br />
|
|
||||||
<br />
|
|
||||||
Menus are normally placed on top of other windows and cannot be obscured by them. If you want the menus to be able to
|
|
||||||
be obscured by lowering them, double click the menu titlebar while holding the Meta key. Repeat this to make the menus
|
|
||||||
not obscurable again.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="3.1.1"></a>
|
|
||||||
|
|
||||||
<h3><a name="3.1.1">3.1.1 The Root Window Menu</a></h3><a name="3.1.1"></a> The <i>Root Window Menu</i> or
|
|
||||||
<i>Applications Menu</i> has items that allow you to quickly launch applications and do some workspace
|
|
||||||
management.<br />
|
|
||||||
<br />
|
|
||||||
To open this menu, click on the workspace (root window) with the 3rd mouse button or hit the key bound to it (F12 by
|
|
||||||
default).<br />
|
|
||||||
<br />
|
|
||||||
The contents of the applications menu can be configured to hold the applications installed on your system. To learn how
|
|
||||||
to configure it, read the section on application menu configuration.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="3.1.2"></a>
|
|
||||||
|
|
||||||
<h3><a name="3.1.2">3.1.2 The Window List Menu</a></h3><a name="3.1.2"></a> Clicking in the workspace with the middle
|
|
||||||
mouse button will open a menu listing all windows that currently exist, with the workspace in which the window is
|
|
||||||
located to its right. The current focused window is marked by a diamond sign next to its name. Clicking in an entry in
|
|
||||||
this menu will focus the window, raise it, and change to the workspace where it is located.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="3.2"></a>
|
|
||||||
|
|
||||||
<h2><a name="3.2">3.2 Working with Applications</a></h2><a name="3.2"></a> In WindowMaker the instance of a running
|
|
||||||
application is represented by an application icon. Do not confuse it with the icons (miniwindows in WindowMaker)
|
|
||||||
displayed by other window managers when a window is iconified. Application icons and miniwindows can be differentiated
|
|
||||||
in that miniwindows have titlebars, application icons do not.<br />
|
|
||||||
<br />
|
|
||||||
WindowMaker identifies a group of windows as belonging to a single instance of an application through some standard
|
|
||||||
hints that the application sets in its windows. Unfortunately, not all applications that exist set these hints,
|
|
||||||
preventing some application-specific features from working. These hints are <b>WM.CLASS</b>,<b>WM.COMMAND</b>, and
|
|
||||||
<b>WM.CLIENT.LEADER</b> or the group leader in <b>WM.HINTS</b>.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font size="-1">Note: The information about applications contained in this section only applies to versions of
|
|
||||||
WindowMaker built without the --enable-single-icon compile time option. This option is unsupported and behaviour when
|
|
||||||
it's enabled will not be covered in this text.</font><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="3.2.1"></a>
|
|
||||||
|
|
||||||
<h3><a name="3.2.1">3.2.1 Hiding an Application</a></h3><a name="3.2.1"></a> If you want to close and application but
|
|
||||||
intend to use it later you can <i>hide</i> it. When you hide an application all windows and miniwindows that belong to
|
|
||||||
that application will be removed from the screen and hidden into its application icon.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To hide an application</b></font>
|
|
||||||
|
|
||||||
<ul type="disk">
|
|
||||||
<li><font face="Helvetica">Click the miniaturize button of any of the windows that belong to the application while
|
|
||||||
holding the Control key.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Press the keyboard shortcut assigned to it, which is Meta+h in the default
|
|
||||||
configuration.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">User the hide command in the <a href=
|
|
||||||
"chap2.html#2.2.9">window commands menu</a> brought up when the
|
|
||||||
window titlebar is clicked with the right mouse button.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Use the (Un)Hide command in the application icon commands menu brought up when the
|
|
||||||
application icon is clicked with the right mouse button.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To unhide an application</b></font>
|
|
||||||
|
|
||||||
<ul type="disk">
|
|
||||||
<li><font face="Helvetica">Double click the application icon with the left mouse button.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Use the (Un)Hide command in the application icon commands menu brought up when the
|
|
||||||
application icon is clicked with the right mouse button.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
When you unhide an application, all it's windows and miniwindows will brought back, and you will be taken to the last
|
|
||||||
workspace in which you worked with that application.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h3><b>Extra Bindings</b></h3>
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="80%" cellspacing="0" cellpadding="0">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="left"><font face="Times New Roman, Times, Times Roman">Action</font></th>
|
|
||||||
|
|
||||||
<th align="left"><font face="Times New Roman, Times, Times Roman">Effect</font></th>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Double-click the application
|
|
||||||
icon while holding the Meta key</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Unhide the clicked application,
|
|
||||||
and hide all other applications that are present in the current workspace.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Double-click the application
|
|
||||||
icon while holding the Shift key</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Unhide the clicked application
|
|
||||||
in the current workspace</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Double-click the application
|
|
||||||
icon with the middle mouse button</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Unhide the clicked application
|
|
||||||
and deminiaturize all its windows.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Double-click the window titlebar
|
|
||||||
with the right mouse button while holding the Meta key.</font></td>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Hide all applications in the
|
|
||||||
current workspace except for the clicked one</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td colspan="2">
|
|
||||||
<hr />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
There are two other commands in the applications menu related to application hiding:<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="90%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Hide others</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Hide all applications in the
|
|
||||||
current workspace, except for the currently active one.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Show All</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Unhide all applications that
|
|
||||||
were hidden from the current workspace</font></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="3.2.2"></a>
|
|
||||||
|
|
||||||
<h3><a name="3.2.2">3.2.2 The Application Icon Menu</a></h3><a name="3.2.2"></a> A menu with commands that will apply
|
|
||||||
to the application can be brought up by clicking the application icon with the right mouse button.<br />
|
|
||||||
<br />
|
|
||||||
The commands available in this menu are:<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="90%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Unhide Here</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Unhides the application in the
|
|
||||||
current workspace.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">(Un)Hide</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Hides the application. Unless
|
|
||||||
the application is already hidden, in which case it will unhide the application and take you to its
|
|
||||||
workspace.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Set Icon...</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Opens the icon image selection
|
|
||||||
panel for the application icon.</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">Kill</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Will kill the
|
|
||||||
application.</font></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center><a name="3.2.3"></a>
|
|
||||||
|
|
||||||
<h3><a name="3.2.3">3.2.3 The Application Dock</a></h3><a name="3.2.3"></a> The application dock is a place where you
|
|
||||||
can store frequently used applications for easy and fast access. It is located, by default, on the right side of the
|
|
||||||
screen.<br />
|
|
||||||
<br />
|
|
||||||
You can click the top icon (the one with the GNUstep logo) and drag it downward to remove most of the dock from view.
|
|
||||||
You can also drag it sideways to move the entire dock from side of the screen to the other.<br />
|
|
||||||
<br />
|
|
||||||
A menu similar to the <a href="#3.2.2">application icon
|
|
||||||
menu</a> is brought up when you click a docked icon with the right mouse button.<br />
|
|
||||||
<br />
|
|
||||||
To make the dock <i>float</i> over windows (not be coverable by windows), either double-click the top dock icon while
|
|
||||||
holding the Meta key, or select the "Floating Dock" option in the dock menu.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<b>Starting a docked application</b><br />
|
|
||||||
<br />
|
|
||||||
To start an application that is docked, double-click its icon. The icon will be briefly highlighted and the application
|
|
||||||
will start.<br />
|
|
||||||
<br />
|
|
||||||
While an application is not running an ellipsis is present in the lower left-hand corner of the icon. This ellipsis
|
|
||||||
will disappear when the application is started and reappear when the application is exited.<br />
|
|
||||||
<br />
|
|
||||||
While the application is running the docked icon will behave just like a normal, undocked application icon, except for
|
|
||||||
some extra actions specific to the dock.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<font face="Helvetica"><b>To start a docked application:</b></font>
|
|
||||||
|
|
||||||
<ul type="disk">
|
|
||||||
<li><font face="Helvetica">Double-click the application icon with the left mouse button.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Use the "Launch" command in the dock menu for the icon. If the application is already
|
|
||||||
running it will start another instance.<br />
|
|
||||||
<br />
|
|
||||||
OR<br />
|
|
||||||
<br /></font></li>
|
|
||||||
|
|
||||||
<li><font face="Helvetica">Hold the Control key while double-clicking the icon to start another instance of the
|
|
||||||
application.</font></li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
If a new instance of an already running application is started it will get a new application icon.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<b>Customizing the dock</b><br />
|
|
||||||
<br />
|
|
||||||
To add new applications to the dock, you can click an application icon and drag it onto the dock. When a ghost image of
|
|
||||||
the icon appears you can release the mouse button and the icon will be docked.<br />
|
|
||||||
<br />
|
|
||||||
To reorder the docked applications, drag an icon to an empty slot and move the icons around as you want.<br />
|
|
||||||
<br />
|
|
||||||
To remove a docked application, drag it from the dock and release the mouse button when the ghost image disappears. To
|
|
||||||
remove the icon of an application that is running, hold the Meta key while dragging it.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<b>Configuring the docked application</b><br />
|
|
||||||
<br />
|
|
||||||
To change the settings of a docked application, select the "Settings..." item in the dock menu for that icon. A
|
|
||||||
settings panel for that icon will appear.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/imagdockapppanel.gif" border="0" width="297" height="369" alt="[Docked Application Settings Panel]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
In the <i>Application path and arguments</i> field, the path for the application and its arguments can be changed. Note
|
|
||||||
that you can't change the application that is represented in the icon or change anything that would cause the
|
|
||||||
application name to be changed. For example, if the icon is for <b>xterm</b> you can't change the field's value to
|
|
||||||
<b>ghostview</b>; or if the icon is for <b>xterm -name vi</b>, you can't change it to <b>xterm -name pine</b>. Also
|
|
||||||
note that you cannot use shell commands, such as out put redirectors. (>, >> etc.)<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<a name="3.3"></a>
|
|
||||||
|
|
||||||
<h2><a name="3.3">3.3 Working with Workspaces</a></h2><a name="3.3"></a><br />
|
|
||||||
<a name="3.3.1"></a>
|
|
||||||
|
|
||||||
<h3><a name="3.3.1">3.3.1 The Workspaces Menu</a></h3><a name="3.3.1"></a> The <i>Workspaces Menu</i> allows you to
|
|
||||||
create, switch, destroy and rename workspaces.<br />
|
|
||||||
<br />
|
|
||||||
It has the following items:<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<table border="0" width="90%" cellspacing="0" cellpadding="5">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">[New]</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Creates a new workspace and
|
|
||||||
automatically switches to it</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">[Destroy Last]</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Destroys the last workspace
|
|
||||||
unless it is occupied</font></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<th align="right" valign="top"><font face="Times New Roman, Times, Times Roman">[Workspaces]</font></th>
|
|
||||||
|
|
||||||
<td align="left" valign="top"><font face="Times New Roman, Times, Times Roman">Each workspace has a
|
|
||||||
corresponding item in the Workspaces menu. Clicking in one of these entries will switch from the current
|
|
||||||
workspace to the selected workspace.</font></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</center>The current active workspace is indicated by a small indicator at the left of the workspace item.<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/wsmenu.gif" border="0" width="350" height="200" alt="[Workspace Menu]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
To change the name of a workspace you must first ``stick'' the menu. Then Control click in the item corresponding to
|
|
||||||
the workspace you want to rename. The item will turn into a editable text field where you can edit the workspace name.
|
|
||||||
To finish editing the workspace name, press Return; to cancel it, press Escape.<br />
|
|
||||||
<br />
|
|
||||||
There is a limit of 16 characters on the length of the workspace name.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
An example Workspace menu being edited:
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<img src="guide/images/wsmenued.gif" border="0" width="101" height="103" alt=
|
|
||||||
"[Workspace Menu: Editing a Workspace name]" />
|
|
||||||
</center><br />
|
|
||||||
<br />
|
|
||||||
<a name="3.3.2"></a>
|
|
||||||
|
|
||||||
<h3><a name="3.3.2">3.3.2 The workspace clip</a></h3><a name="3.3.2"></a> [This section was unavailable in the
|
|
||||||
original, and thus is not here]<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
322
docs/chap3.rst
Normal file
@@ -0,0 +1,322 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: User Guide - Workspace
|
||||||
|
---
|
||||||
|
|
||||||
|
The Workspace
|
||||||
|
=============
|
||||||
|
|
||||||
|
Working with Menus
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Menus provide a list of commands that you can execute.
|
||||||
|
|
||||||
|
.. figure:: guide/images/menu.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: An Example Menu
|
||||||
|
|
||||||
|
To execute a command listed in a menu, click in the corresponding item. The
|
||||||
|
item will blink telling that the command is going to be executed.
|
||||||
|
|
||||||
|
Grayed commands are disabled and cannot be executed at that moment. If you
|
||||||
|
click on them nothing will happen.
|
||||||
|
|
||||||
|
Some menu entries have a little triangular indicator at the right. Selecting
|
||||||
|
these entries will open a submenu, with a new list of commands.
|
||||||
|
|
||||||
|
You can use the keyboard to traverse and execute commands in some of the menus.
|
||||||
|
First you must hit the key used to open the menu - like F12 for the root menu -
|
||||||
|
to enable keyboard traversal of it. Then you can use the Up and Down arrow keys
|
||||||
|
to change the current selected item and the Left and Right arrow keys to jump
|
||||||
|
between submenus and parent menus. To execute the current selected item press
|
||||||
|
Return. To close the menu or stop menu traversal, press Escape. Additionally,
|
||||||
|
pressing the first letter for an menu item, will jump the current selection to
|
||||||
|
that item.
|
||||||
|
|
||||||
|
You can make frequently used menus "stick" to the workspace by dragging the
|
||||||
|
titlebar of the menu. This will make a close button appear in the menu
|
||||||
|
titlebar. If you want to close the menu, just click in that button.
|
||||||
|
|
||||||
|
Menus are normally placed on top of other windows and cannot be obscured by
|
||||||
|
them. If you want the menus to be able to be obscured by lowering them, double
|
||||||
|
click the menu titlebar while holding the Meta key. Repeat this to make the
|
||||||
|
menus not obscurable again.
|
||||||
|
|
||||||
|
|
||||||
|
The Root Window Menu
|
||||||
|
~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
The *Root Window Menu* or *Applications Menu* has items that allow you to
|
||||||
|
quickly launch applications and do some workspace management.
|
||||||
|
|
||||||
|
To open this menu, click on the workspace (root window) with the 3rd mouse
|
||||||
|
button or hit the key bound to it (F12 by default).
|
||||||
|
|
||||||
|
The contents of the applications menu can be configured to hold the
|
||||||
|
applications installed on your system. To learn how to configure it, read the
|
||||||
|
section on application menu configuration.
|
||||||
|
|
||||||
|
|
||||||
|
The Window List Menu
|
||||||
|
~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Clicking in the workspace with the middle mouse button will open a menu listing
|
||||||
|
all windows that currently exist, with the workspace in which the window is
|
||||||
|
located to its right. The current focused window is marked by a diamond sign
|
||||||
|
next to its name. Clicking in an entry in this menu will focus the window,
|
||||||
|
raise it, and change to the workspace where it is located.
|
||||||
|
|
||||||
|
|
||||||
|
Working with Applications
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
In WindowMaker the instance of a running application is represented by an
|
||||||
|
application icon. Do not confuse it with the icons (miniwindows in WindowMaker)
|
||||||
|
displayed by other window managers when a window is iconified. Application
|
||||||
|
icons and miniwindows can be differentiated in that miniwindows have titlebars,
|
||||||
|
application icons do not.
|
||||||
|
|
||||||
|
WindowMaker identifies a group of windows as belonging to a single instance of
|
||||||
|
an application through some standard hints that the application sets in its
|
||||||
|
windows. Unfortunately, not all applications that exist set these hints,
|
||||||
|
preventing some application-specific features from working. These hints are
|
||||||
|
**WM.CLASS**, **WM.COMMAND**, and **WM.CLIENT.LEADER** or the group leader in
|
||||||
|
**WM.HINTS**.
|
||||||
|
|
||||||
|
Note: The information about applications contained in this section only applies
|
||||||
|
to versions of WindowMaker built without the --enable-single-icon compile time
|
||||||
|
option. This option is unsupported and behaviour when it's enabled will not be
|
||||||
|
covered in this text.
|
||||||
|
|
||||||
|
|
||||||
|
Hiding an Application
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
If you want to close and application but intend to use it later you can *hide*
|
||||||
|
it. When you hide an application all windows and miniwindows that belong to
|
||||||
|
that application will be removed from the screen and hidden into its
|
||||||
|
application icon.
|
||||||
|
|
||||||
|
To hide an application:
|
||||||
|
|
||||||
|
- Click the miniaturize button of any of the windows that belong to the
|
||||||
|
application while holding the Control key.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Press the keyboard shortcut assigned to it, which is Meta+h in the default
|
||||||
|
configuration.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- User the hide command in the `window commands menu
|
||||||
|
<chap2.html#the-window-commands-menu>`_ brought up when the window titlebar
|
||||||
|
is clicked with the right mouse button.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Use the (Un)Hide command in the application icon commands menu brought up
|
||||||
|
when the application icon is clicked with the right mouse button.
|
||||||
|
|
||||||
|
To unhide an application
|
||||||
|
|
||||||
|
- Double click the application icon with the left mouse button.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Use the (Un)Hide command in the application icon commands menu brought up
|
||||||
|
when the application icon is clicked with the right mouse button.
|
||||||
|
|
||||||
|
When you unhide an application, all it's windows and miniwindows will brought
|
||||||
|
back, and you will be taken to the last workspace in which you worked with that
|
||||||
|
application.
|
||||||
|
|
||||||
|
**Extra Bindings**
|
||||||
|
|
||||||
|
+-----------------------------------+------------------------------------+
|
||||||
|
| Action | Effect |
|
||||||
|
+===================================+====================================+
|
||||||
|
| Double-click the application icon | Unhide the clicked application, |
|
||||||
|
| while holding the Meta key | and hide all other applications |
|
||||||
|
| | that are present in the current |
|
||||||
|
| | workspace. |
|
||||||
|
+-----------------------------------+------------------------------------+
|
||||||
|
| Double-click the application icon | Unhide the clicked application in |
|
||||||
|
| while holding the Shift key | the current workspace |
|
||||||
|
+-----------------------------------+------------------------------------+
|
||||||
|
| Double-click the application icon | Unhide the clicked application and |
|
||||||
|
| with the middle mouse button | deminiaturize all its windows. |
|
||||||
|
+-----------------------------------+------------------------------------+
|
||||||
|
| Double-click the window titlebar | Hide all applications in the |
|
||||||
|
| with the right mouse button while | current workspace except for the |
|
||||||
|
| holding the Meta key. | clicked one. |
|
||||||
|
+-----------------------------------+------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
There are two other commands in the applications menu related to application
|
||||||
|
hiding:
|
||||||
|
|
||||||
|
Hide others
|
||||||
|
Hide all applications in the current workspace, except for the currently
|
||||||
|
active one.
|
||||||
|
|
||||||
|
Show All
|
||||||
|
Unhide all applications that were hidden from the current workspace
|
||||||
|
|
||||||
|
|
||||||
|
The Application Icon Menu
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
A menu with commands that will apply to the application can be brought up by
|
||||||
|
clicking the application icon with the right mouse button.
|
||||||
|
|
||||||
|
The commands available in this menu are:
|
||||||
|
|
||||||
|
Unhide Here
|
||||||
|
Unhides the application in the current workspace.
|
||||||
|
|
||||||
|
(Un)Hide
|
||||||
|
Hides the application. Unless the application is already hidden, in which
|
||||||
|
case it will unhide the application and take you to its workspace.
|
||||||
|
|
||||||
|
Set Icon...
|
||||||
|
Opens the icon image selection panel for the application icon.
|
||||||
|
|
||||||
|
Kill
|
||||||
|
Will kill the application.
|
||||||
|
|
||||||
|
|
||||||
|
The Application Dock
|
||||||
|
~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
The application dock is a place where you can store frequently used
|
||||||
|
applications for easy and fast access. It is located, by default, on the right
|
||||||
|
side of the screen.
|
||||||
|
|
||||||
|
You can click the top icon (the one with the GNUstep logo) and drag it downward
|
||||||
|
to remove most of the dock from view. You can also drag it sideways to move
|
||||||
|
the entire dock from side of the screen to the other.
|
||||||
|
|
||||||
|
A menu similar to the `application icon menu <#the-application-icon-menu>`_ is
|
||||||
|
brought up when you click a docked icon with the right mouse button.
|
||||||
|
|
||||||
|
To make the dock *float* over windows (not be coverable by windows), either
|
||||||
|
double-click the top dock icon while holding the Meta key, or select the
|
||||||
|
"Floating Dock" option in the dock menu.
|
||||||
|
|
||||||
|
|
||||||
|
Starting a docked application
|
||||||
|
.............................
|
||||||
|
|
||||||
|
To start an application that is docked, double-click its icon. The icon will be
|
||||||
|
briefly highlighted and the application will start.
|
||||||
|
|
||||||
|
While an application is not running an ellipsis is present in the lower
|
||||||
|
left-hand corner of the icon. This ellipsis will disappear when the application
|
||||||
|
is started and reappear when the application is exited.
|
||||||
|
|
||||||
|
While the application is running the docked icon will behave just like a
|
||||||
|
normal, undocked application icon, except for some extra actions specific to
|
||||||
|
the dock.
|
||||||
|
|
||||||
|
To start a docked application:
|
||||||
|
|
||||||
|
- Double-click the application icon with the left mouse button.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Use the "Launch" command in the dock menu for the icon. If the application is
|
||||||
|
already running it will start another instance.
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- Hold the Control key while double-clicking the icon to start another instance
|
||||||
|
of the application.
|
||||||
|
|
||||||
|
If a new instance of an already running application is started it will get a
|
||||||
|
new application icon.
|
||||||
|
|
||||||
|
|
||||||
|
Customizing the dock
|
||||||
|
....................
|
||||||
|
|
||||||
|
To add new applications to the dock, you can click an application icon and drag
|
||||||
|
it onto the dock. When a ghost image of the icon appears you can release the
|
||||||
|
mouse button and the icon will be docked.
|
||||||
|
|
||||||
|
To reorder the docked applications, drag an icon to an empty slot and move the
|
||||||
|
icons around as you want.
|
||||||
|
|
||||||
|
To remove a docked application, drag it from the dock and release the mouse
|
||||||
|
button when the ghost image disappears. To remove the icon of an application
|
||||||
|
that is running, hold the Meta key while dragging it.
|
||||||
|
|
||||||
|
|
||||||
|
Configuring the docked application
|
||||||
|
..................................
|
||||||
|
|
||||||
|
To change the settings of a docked application, select the "Settings..." item
|
||||||
|
in the dock menu for that icon. A settings panel for that icon will appear.
|
||||||
|
|
||||||
|
.. figure:: guide/images/dockapppanel.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Docked Application Settings Panel
|
||||||
|
|
||||||
|
In the *Application path and arguments* field, the path for the application and
|
||||||
|
its arguments can be changed. Note that you can't change the application that
|
||||||
|
is represented in the icon or change anything that would cause the application
|
||||||
|
name to be changed. For example, if the icon is for ``xterm`` you can't change
|
||||||
|
the field's value to **ghostview**; or if the icon is for ``xterm -name vi``,
|
||||||
|
you can't change it to ``xterm -name pine``. Also note that you cannot use
|
||||||
|
shell commands, such as output redirectors. (``>``, ``>>``; etc.)
|
||||||
|
|
||||||
|
|
||||||
|
Working with Workspaces
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
The Workspaces Menu
|
||||||
|
~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
The *Workspaces Menu* allows you to create, switch, destroy and rename
|
||||||
|
workspaces.
|
||||||
|
|
||||||
|
It has the following items:
|
||||||
|
|
||||||
|
New
|
||||||
|
Creates a new workspace and automatically switches to it
|
||||||
|
|
||||||
|
Destroy Last
|
||||||
|
Destroys the last workspace unless it is occupied
|
||||||
|
|
||||||
|
Workspaces
|
||||||
|
Each workspace has a corresponding item in the Workspaces menu. Clicking in
|
||||||
|
one of these entries will switch from the current workspace to the selected
|
||||||
|
workspace.
|
||||||
|
|
||||||
|
The current active workspace is indicated by a small indicator at the left of
|
||||||
|
the workspace item.
|
||||||
|
|
||||||
|
.. figure:: guide/images/wsmenu.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Workspace Menu
|
||||||
|
|
||||||
|
To change the name of a workspace you must first "stick" the menu. Then Control
|
||||||
|
click in the item corresponding to the workspace you want to rename. The item
|
||||||
|
will turn into a editable text field where you can edit the workspace name. To
|
||||||
|
finish editing the workspace name, press Return; to cancel it, press Escape.
|
||||||
|
|
||||||
|
There is a limit of 16 characters on the length of the workspace name.
|
||||||
|
|
||||||
|
An example Workspace menu being edited:
|
||||||
|
|
||||||
|
.. figure:: guide/images/wsmenued.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Workspace Menu: Editing a Workspace name
|
||||||
|
|
||||||
|
|
||||||
|
The workspace clip
|
||||||
|
~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. WTF is that??
|
||||||
|
|
||||||
|
[This section was unavailable in the original, and thus is not here]
|
||||||
1660
docs/chap4.html
778
docs/chap4.rst
Normal file
@@ -0,0 +1,778 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: User Guide - Configuration
|
||||||
|
---
|
||||||
|
|
||||||
|
Configuring Window Maker
|
||||||
|
========================
|
||||||
|
|
||||||
|
.. contents::
|
||||||
|
:backlinks: none
|
||||||
|
:local:
|
||||||
|
|
||||||
|
The Defaults System
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
WindowMaker uses a defaults database for storing various information, like
|
||||||
|
configurations and other data that must be kept between sessions (like the list
|
||||||
|
of applications of a saved session). The defaults database is stored as
|
||||||
|
*property lists* in the $(HOME)/GNUstep/Defaults directory. Each file in the
|
||||||
|
$(HOME)/GNUstep/Defaults directory contains data that belongs to a specific
|
||||||
|
*domain*.
|
||||||
|
|
||||||
|
Any application can use the defaults database to store its information.
|
||||||
|
Generally an application will have one or more *domains* that belong to it.
|
||||||
|
|
||||||
|
Property list File Format
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
The syntax of the property list is simple, but, if you need to change it
|
||||||
|
manually you must take care not to leave any syntax errors.
|
||||||
|
|
||||||
|
The EBNF for the property list is the following:
|
||||||
|
|
||||||
|
**Description of the syntax of a property list in the Bacchus Naur Form (BNF)**
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
<object> ::= <string> | <data> | <array> | <dictionary>
|
||||||
|
<string> ::= text with non-alphanumeric characters | alphanumeric text
|
||||||
|
<array> ::= `(' [ <object> { `,' <object> }* ] `)'
|
||||||
|
<dictionary> ::= `{' [ <keyval_pair> { `,' <keyval_pair> }* ] `}'
|
||||||
|
<keyval_pair> ::= <string> `=' <object> `;'
|
||||||
|
|
||||||
|
|
||||||
|
**Example property list file**
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
{
|
||||||
|
"*" = {
|
||||||
|
Icon = "defaultAppIcon.xpm";
|
||||||
|
};
|
||||||
|
"xterm.XTerm" = {
|
||||||
|
Icon = "xterm.xpm";
|
||||||
|
};
|
||||||
|
xconsole = {
|
||||||
|
Omnipresent = YES;
|
||||||
|
NoTitlebar = YES;
|
||||||
|
KeepOnTop = NO;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
The property list above is a dictionary with 3 dictionaries inside. The first
|
||||||
|
is keyed by "*", the second by "XTerm.xterm" and the last by "xconsole".
|
||||||
|
|
||||||
|
Note that all strings that have non-alphabetic or numeric characters (like a
|
||||||
|
dot "." or the asterisk "*" are enclosed by double quotes. Strings with only
|
||||||
|
alphanumeric characters may or may not be enclosed in double quotes, as they
|
||||||
|
will not make any difference.
|
||||||
|
|
||||||
|
Here is another example:
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
{
|
||||||
|
FTitleBack = ( hgradient, gray, "#112233" );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
The property list in the example above contains an array with 3 elements with a
|
||||||
|
key named "FTitleBack".
|
||||||
|
|
||||||
|
Except for cases like file names and paths, all value strings are case
|
||||||
|
insensitive, i.e.: YES = Yes = yes = yEs.
|
||||||
|
|
||||||
|
|
||||||
|
Value Types
|
||||||
|
~~~~~~~~~~~
|
||||||
|
|
||||||
|
Here is a description of some of the types of values that an option might have:
|
||||||
|
|
||||||
|
+------------------+--------------------------------------------+
|
||||||
|
| Type | Value |
|
||||||
|
+==================+============================================+
|
||||||
|
| boolean | YES or NO |
|
||||||
|
+------------------+--------------------------------------------+
|
||||||
|
| integer | any integer number, usually limited |
|
||||||
|
| | by a range that will be indicated |
|
||||||
|
+------------------+--------------------------------------------+
|
||||||
|
| positive integer | any integer number greater than or |
|
||||||
|
| | equal to zero (0) a |
|
||||||
|
+------------------+--------------------------------------------+
|
||||||
|
| speed | UltraFast, Fast, Medium, Slow, or VerySlow |
|
||||||
|
+------------------+--------------------------------------------+
|
||||||
|
| mouse button | Left, Middle, Right, Button1, Button2, |
|
||||||
|
| | Button3, Button4, or Button5 |
|
||||||
|
+------------------+--------------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Preferences
|
||||||
|
~~~~~~~~~~~
|
||||||
|
|
||||||
|
General preference options are stored in the *WindowMaker* domain; i.e. the
|
||||||
|
$(HOME)/GNUstep/Defaults/WindowMaker file.
|
||||||
|
|
||||||
|
Changes in preference options will automatically affect the current WindowMaker
|
||||||
|
session, without a restart. Some options, however, require a restart of
|
||||||
|
WindowMaker before they take effect. Such options are marked with a * .
|
||||||
|
|
||||||
|
Note that values marked as *Default* are values that are assumed if the option
|
||||||
|
is not specified, instead of *factory default* values that are set in the
|
||||||
|
preference file.
|
||||||
|
|
||||||
|
.. TODO there is no point for describing all of the options. There is a lot of
|
||||||
|
them added, some of the changed and possibly removed. Let's treat them as
|
||||||
|
the advanced configuration and point to the right sources, where one can
|
||||||
|
easily figure out which options take which values
|
||||||
|
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| Option | Value | Description |
|
||||||
|
+============================+=====================+======================================+
|
||||||
|
| PixmapPath | list of directories | A list of directories where pixmaps |
|
||||||
|
| | separated by ":" | can be found. The pixmaps for things |
|
||||||
|
| | (default: depends | like icons, are searched in these |
|
||||||
|
| | on the system) | paths in order of appearance. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| `*NoDithering` | boolean | Disable internal dithering of |
|
||||||
|
| | (default: NO) | images. Not recommended for displays |
|
||||||
|
| | | with less than 8 bits per pixel. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| `*ColormapSize` | integer number > 1 | Number of colors for each of the |
|
||||||
|
| | (default: 4) | red, green and blue components to be |
|
||||||
|
| | | used for the dithering colormap. |
|
||||||
|
| | | This value must be greater than 1 |
|
||||||
|
| | | and smaller than 6 for 8bpp |
|
||||||
|
| | | displays. It only makes sense on |
|
||||||
|
| | | PseudoColor displays. This option |
|
||||||
|
| | | has not effect on TrueColor |
|
||||||
|
| | | displays. Larger values result in |
|
||||||
|
| | | better appearance, but leaves less |
|
||||||
|
| | | colors for other applications. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| `*ModifierKey` | modifier key name | The key to use as the modifier being |
|
||||||
|
| | (default: Mod1) | referred as Meta in this manual, |
|
||||||
|
| | | like Meta dragging a window to move |
|
||||||
|
| | | it. Valid values are Alt, Meta, |
|
||||||
|
| | | Super, Hyper, Mod1, Mod2, Mod3, |
|
||||||
|
| | | Mod4, Mod5. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| UseSaveUnders | boolean | Use *saveunders* in WindowMaker |
|
||||||
|
| | (default: NO) | windows. This can improve |
|
||||||
|
| | | performance but increases memory |
|
||||||
|
| | | usage. It also can cause problems |
|
||||||
|
| | | with refreshing in some |
|
||||||
|
| | | applications. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| DisableClip | boolean | Will remove the application Clip |
|
||||||
|
| | (default: NO) | from the workspace. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| DisableDock | boolean | Will remove the application Dock |
|
||||||
|
| | (default: NO) | from the workspace |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| Superfluous | boolean | Enable extra animations and other |
|
||||||
|
| | (default: NO) | cosmetic things that might increase |
|
||||||
|
| | | peak memory and CPU usage. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| SaveSessionOnExit | boolean | Automatically save the state of the |
|
||||||
|
| | (default: NO) | session when exiting WindowMaker. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| `*IconSize` | integer > 4 | The size of application icons and |
|
||||||
|
| | (default: 64) | miniwindows. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| OpaqueMove | boolean | Whether the whole window should be |
|
||||||
|
| | (default: NO) | moved while dragging it, or, if only |
|
||||||
|
| | | it's frame should be dragged. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| FocusMode | Manual or | The mode of input focus setting. |
|
||||||
|
| | ClickToFocus, Auto | Refer to section `Focusing a Window |
|
||||||
|
| | or | <chap2.html#focusing-a-window>`_ |
|
||||||
|
| | FocusFollowsMouse, | |
|
||||||
|
| | SemiAuto or Sloppy | |
|
||||||
|
| | (default: | |
|
||||||
|
| | ClickToFocus) | |
|
||||||
|
| | | |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| IgnoreFocusClick | boolean | Whether the mouse click use to focus |
|
||||||
|
| | (default: NO) | a window should be ignore or treated |
|
||||||
|
| | | normally. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| AutoFocus | boolean | Whether newly created windows should |
|
||||||
|
| | (default: NO) | receive input focus. Do not confuse |
|
||||||
|
| | | with FocusMode=Auto. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| RaiseDelay | integer number | How many tenths of a second to wait |
|
||||||
|
| | (default: 0) | before raising a window in Auto or |
|
||||||
|
| | | Semi-Auto focus mode. 0 disables |
|
||||||
|
| | | this feature. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| DoubleClickTime | integer number | If two mouse clicks occur in this |
|
||||||
|
| | (default: 250) | interval of time, it will be |
|
||||||
|
| | | considered a double click. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| ColorMapMode | Manual or | The mode of colormap setting. In |
|
||||||
|
| | ClickToFocus, | *Manual* or *ClickToFocus* mode, the |
|
||||||
|
| | Auto or | colormap is set to the one belonging |
|
||||||
|
| | FocusFollowsMouse | to the current focused window. In |
|
||||||
|
| | (default: auto) | *Auto* or *FocusFollowsMouse* mode, |
|
||||||
|
| | | the colormap is set to the one |
|
||||||
|
| | | belonging to the window under the |
|
||||||
|
| | | pointer. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| CirculateRaise | boolean | Whether the window should be raised |
|
||||||
|
| | (default: NO) | when circulating. (focus the next or |
|
||||||
|
| | | previous window through the |
|
||||||
|
| | | keyboard) |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| OnTopTransients | boolean | Whether transient windows should |
|
||||||
|
| | (default: NO) | always be placed over their owners |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| WindowPlacement | auto, cascade, | Sets placement mode for new windows. |
|
||||||
|
| | manual, or | *Auto* places the window |
|
||||||
|
| | random | automatically in the first open |
|
||||||
|
| | (default: cascade) | space found in the workspace. |
|
||||||
|
| | | *Cascade* places the window in |
|
||||||
|
| | | incrementing positions starting from |
|
||||||
|
| | | the the top-left corner of the |
|
||||||
|
| | | workspace. *Manual* allows you to |
|
||||||
|
| | | place the window interactively with |
|
||||||
|
| | | the mouse. *Random* paces the window |
|
||||||
|
| | | randomly in the workspace. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| WindowPlaceOrigin | (X,Y) where X | Sets the offset, from the top-left |
|
||||||
|
| | and Y are integer | corner of the screen, to place |
|
||||||
|
| | numbers | windows. In non-manual |
|
||||||
|
| | (default: (0,0)) | WindowPlacement modes windows will |
|
||||||
|
| | | not be placed above or to the left |
|
||||||
|
| | | of this point. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| AutoArrangeIcons | boolean | Whether icons should be |
|
||||||
|
| | (default: NO) | automatically arranged |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| ResizeDisplay | center, corner, | Selects the type or position of the |
|
||||||
|
| | floating, or | box that shows the window size when |
|
||||||
|
| | line | a window is being resized. *center* |
|
||||||
|
| | (default: corner) | places the box in the center of the |
|
||||||
|
| | | workspace, *corner* places it in the |
|
||||||
|
| | | top-left corner of the workspace, |
|
||||||
|
| | | *floating* places it in the center |
|
||||||
|
| | | of the window being resized and |
|
||||||
|
| | | *line* draws the current window size |
|
||||||
|
| | | over the workspace, like in a |
|
||||||
|
| | | technical drawing. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| MoveDisplay | center, corner | Selects the type or position of the |
|
||||||
|
| | or floating | box that shows the window position |
|
||||||
|
| | (default: corner) | when a window is being moved. The |
|
||||||
|
| | | value meanings are the same as for |
|
||||||
|
| | | the ResizeDisplay option. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| AlignSubmenus | boolean | Whether submenus should be aligned |
|
||||||
|
| | (default: NO) | vertically with their parent menus. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| WrapMenus | boolean | Whether submenus should be placed to |
|
||||||
|
| | (default: NO) | the right of their parent menus when |
|
||||||
|
| | | they don't fit the screen. Note that |
|
||||||
|
| | | menus placed off the screen can be |
|
||||||
|
| | | scrolled. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| ScrollableMenus | boolean | Whether menus that are not fully |
|
||||||
|
| | (default: NO) | inside the screen should |
|
||||||
|
| | | automatically scroll when the |
|
||||||
|
| | | pointer is over them and near the |
|
||||||
|
| | | border of the screen. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| MenuScrollSpeed | speed | The scrolling speed of menus. |
|
||||||
|
| | (default: medium) | |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| DontLinkWorkspaces | boolean | Do not automatically switch to the |
|
||||||
|
| | (default: NO) | next or previous workspace when a |
|
||||||
|
| | | window is dragged to the edge of the |
|
||||||
|
| | | screen. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| NoWindowUnderDock | boolean | When maximizing windows, limit their |
|
||||||
|
| | (default: NO) | sizes so that they will not be |
|
||||||
|
| | | covered by the dock. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| NoWindowOverIcons | boolean | When maximizing windows, limit their |
|
||||||
|
| | (default: NO) | sizes so that they will cover |
|
||||||
|
| | | miniwindows and application icons. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| StickyIcons | boolean | Whether miniwindows should be |
|
||||||
|
| | (default: NO) | present in all workspaces. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| CycleWorkspaces | boolean | Set to YES if you want windows that |
|
||||||
|
| | (default: NO) | are dragged past the last workspace |
|
||||||
|
| | | to be moved to the first workspace, |
|
||||||
|
| | | and vice-versa. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| AdvanceToNewWorkspace | boolean | Whether windows dragged past the |
|
||||||
|
| | (default: NO) | last workspace should create a new |
|
||||||
|
| | | workspace. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| DisableAnimations | boolean | Whether animations, like the one |
|
||||||
|
| | (default: NO) | done during minimization, should be |
|
||||||
|
| | | disabled. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| IconSlideSpeed | speed | The speed of icons when they are |
|
||||||
|
| | (default: medium) | being slid across the workspace. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| ShadeSpeed | speed | The speed of the shading animation. |
|
||||||
|
| | (default: medium) | |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| DisableSound | boolean | Whether sound support in WindowMaker |
|
||||||
|
| | (default: NO) | should be disabled |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| `*DisableWSMouseActions` | boolean | Whether actions in the workspace |
|
||||||
|
| | (default: NO) | triggered by mouse-clicks should be |
|
||||||
|
| | | disabled. This allows the use of |
|
||||||
|
| | | file and desktop managers that place |
|
||||||
|
| | | icons on the root window (such as |
|
||||||
|
| | | KDE). |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| SelectWindowMouseButton | mouse button | The mouse button that activates |
|
||||||
|
| | (default: left) | selection of multiple windows in the |
|
||||||
|
| | | workspace. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| WindowListMouseButton | mouse button | The mouse button that opens the |
|
||||||
|
| | (default: middle) | window list menu in the workspace. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
| ApplicationMenuMouseButton | mouse button | The mouse button that opens the |
|
||||||
|
| | (default: right) | applications menu in the workspace. |
|
||||||
|
+----------------------------+---------------------+--------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Appearance Options
|
||||||
|
~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Fonts are specified in the X Logical Font Description format. You can cut and
|
||||||
|
paste these names from programs like ``xfontsel``.
|
||||||
|
|
||||||
|
Colors are specified as color names in the standard X format. This can be any
|
||||||
|
color name shown by the ``showrgb`` program (like black, white or gray) or a
|
||||||
|
color value in the #rrggbb format, where rr, gg and bb is the intensity of the
|
||||||
|
color component (like #ff0000 for pure red or #000080 for medium blue). Note
|
||||||
|
that color names in the #rrggbb format must be enclosed with double quotes.
|
||||||
|
|
||||||
|
Textures are specified as an array, where the first element specifies the
|
||||||
|
texture type followed by a variable number of arguments.
|
||||||
|
|
||||||
|
Valid texture types are:
|
||||||
|
|
||||||
|
(solid, color)
|
||||||
|
the texture is a simple solid color.
|
||||||
|
|
||||||
|
|
||||||
|
(dgradient, color1, color2)
|
||||||
|
the texture is a diagonal gradient rendered from the top-left corner to the
|
||||||
|
bottom-right corner. The first argument (color1) is the color for the
|
||||||
|
top-left corner and the second (color2) is for the bottom-right corner.
|
||||||
|
|
||||||
|
(hgradient, color1, color2)
|
||||||
|
the texture is a horizontal gradient rendered from the left edge to the
|
||||||
|
right edge. The first argument (color1) is the color for the left edge and
|
||||||
|
the second (color2) is for the right edge.
|
||||||
|
|
||||||
|
(vgradient, color1, color2)
|
||||||
|
the texture is a vertical gradient rendered from the top edge to the bottom
|
||||||
|
edge. The first argument (color1) is the color for the top edge and the
|
||||||
|
second (color2) is for the bottom edge.
|
||||||
|
|
||||||
|
|
||||||
|
(mdgradient, color1, color2,...,color*n*)
|
||||||
|
this is equivalent to drgadient, but you can specify more than two colors
|
||||||
|
|
||||||
|
(mhgradient, color1, color2,...,color*n*)
|
||||||
|
this is equivalent to hrgadient, but you can specify more than two colors
|
||||||
|
|
||||||
|
|
||||||
|
(mvgradient, color1, color2,...,color<i>n</i>)
|
||||||
|
this is equivalent to vrgadient, but you can specify more than two colors
|
||||||
|
|
||||||
|
**Examples**:
|
||||||
|
|
||||||
|
.. figure:: guide/images/texsolid.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Solid Color
|
||||||
|
|
||||||
|
(solid, gray)
|
||||||
|
|
||||||
|
.. figure:: guide/images/texdgrad.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Diagoonal Gradient
|
||||||
|
|
||||||
|
(dgradient, gray80, gray20)
|
||||||
|
|
||||||
|
.. figure:: guide/images/texhgrad.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Horizontal Gradient
|
||||||
|
|
||||||
|
(hgradient, gray80, gray20)
|
||||||
|
|
||||||
|
.. figure:: guide/images/texvgrad.gif
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Vertical Gradient
|
||||||
|
|
||||||
|
(vgradient, gray80, gray20)
|
||||||
|
|
||||||
|
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| Option | Value | Description |
|
||||||
|
+====================+======================+========================================+
|
||||||
|
| `*NewStyle` | boolean | Selects between N*XTSTEP style buttons |
|
||||||
|
| | (default: NO) | in the titlebar and a newer style of |
|
||||||
|
| | | buttons. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| WidgetColor | (solid, color) | Chooses the color to be used in |
|
||||||
|
| | where color is a | titlebar buttons if NewStyle=No; |
|
||||||
|
| | color name | |
|
||||||
|
| | (default: | |
|
||||||
|
| | (solid, grey)) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| WorkspaceBack | a texture or | Default texture for the workspace |
|
||||||
|
| | none | background. Note the *dgradient* and |
|
||||||
|
| | (default: none) | *mdgradient* textures can take a lot |
|
||||||
|
| | | of time to be rendered. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| IconBack | texture | Texture for the background of icons |
|
||||||
|
| | (default: | and miniwindows. |
|
||||||
|
| | (solid, grey)) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| FTitleBack | texture | Texture for the focused window |
|
||||||
|
| | (default: | titlebar. |
|
||||||
|
| | (solid, black)) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| PTitleBack | texture | Texture for the titlebar of the parent |
|
||||||
|
| | (default: | window of the currently focused |
|
||||||
|
| | (solid, "#616161")) | transient window |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| UTitleBack | texture | Texture for unfocused window |
|
||||||
|
| | (default: | titlebars. |
|
||||||
|
| | (solid, gray)) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| MenuTitleBack | texture | Texture for menu titlebars. |
|
||||||
|
| | (default: | |
|
||||||
|
| | (solid, black)) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| MenuTextBack | texture | Texture for menu items |
|
||||||
|
| | (default: | |
|
||||||
|
| | (solid, gray)) | |
|
||||||
|
| | | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| FTitleColor | color | The color of the text in the focused |
|
||||||
|
| | (default: white) | window titlebar. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| PTitleColor | color | Color for the text in the titlebar of |
|
||||||
|
| | (default: white) | the parent window of the currently |
|
||||||
|
| | | focused transient. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| UTitleColor | color | The color for the text in the titlebar |
|
||||||
|
| | (default: black) | of unfocused windows. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| MenuTitleColor | color | Color for the text in menu titlebars |
|
||||||
|
| | (default: white) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| MenuTextColor | color | Color for the text in menu items |
|
||||||
|
| | (default: black) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| HighlightColor | color | Color for the highlighted item in |
|
||||||
|
| | (default: white) | menus. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| HighlightTextColor | color | Color for the highlighted item text in |
|
||||||
|
| | (default: black) | menus. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| MenuDisabledColor | color | Color for the text of disabled menu |
|
||||||
|
| | (default: "#616161") | items. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| ClipTitleColor | color | Color for the text in the clip. |
|
||||||
|
| | (default: black) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| CClipTitleColor | color | Color for the text in the collapsed |
|
||||||
|
| | (default: "#454045") | clip. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| WindowTitleFont | font (default: | Font for the text in window |
|
||||||
|
| | Helvetica bold 12) | titlebars. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| MenuTitleFont | font (default: | Font for the text in menu titlebars) |
|
||||||
|
| | Helvetica bold 12) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| MenuTextFont | font (default: | Font for the text in menu items |
|
||||||
|
| | Helvetica medium 12) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| IconTitleFont | font (default: | Font for the text in miniwindow |
|
||||||
|
| | Helvetica medium 8) | titlebars. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| ClipTitleFont | font (default: | Font for the text in the clip. |
|
||||||
|
| | Helvetica bold 10) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| Displayfont | font (default: | Font for the text information in |
|
||||||
|
| | Helvetica medium 12) | windows, like the size of windows |
|
||||||
|
| | | during resize. |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
| TitleJustify | center, left, | Justification of the text in window |
|
||||||
|
| | or right | titlebars. |
|
||||||
|
| | (default: center) | |
|
||||||
|
+--------------------+----------------------+----------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Keyboard Bindings
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Keyboard shortcut specifications are in the form:
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
[<modifier key names> + ] <key name>
|
||||||
|
|
||||||
|
Where *modifier key names* specify an optional modifier key, like Meta or
|
||||||
|
Shift. Any number of modifier keys might be specified. The *key name* is the
|
||||||
|
actual key that will trigger the action bound to the option.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
|
||||||
|
[F10]
|
||||||
|
Means the F10 key.
|
||||||
|
|
||||||
|
Meta+TAB
|
||||||
|
Means the TAB key with the Meta modifier key pressed at the same time.
|
||||||
|
|
||||||
|
Meta+Shift+TAB
|
||||||
|
Means the TAB key with the Meta and Shift modifier keys pressed at the same
|
||||||
|
time.
|
||||||
|
|
||||||
|
Key names can be found at /usr/X11R6/include/X11/keysymdef.h The *XK_* prefixes
|
||||||
|
must be ignored (if key name is *XK_Return* use *Return*).
|
||||||
|
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Option | Default Value | Description |
|
||||||
|
+=======================+===============+=========================================+
|
||||||
|
| RootMenuKey | None | Opens the `root window menu |
|
||||||
|
| | | <chap3.html#the-root-window-menu>`_ |
|
||||||
|
| | | at the current position of the |
|
||||||
|
| | | mouse pointer. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| WindowListKey | None | Opens the `window list menu`_ |
|
||||||
|
| | | menu at the current position of the |
|
||||||
|
| | | mouse pointer. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| WindowMenuKey | None | Opens the `window commands menu |
|
||||||
|
| | | <chap2.html#the-window-commands-menu>`_ |
|
||||||
|
| | | for the currently focused window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| MiniaturizeKey | None | Miniaturizes the currently focused |
|
||||||
|
| | | window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| HideKey | None | Hides the currently active |
|
||||||
|
| | | application. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| CloseKey | None | Closes the current focused window |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| MaximizeKey | None | Maxmizes the currently focused window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| VMaximizeKey | None | Vertically Maximizes the currently |
|
||||||
|
| | | focused window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| RaiseKey | Meta+Up | Raises the currently focused window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| LowerKey | Meta+Down | Lowers the currently focused window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| RaiseLowerKey | None | Raises the window under the pointer, |
|
||||||
|
| | | or lowers it if it is already raised. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| ShadeKey | None | Shades the currently focused window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| SelectKey | None | Selects current focused window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| FocusNextKey | None | Switch focus to next window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| FocusPrevKey | None | Switch focus to previous window. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| NextWorkspaceKey | None | Switches to next workspace. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| PrevWorkspaceKey | None | Switches to previous workspace. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| NextWorkspaceLayerKey | None | Switches to the next group of 10 |
|
||||||
|
| | | workspaces. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| PrevWorkspaceLayerKey | None | Switches to the previous group of |
|
||||||
|
| | | 10 workspaces. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Workspace1Key | None | Switches to workspace 1. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Workspace2Key | None | Switches to workspace 2, creating |
|
||||||
|
| | | it if it does not exist. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Workspace3Key | None | Switches to workspace 3, creating |
|
||||||
|
| | | it if it does not exist. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Workspace4Key | None | Switches to workspace 4, creating |
|
||||||
|
| | | it if it does not exist. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Workspace5Key | None | Switches to workspace 5, creating |
|
||||||
|
| | | it if it does not exist. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Workspace6Key | None | Switches to workspace 6, creating |
|
||||||
|
| | | it if it does not exist. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Workspace7Key | None | Switches to workspace 7, creating |
|
||||||
|
| | | it if it does not exist. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Workspace8Key | None | Switches to workspace 8, creating |
|
||||||
|
| | | it if it does not exist. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| Workspace9Key | None | Switches to workspace 9, creating |
|
||||||
|
| | | it if it does not exist. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| | | |
|
||||||
|
| Workspace10Key | None | Switches to workspace 10, creating |
|
||||||
|
| | | it if it does not exist. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| ClipLowerKey | None | Lowers the clip. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
| ClipRaiseLowerKEy | None | Raises the clip, or lowers it if |
|
||||||
|
| | | it is already raised. |
|
||||||
|
+-----------------------+---------------+-----------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Window Attributes
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Window attributes are stored in the $(HOME)/GNUstep/Defaults/WMWindowAttributes
|
||||||
|
file.
|
||||||
|
|
||||||
|
The contents of this file is a dictionary of attribute dictionaries keyed by
|
||||||
|
window names. Like this:
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
{
|
||||||
|
"*" = {
|
||||||
|
Icon = "defaultAppIcon.xpm";
|
||||||
|
};
|
||||||
|
"xterm.XTerm" = {
|
||||||
|
Icon = "xterm.xpm";
|
||||||
|
};
|
||||||
|
xconsole = {
|
||||||
|
Omnipresent = YES;
|
||||||
|
NoTitlebar = YES;
|
||||||
|
KeepOnTop = NO;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
Window names are in the form [1]_ :
|
||||||
|
|
||||||
|
- <window instance name>.<window class name>
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- <window instance name>
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
- <window class name>
|
||||||
|
|
||||||
|
Placing an asterisk as the window name means that the values set for that key
|
||||||
|
are to be used as default values for all windows. So, since xconsole does not
|
||||||
|
specify an Icon attribute, it will use the default value, which in the above
|
||||||
|
example is defaultAppIcon.xpm.
|
||||||
|
|
||||||
|
|
||||||
|
**Options:**
|
||||||
|
|
||||||
|
The default is NO for all options
|
||||||
|
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| Option | Value | Description |
|
||||||
|
+=====================+==================+=====================================+
|
||||||
|
| Icon | pixmap file name | Assigns a pixmap image to be |
|
||||||
|
| | | used as the icon for that window. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| NoTitleBar | boolean | Disables the titlebar in the |
|
||||||
|
| | | window. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| NoResizeBar | boolean | Disables the resizebar in the |
|
||||||
|
| | | window. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| NoMiniaturizeButton | boolean | Remove the miniaturize |
|
||||||
|
| | | button. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| NoCloseButton | boolean | Remove the close button. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| NoHideOthers | boolean | Do not hide the window, or the |
|
||||||
|
| | | application to which the window |
|
||||||
|
| | | belongs when a *Hide Others* |
|
||||||
|
| | | command is issued. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| NoMouseBindings | boolean | Do not grab mouse buttons in that |
|
||||||
|
| | | window. This means that actions |
|
||||||
|
| | | like a Meta-click on the window |
|
||||||
|
| | | will be caught by the application |
|
||||||
|
| | | instead of WindowMaker. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| NoKeyBindings | boolean | Do not grab keys in that window. |
|
||||||
|
| | | This means that keystrokes that |
|
||||||
|
| | | would normally be intercepted by |
|
||||||
|
| | | WindowMaker (because they are |
|
||||||
|
| | | bound to some action), like |
|
||||||
|
| | | Meta+Up, will be passed to the |
|
||||||
|
| | | application. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| NoAppIcon | boolean | Do not create application icon for |
|
||||||
|
| | | the window. This is useful for some |
|
||||||
|
| | | applications that incorrectly get |
|
||||||
|
| | | more than one application icon. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| KeepOnTop | boolean | Always keep the window over other |
|
||||||
|
| | | normal windows. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| Omnipresent | boolean | Make the window be present in all |
|
||||||
|
| | | workspaces, AKA sticky window. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| | | |
|
||||||
|
| SkipWindowList | boolean | Do not list the window in the |
|
||||||
|
| | | `window list menu`_ |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| | | |
|
||||||
|
| KeepInsideScreen | boolean | Always keep the window inside the |
|
||||||
|
| | | visible are of the screen. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| Unfocusable | boolean | Do not let the window be focused. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
| StartWorkspace | Workspace number | Make the window always be initially |
|
||||||
|
| | or name | shown in the indicated workspace. |
|
||||||
|
+---------------------+------------------+-------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
Applications Menu
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
The applications menu (AKA: Root Menu) can be defined in one of two distinct
|
||||||
|
ways:
|
||||||
|
|
||||||
|
- In the form of an array in property list format, in
|
||||||
|
$(HOME)/GNUstep/Defaults/WMRootMenu
|
||||||
|
- In the form of a text file, whose location is present in
|
||||||
|
$(HOME)/GNUstep/Defaults/WMRootMenu
|
||||||
|
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
.. [1] You can get the values for these information by running the ``xprop``
|
||||||
|
utility on the desired window. When you do that, it will show the following
|
||||||
|
line, among other things:
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
WM_CLASS(STRING) = "xterm", "XTerm"
|
||||||
|
|
||||||
|
The first string (xterm) is the window instance name and the second (XTerm)
|
||||||
|
the window class name.
|
||||||
|
|
||||||
|
|
||||||
|
.. _window list menu: chap3.html#3.12
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: User Guide - Tips
|
|
||||||
---
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h2>Chapter 5</h2>
|
|
||||||
|
|
||||||
<h1>Tips</h1><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>If the size of a window gets so large that it doesn't fit on the screen and you can't manipulate it, you can
|
|
||||||
simply hold the Meta key while dragging the window in the client area. This way you can move the window up or down
|
|
||||||
and resize it, if you want.<br />
|
|
||||||
<br /></li>
|
|
||||||
|
|
||||||
<li>If you want windows to be able to cover the dock, you can make the dock lowerable by double clicking the first
|
|
||||||
dock icon while holding the Meta key. Then, you can raise and lower the dock through the first icon, just like you do
|
|
||||||
with windows.<br />
|
|
||||||
<br /></li>
|
|
||||||
|
|
||||||
<li>If you want windows to be able to cover menus, you can make them lowerable just like the dock by double clicking
|
|
||||||
the titlebar with the Meta key pressed.</li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
20
docs/chap5.rst
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: User Guide - Tips
|
||||||
|
---
|
||||||
|
|
||||||
|
Tips
|
||||||
|
====
|
||||||
|
|
||||||
|
- If the size of a window gets so large that it doesn't fit on the screen and
|
||||||
|
you can't manipulate it, you can simply hold the Meta key while dragging the
|
||||||
|
window in the client area. This way you can move the window up or down and
|
||||||
|
resize it, if you want.
|
||||||
|
|
||||||
|
- If you want windows to be able to cover the dock, you can make the dock
|
||||||
|
lowerable by double clicking the first dock icon while holding the Meta key.
|
||||||
|
Then, you can raise and lower the dock through the first icon, just like you
|
||||||
|
do with windows.
|
||||||
|
|
||||||
|
- If you want windows to be able to cover menus, you can make them lowerable
|
||||||
|
just like the dock by double clicking the titlebar with the Meta key pressed.
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: User Guide - Glossary
|
|
||||||
---
|
|
||||||
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h1>Glossary</h1>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>[drag] to click in an object with the mouse and move the mouse while holding the mouse button.</li>
|
|
||||||
|
|
||||||
<li>[miniaturize] (iconify, minimize) to temporarily put a window aside, replacing the window with a miniature
|
|
||||||
representation of it.</li>
|
|
||||||
|
|
||||||
<li>[Meta key] depending on the system and keyboard types, this can mean different keys. Under Linux, it is usually
|
|
||||||
the Alt or Alternate key.</li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
16
docs/chap6.rst
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: User Guide - Glossary
|
||||||
|
---
|
||||||
|
|
||||||
|
Glossary
|
||||||
|
========
|
||||||
|
|
||||||
|
- [drag] to click in an object with the mouse and move the mouse while holding
|
||||||
|
the mouse button.
|
||||||
|
|
||||||
|
- [miniaturize] (iconify, minimize) to temporarily put a window aside,
|
||||||
|
replacing the window with a miniature representation of it.
|
||||||
|
|
||||||
|
- [Meta key] depending on the system and keyboard types, this can mean
|
||||||
|
different keys. Under Linux, it is usually the Alt or Alternate key.
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: User Guide - Credits
|
|
||||||
---
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h2>Chapter 7</h2>
|
|
||||||
|
|
||||||
<h1>Credits</h1><br />
|
|
||||||
<br />
|
|
||||||
The original TeX version of this document was written by Afredo K. Kojima.<br />
|
|
||||||
<br />
|
|
||||||
The HTML conversion was done primarily by Jeremy Crabtree, with assistance from Dan Olav Mikael Hultgren
|
|
||||||
Gudmundsson.<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
12
docs/chap7.rst
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: User Guide - Credits
|
||||||
|
---
|
||||||
|
|
||||||
|
Credits
|
||||||
|
=======
|
||||||
|
|
||||||
|
The original TeX version of this document was written by Afredo K. Kojima.
|
||||||
|
|
||||||
|
The HTML conversion was done primarily by Jeremy Crabtree, with assistance from
|
||||||
|
Dan Olav Mikael Hultgren Gudmundsson.
|
||||||
@@ -1,140 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: User Guide
|
|
||||||
---
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h1><a href="chap1.html">Chapter 1: Introduction</a></h1>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><a href="chap1.html#1.1">1.1 What is a window manager?</a></li>
|
|
||||||
</ul><br />
|
|
||||||
|
|
||||||
<h1><a href="chap2.html">Chapter 2: Windows</a></h1>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><a href="chap2.html#2.1">2.1 Anatomy of a window</a></li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="chap2.html#2.2">2.2 Working with windows</a>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><a href="chap2.html#2.2.1">2.2.1 Focusing a window</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.2.2">2.2.2 Reordering Overlapping
|
|
||||||
Windows</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.2.3">2.2.3 Moving a Window</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.2.4">2.2.4 Resizing a Window</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.2.5">2.2.5 Miniaturizing a
|
|
||||||
Window</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.2.6">2.2.6 Shading a Window</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.2.7">2.2.7 Closing a Window</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.2.8">2.2.8 Maximizing a
|
|
||||||
Window</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.2.9">2.2.9 The Window Commands
|
|
||||||
Menu</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="chap2.html#2.3">2.3 The Window Attributes Inspector</a>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><a href="chap2.html#2.3.1">2.3.1 Window
|
|
||||||
Specification</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.3.2">2.3.2 Window Attributes</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.3.3">2.3.3 Advanced Options</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.3.4">2.3.4 Icon and Initial
|
|
||||||
Workspace</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap2.html#2.3.5">2.3.5 Application
|
|
||||||
Specific</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul><br />
|
|
||||||
|
|
||||||
<h1><a href="chap3.html">Chapter 3: The Workspace</a></h1>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li>
|
|
||||||
<a href="chap3.html#3.1">3.1 Working with Menus</a>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><a href="chap3.html#3.1.1">3.1.1 The Root Window
|
|
||||||
Menu</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap3.html#3.1.2">3.1.2 The Window List
|
|
||||||
Menu</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="chap3.html#3.2">3.2 Working with Applications</a>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><a href="chap3.html#3.2.1">3.2.1 Hiding An
|
|
||||||
Application</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap3.html#3.2.2">3.2.2 The Application Icon
|
|
||||||
Menu</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap3.html#3.2.3">3.2.3 The Application
|
|
||||||
Dock</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a href="chap3.html#3.3">3.3 Working with Workspaces</a>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><a href="chap3.html#3.3.1">3.3.1 The Workspace Menu</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap3.html#3.3.2">3.3.2 The Workspace Clip</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul><br />
|
|
||||||
|
|
||||||
<h1><a href="chap4.html">Chapter 4: Configuring WindowMaker</a></h1>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li>
|
|
||||||
<a href="chap4.html#4.1">4.1 The Defualts Database System</a>
|
|
||||||
|
|
||||||
<ul type="disc">
|
|
||||||
<li><a href="chap4.html#4.1.1">4.1.1 Propety List File
|
|
||||||
Format</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap4.html#4.1.2">4.1.2 Value Types</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap4.html#4.1.3">4.1.3 Preferences</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap4.html#4.1.4">4.1.4 Window Attributes</a></li>
|
|
||||||
|
|
||||||
<li><a href="chap4.html#4.1.5">4.1.5 Applications Menu</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h1><a href="chap5.html">Chapter 5: Tips</a></h1><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h1><a href="chap6.html">Chapter 6: Glossary</a></h1><br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h1><a href="chap7.html">Chapter 7: Credits</a></h1><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
12
docs/guide_toc.rst
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: User Guide
|
||||||
|
---
|
||||||
|
|
||||||
|
- `Chapter 1: Introduction <chap1.html>`_
|
||||||
|
- `Chapter 2: Windows <chap2.html>`_
|
||||||
|
- `Chapter 3: The Workspace <chap3.html>`_
|
||||||
|
- `Chapter 4: Configuring WindowMaker <chap4.html>`_
|
||||||
|
- `Chapter 5: Tips <chap5.html>`_
|
||||||
|
- `Chapter 6: Glossary <chap6.html>`_
|
||||||
|
- `Chapter 7: Credits <chap7.html>`_
|
||||||
@@ -1,153 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Guided Tour - Backgrounds and Themes
|
|
||||||
---
|
|
||||||
|
|
||||||
<center>Backgrounds and Themes</center>
|
|
||||||
</strong></h1>
|
|
||||||
|
|
||||||
<strong></strong>
|
|
||||||
<center><a href="index.html">Back to index</a></center>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li><a href="back.html#backg" name="backg">Backgrounds</a></li>
|
|
||||||
<li><a href="back.html#style" name="style"></a><a href="#style">Styles</a></li>
|
|
||||||
<li><a href="back.html#them" name="them">Themes</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
For the purposes of this guided tour, only those appearance options that
|
|
||||||
are built-in to Window Maker will be considered. Crafting custom styles
|
|
||||||
and themes is not terribly difficult, nor do you need any special
|
|
||||||
knowledge of programming languages or other specialized skills, but
|
|
||||||
this is outside the intended scope of the guided tour.<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
The appearance of the Window Maker GUI can easily be customized from
|
|
||||||
the applications menu item "Appearance."<br>
|
|
||||||
|
|
||||||
Themes, styles, icon sets, and backgrounds can be selected as soon as
|
|
||||||
they are installed in the right directory.
|
|
||||||
<br>
|
|
||||||
|
|
||||||
Themes should be installed in the directory
|
|
||||||
~/GNUstep/Library/WindowMaker/Themes/<br>
|
|
||||||
|
|
||||||
Styles should be installed in the directory
|
|
||||||
~/GNUstep/Library/WindowMaker/Styles/<br>
|
|
||||||
|
|
||||||
Backgrounds should be installed in the directory
|
|
||||||
~/GNUstep/Library/WindowMaker/Backgrounds/<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
If you are working within a freshly-installed instance of Window Maker,
|
|
||||||
your Linux distribution probably provided some default themes, styles
|
|
||||||
and backgrounds. Rarely, a distribution
|
|
||||||
provides no additional themes, styles or backgrounds - expecting users
|
|
||||||
to provide these on their own.<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
Here is the "Appearance" menu and some of its associated sub-menus,
|
|
||||||
including themes, styles and backgrounds:<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<div style="text-align: center;"><img style="width: 714px; height: 636px;" alt="Appearance menu items" src="images/appearancemenu.png"><br>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
In the screenshot above, most of the styles are default to the Debian
|
|
||||||
GNU/Linux distribution, while most of the themes were user-installed.
|
|
||||||
Many themes are available for download on the internet. <br>
|
|
||||||
|
|
||||||
<h2><a name="backg">Backgrounds</a></h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p>Backgrounds may be system-generated solid or gradient colors, or
|
|
||||||
they may be images from user or distibution-supplied image files. The
|
|
||||||
easiest way to change a system-generated background color or color
|
|
||||||
gradient is to select one from the "Appearance -> Background -> <span style="color: rgb(255, 204, 102);">< Solid <span style="color: white;">or</span> Gradient ></span>" menu. In most default configurations there will be six to eight selections in each category.</p>
|
|
||||||
<p>Likewise, the easiest way to change to a background image is to
|
|
||||||
select one from the "Appearance -> Background -> Images" menu. If
|
|
||||||
you wish to install your own images for use as backgrounds, place the
|
|
||||||
image file in your ~/GNUstep/Library/WindowMaker/Backgrounds/ directory
|
|
||||||
and they will be available from the menu immediately.</p>
|
|
||||||
|
|
||||||
<p> </p>
|
|
||||||
|
|
||||||
<h2><a name="Styles"></a>Styles</h2>
|
|
||||||
|
|
||||||
A style defines the look of the key components of the Window Maker
|
|
||||||
desktop. These components include the window titlebar and resizebar, the menu title and text field, and the icon background.<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
The characteristics defined in a style (or theme) are the color
|
|
||||||
and
|
|
||||||
"texture" of key GUI elements. Texture in this context means using
|
|
||||||
multiple colors in
|
|
||||||
various color gradients - you are not limited to solid colors
|
|
||||||
only. <br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
The easiest method for changing the style is to select a style from the
|
|
||||||
"Appearance -> Style" menu.<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
A style may also be created using the <span style="font-style: italic;">Appearance
|
|
||||||
Preferences</span> tool in <span style="font-style: italic;">WPrefs.app</span>.
|
|
||||||
From this tool, you may configure the color and texture of window
|
|
||||||
elements (titlebars, resizebars), menu elements (menu titlebar, menu
|
|
||||||
item text colors, menu "style") and the color and texture of icon
|
|
||||||
backgrounds. The location of titlebar text and the font and text color
|
|
||||||
for window and menu text may also be configured here.<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<center><img style="width: 520px; height: 412px;" alt="Appearance preferences tool" src="images/prefs12.png"></center>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
More information on creating a style "from scratch" may be found <a href="{{ site.baseurl }}/docs/chap4.html">in the Window Maker User's Guide.</a> (Scroll down to the section on "Appearance Options.") <br>
|
|
||||||
<br>
|
|
||||||
A step-by-step guide to crafting a custom style is available <a href="http://windowmakerandi.blogspot.com/search?updated-min=2011-01-01T00:00:00-06:00&updated-max=2012-01-01T00:00:00-06:00&max-results=4" target="_blank">HERE</a>.<br>
|
|
||||||
|
|
||||||
<h2><a name="them">Themes</a></h2>
|
|
||||||
|
|
||||||
<p>In its most basic form, a theme is simply a style that also
|
|
||||||
includes a background. Some Linux distributions provide one or more
|
|
||||||
default themes for use system-wide. You may
|
|
||||||
install your own themes in the ~/GNUstep/Library/WindowMaker/Themes/
|
|
||||||
directory. Themes installed in the correct directory will be
|
|
||||||
available for selection in the "Appearance -> Themes" menu.
|
|
||||||
Selecting Themes from the Appearance menu runs the <span style="font-style: italic;">setstyle</span> program to install the
|
|
||||||
theme and record it in the <span style="font-style: italic;">~/GNUstep/Defaults/WindowMaker</span>
|
|
||||||
file.</p>
|
|
||||||
Two sites
|
|
||||||
providing preconfigured themes are <a href="http://lonelymachines.org/windowmaker-themes/" target="_blank">HERE</a>
|
|
||||||
and <a href="http://www.jessanderson.org/wmthemes/" target="_blank">HERE</a>.
|
|
||||||
An internet search for "Window Maker themes" will generate additional
|
|
||||||
results, and you should also check your Linux distribution's
|
|
||||||
repositories - some provide themes for installation using your
|
|
||||||
distribution's package management system.
|
|
||||||
<p>Themes may include images in png, jpg, xpm, and other supported image file
|
|
||||||
formats for key elements of the GUI such as titlebars, icon
|
|
||||||
backgrounds, and the workspace background. Themes that include images
|
|
||||||
cannot be stored as a single text file, and therefore must be stored in a
|
|
||||||
directory. A theme directory must contain all of the image files needed
|
|
||||||
for the theme along with a file named "style." The style file in a
|
|
||||||
theme directory will specify all of the GUI elements including any
|
|
||||||
image files used for those elements in lieu of rgb color
|
|
||||||
specifications. A theme directory must use the suffix ".themed" after
|
|
||||||
the theme name. <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p> </p>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back to index</a></center>
|
|
||||||
128
docs/guidedtour/back.rst
Normal file
@@ -0,0 +1,128 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Guided Tour - Backgrounds and Themes
|
||||||
|
---
|
||||||
|
.. TODO: check for the dead links
|
||||||
|
|
||||||
|
Backgrounds and Themes
|
||||||
|
======================
|
||||||
|
|
||||||
|
.. contents::
|
||||||
|
:backlinks: none
|
||||||
|
|
||||||
|
For the purposes of this guided tour, only those appearance options that are
|
||||||
|
built-in to Window Maker will be considered. Crafting custom styles and themes
|
||||||
|
is not terribly difficult, nor do you need any special knowledge of programming
|
||||||
|
languages or other specialized skills, but this is outside the intended scope
|
||||||
|
of the guided tour.
|
||||||
|
|
||||||
|
The appearance of the Window Maker GUI can easily be customized from the
|
||||||
|
applications menu item "Appearance".
|
||||||
|
|
||||||
|
Themes, styles, icon sets, and backgrounds can be selected as soon as they are
|
||||||
|
installed in the right directory.
|
||||||
|
|
||||||
|
Themes should be installed in the directory
|
||||||
|
``~/GNUstep/Library/WindowMaker/Themes/``
|
||||||
|
|
||||||
|
Styles should be installed in the directory
|
||||||
|
``~/GNUstep/Library/WindowMaker/Styles/``
|
||||||
|
|
||||||
|
Backgrounds should be installed in the directory
|
||||||
|
``~/GNUstep/Library/WindowMaker/Backgrounds/``
|
||||||
|
|
||||||
|
If you are working within a freshly-installed instance of Window Maker, your
|
||||||
|
Linux distribution probably provided some default themes, styles and
|
||||||
|
backgrounds. Rarely, a distribution provides no additional themes, styles or
|
||||||
|
backgrounds - expecting users to provide these on their own.
|
||||||
|
|
||||||
|
Here is the "Appearance" menu and some of its associated sub-menus,
|
||||||
|
including themes, styles and backgrounds:
|
||||||
|
|
||||||
|
.. figure:: images/appearancemenu.png
|
||||||
|
:alt: Appearance menu items
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
In the screenshot above, most of the styles are default to the Debian GNU/Linux
|
||||||
|
distribution, while most of the themes were user-installed. Many themes are
|
||||||
|
available for download on the internet.
|
||||||
|
|
||||||
|
Backgrounds
|
||||||
|
-----------
|
||||||
|
|
||||||
|
Backgrounds may be system-generated solid or gradient colors, or they may be
|
||||||
|
images from user or distribution-supplied image files. The easiest way to
|
||||||
|
change a system-generated background color or color gradient is to select one
|
||||||
|
from the "Appearance -> Background -> <Solid | Gradient>" menu. In most default
|
||||||
|
configurations there will be six to eight selections in each category.
|
||||||
|
|
||||||
|
Likewise, the easiest way to change to a background image is to select one from
|
||||||
|
the "Appearance -> Background -> Images" menu. If you wish to install
|
||||||
|
your own images for use as backgrounds, place the image file in your
|
||||||
|
``~/GNUstep/Library/WindowMaker/Backgrounds/`` directory and they will be
|
||||||
|
available from the menu immediately.
|
||||||
|
|
||||||
|
Styles
|
||||||
|
------
|
||||||
|
|
||||||
|
A style defines the look of the key components of the Window Maker desktop.
|
||||||
|
These components include the window titlebar and resizebar, the menu title and
|
||||||
|
text field, and the icon background.
|
||||||
|
|
||||||
|
The characteristics defined in a style (or theme) are the color and "texture"
|
||||||
|
of key GUI elements. Texture in this context means using multiple colors in
|
||||||
|
various color gradients - you are not limited to solid colors only.
|
||||||
|
|
||||||
|
The easiest method for changing the style is to select a style from the
|
||||||
|
"Appearance -> Style" menu.
|
||||||
|
|
||||||
|
A style may also be created using the *Appearance Preferences* tool in
|
||||||
|
*WPrefs.app*. From this tool, you may configure the color and texture of
|
||||||
|
window elements (titlebars, resizebars), menu elements (menu titlebar, menu
|
||||||
|
item text colors, menu "style") and the color and texture of icon backgrounds.
|
||||||
|
The location of titlebar text and the font and text color for window and menu
|
||||||
|
text may also be configured here.
|
||||||
|
|
||||||
|
|
||||||
|
.. figure:: images/prefs13.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Appearance preferences tool
|
||||||
|
|
||||||
|
Appearance preferences tool
|
||||||
|
|
||||||
|
More information on creating a style "from scratch" may be found `in the Window
|
||||||
|
Maker User's Guide <{{ site.baseurl }}/docs/chap4.html>`_. (Scroll down to the
|
||||||
|
section on "Appearance Options.")
|
||||||
|
|
||||||
|
A step-by-step guide to crafting a custom style is available `HERE
|
||||||
|
<http://windowmakerandi.blogspot.com/search?updated-min=2011-01-01T00:00:00-06:00&updated-max=2012-01-01T00:00:00-06:00&max-results=4
|
||||||
|
target="_blank">`__.
|
||||||
|
|
||||||
|
Themes
|
||||||
|
------
|
||||||
|
|
||||||
|
In its most basic form, a theme is simply a style that also includes a
|
||||||
|
background. Some Linux distributions provide one or more default themes for use
|
||||||
|
system-wide. You may install your own themes in the
|
||||||
|
``~/GNUstep/Library/WindowMaker/Themes/`` directory. Themes installed in the
|
||||||
|
correct directory will be available for selection in the "Appearance ->
|
||||||
|
Themes" menu. Selecting Themes from the Appearance menu runs the *setstyle*
|
||||||
|
program to install the theme and record it in the
|
||||||
|
``~/GNUstep/Defaults/WindowMaker`` file.
|
||||||
|
|
||||||
|
Two sites providing preconfigured themes are `HERE
|
||||||
|
<http://lonelymachines.org/windowmaker-themes/>`__ and `HERE
|
||||||
|
<http://www.jessanderson.org/wmthemes/>`__. An internet search for "Window
|
||||||
|
Maker themes" will generate additional results, and you should also check your
|
||||||
|
Linux distribution's repositories - some provide themes for installation using
|
||||||
|
your distribution's package management system.
|
||||||
|
|
||||||
|
Themes may include images in png, jpg, xpm, and other supported image file
|
||||||
|
formats for key elements of the GUI such as titlebars, icon backgrounds, and
|
||||||
|
the workspace background. Themes that include images cannot be stored as a
|
||||||
|
single text file, and therefore must be stored in a directory. A theme
|
||||||
|
directory must contain all of the image files needed for the theme along with a
|
||||||
|
file named "style." The style file in a theme directory will specify all of the
|
||||||
|
GUI elements including any image files used for those elements in lieu of rgb
|
||||||
|
color specifications. A theme directory must use the suffix ".themed" after the
|
||||||
|
theme name.
|
||||||
@@ -1,148 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Guided Tour - Clip
|
|
||||||
---
|
|
||||||
|
|
||||||
<h1><strong>
|
|
||||||
<center>CLIP</center>
|
|
||||||
</strong></h1>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back to index</a><br>
|
|
||||||
</center>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>By default, The clip is represented by the icon on the top left of
|
|
||||||
the screen containing a paperclip image.</p>
|
|
||||||
|
|
||||||
<p style="text-align: center;"><img style="width: 64px; height: 64px;" alt="Clip icon" src="images/clip.png"><br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>The clip's primary function is to serve as a workspace-specific
|
|
||||||
dock. In
|
|
||||||
other words, applications may be attached to the clip just as they are
|
|
||||||
to the dock, but the clip and its associated applications are specific
|
|
||||||
to each individual workspace - not available on all workspaces as they
|
|
||||||
are on the dock.</p>
|
|
||||||
|
|
||||||
<p>The clip's secondary function is to act as a "pager" - a utility for
|
|
||||||
changing from one workspace to another (paging). The arrows at the top
|
|
||||||
right and bottom left corners of the clip icon allow you to switch from
|
|
||||||
one workspace to the next workspace (top right) or previous workspace
|
|
||||||
(bottom left).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>The current workspace name (if any) and number are displayed on the
|
|
||||||
clip. <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>The clip also has a number of menu-driven features.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h2>Clip Menu</h2>
|
|
||||||
|
|
||||||
<p>Right-clicking the clip displays a menu. </p>
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<p><img src="images/clipm.jpg" alt="clip menu"> </p>
|
|
||||||
</center>
|
|
||||||
|
|
||||||
<h2>Clip Options<br>
|
|
||||||
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
The first menu item allows you to select clip options. The following
|
|
||||||
options are available:<br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li><span style="font-style: italic;">Keep on top</span> - do not
|
|
||||||
allow windows to cover the clip. <br>
|
|
||||||
</li>
|
|
||||||
<li><span style="font-style: italic;">Collapsed</span> - icons
|
|
||||||
attached to the clip are hidden until you left-click the clip, which
|
|
||||||
unhides them.</li>
|
|
||||||
<li><span style="font-style: italic;">Autocollapse</span> - same as
|
|
||||||
the previous option, except that mouseing over the clip unhides
|
|
||||||
application icons.</li>
|
|
||||||
<li><span style="font-style: italic;">Autoraise</span> - clicking an
|
|
||||||
icon representing a
|
|
||||||
window hidden under a larger window brings that window to the front.</li>
|
|
||||||
<li><span style="font-style: italic;">Autoattract icons</span>
|
|
||||||
- selecting this option attracts the icon of any application launched
|
|
||||||
on the current workspace. Closing the application removes the icon from
|
|
||||||
the clip.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Rename Workspace</h2>
|
|
||||||
|
|
||||||
|
|
||||||
This item gives you to ability to name (or rename) the current
|
|
||||||
workspace. <br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
Some users tend to group certain applications by workspace
|
|
||||||
and like to name the workspace to indicate the nature of the
|
|
||||||
applications on the clip. For example, a user might have a browser, an
|
|
||||||
IRC client, and a file transfer application clipped on a workspace, and
|
|
||||||
might name that workspace "internet" to indicate the workspace's
|
|
||||||
primary function. The user might have a seperate workspace with a
|
|
||||||
vector graphics application, an image manipulation application, and an
|
|
||||||
image viewer on the clip, and might name that workspace "graphics."<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<h2>Other Options</h2>
|
|
||||||
|
|
||||||
|
|
||||||
Right-clicking a clipped application's icon gives options specific to
|
|
||||||
that application. <br>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>You may make the application's icon <span style="font-style: italic;">omnipresent</span>
|
|
||||||
(clipped on all workspaces). <br>
|
|
||||||
</li>
|
|
||||||
<li>You may <span style="font-style: italic;">select</span> one or all clipped icons. <br>
|
|
||||||
</li>
|
|
||||||
<li>You may <span style="font-style: italic;">move</span>
|
|
||||||
one or all icons to a
|
|
||||||
different workspace. <br>
|
|
||||||
</li>
|
|
||||||
<li>You may <span style="font-style: italic;">remove</span> the icon.</li>
|
|
||||||
<li>You may instruct Window Maker to have all icons "<span style="font-style: italic;">attracted</span>" to
|
|
||||||
the clip as soon as each application is launched, rather than placing them intially in the defined location on the display. </li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
The remaining clip menu items are similar to those of the <a href="dock.html#conf" target="_blank">dock
|
|
||||||
application icon menu</a>.
|
|
||||||
As with the dock, clipped applications may be launched, hidden, or
|
|
||||||
killed and their settings (icon used, application launch
|
|
||||||
path/arguments, middle-click launch) may be
|
|
||||||
modified. <br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
From version 0.80.0 on, the clip can "steal" appicons. This feature has
|
|
||||||
nothing to
|
|
||||||
do with autoattracting icons. When you start an application from somewhere
|
|
||||||
other than either the clip or the dock (i.e., from the menu or a
|
|
||||||
terminal), and the application is already either docked or clipped, a
|
|
||||||
new application icon does not appear at the bottom
|
|
||||||
of your
|
|
||||||
screen. The icon that is already docked or clipped "steals" the icon
|
|
||||||
function. As a
|
|
||||||
result, the icon for the newly-launched application is the icon already on
|
|
||||||
the
|
|
||||||
clip or
|
|
||||||
the dock. <br>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back to index</a></center>
|
|
||||||
102
docs/guidedtour/clip.rst
Normal file
@@ -0,0 +1,102 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Guided Tour - Clip
|
||||||
|
---
|
||||||
|
|
||||||
|
CLIP
|
||||||
|
====
|
||||||
|
|
||||||
|
By default, The clip is represented by the icon on the top left of the screen
|
||||||
|
containing a paperclip image.
|
||||||
|
|
||||||
|
.. figure:: images/clip.png
|
||||||
|
:alt: Clip icon
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
The clip's primary function is to serve as a workspace-specific dock. In other
|
||||||
|
words, applications may be attached to the clip just as they are to the dock,
|
||||||
|
but the clip and its associated applications are specific to each individual
|
||||||
|
workspace - not available on all workspaces as they are on the dock.
|
||||||
|
|
||||||
|
The clip's secondary function is to act as a "pager" - a utility for changing
|
||||||
|
from one workspace to another (paging). The arrows at the top right and bottom
|
||||||
|
left corners of the clip icon allow you to switch from one workspace to the
|
||||||
|
next workspace (top right) or previous workspace (bottom left).
|
||||||
|
|
||||||
|
The current workspace name (if any) and number are displayed on the
|
||||||
|
clip.
|
||||||
|
|
||||||
|
The clip also has a number of menu-driven features.
|
||||||
|
|
||||||
|
Clip Menu
|
||||||
|
---------
|
||||||
|
|
||||||
|
Right-clicking the clip displays a menu.
|
||||||
|
|
||||||
|
.. figure:: images/menu_clip.png
|
||||||
|
:alt: Clip menu
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
Clip menu
|
||||||
|
|
||||||
|
Clip Options
|
||||||
|
------------
|
||||||
|
|
||||||
|
The first menu item allows you to select clip options. The following options
|
||||||
|
are available:
|
||||||
|
|
||||||
|
- *Keep on top* - do not allow windows to cover the clip.
|
||||||
|
- *Collapsed* - icons attached to the clip are hidden until you left-click the
|
||||||
|
clip, which unhides them.
|
||||||
|
- *Autocollapse* - same as the previous option, except that mouseing over the
|
||||||
|
clip unhides application icons.
|
||||||
|
- *Autoraise* - clicking an icon representing a window hidden under a larger
|
||||||
|
window brings that window to the front.
|
||||||
|
- *Autoattract icons* - selecting this option attracts the icon of any
|
||||||
|
application launched on the current workspace. Closing the application
|
||||||
|
removes the icon from the clip.
|
||||||
|
|
||||||
|
Rename Workspace
|
||||||
|
----------------
|
||||||
|
|
||||||
|
This item gives you to ability to name (or rename) the current workspace.
|
||||||
|
|
||||||
|
Some users tend to group certain applications by workspace and like to name the
|
||||||
|
workspace to indicate the nature of the applications on the clip. For example,
|
||||||
|
a user might have a browser, an IRC client, and a file transfer application
|
||||||
|
clipped on a workspace, and might name that workspace "internet" to indicate
|
||||||
|
the workspace's primary function. The user might have a seperate workspace with
|
||||||
|
a vector graphics application, an image manipulation application, and an image
|
||||||
|
viewer on the clip, and might name that workspace "graphics."
|
||||||
|
|
||||||
|
Other Options
|
||||||
|
-------------
|
||||||
|
|
||||||
|
Right-clicking a clipped application's icon gives options specific to that
|
||||||
|
application.
|
||||||
|
|
||||||
|
- You may make the application's icon *omnipresent* (clipped on all
|
||||||
|
workspaces).
|
||||||
|
|
||||||
|
- You may *select* one or all clipped icons.
|
||||||
|
|
||||||
|
- You may *move* one or all icons to a different workspace.
|
||||||
|
|
||||||
|
- You may *remove* the icon.
|
||||||
|
|
||||||
|
- You may instruct Window Maker to have all icons *attracted* to the clip as
|
||||||
|
soon as each application is launched, rather than placing them initially in
|
||||||
|
the defined location on the display.
|
||||||
|
|
||||||
|
The remaining clip menu items are similar to those of the `Dock application
|
||||||
|
icon menu <dock.html#conf>`_. As with the dock, clipped applications may be
|
||||||
|
launched, hidden, or killed and their settings (icon used, application launch
|
||||||
|
path/arguments, middle-click launch) may be modified.
|
||||||
|
|
||||||
|
From version 0.80.0 on, the clip can "steal" appicons. This feature has nothing
|
||||||
|
to do with autoattracting icons. When you start an application from somewhere
|
||||||
|
other than either the clip or the dock (i.e., from the menu or a terminal), and
|
||||||
|
the application is already either docked or clipped, a new application icon
|
||||||
|
does not appear at the bottom of your screen. The icon that is already docked
|
||||||
|
or clipped "steals" the icon function. As a result, the icon for the
|
||||||
|
newly-launched application is the icon already on the clip or the dock.
|
||||||
@@ -1,180 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Guided Tour - Dock
|
|
||||||
---
|
|
||||||
|
|
||||||
<h1><strong>
|
|
||||||
<center>DOCK</center>
|
|
||||||
</strong></h1>
|
|
||||||
|
|
||||||
<h2><strong></strong></h2>
|
|
||||||
|
|
||||||
<strong></strong>
|
|
||||||
<center><a href="index.html">Back to index</a></center>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li><a href="dock.html#what" name="what">Application dock</a></li>
|
|
||||||
<li><a href="dock.html#start" name="start">Starting an application</a></li>
|
|
||||||
<li><a href="dock.html#cust" name="cust">Customizing</a></li>
|
|
||||||
<li><a href="dock.html#conf" name="conf">Configuring</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a name="what">Application dock</a></h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p>The dock is the column of icons located by default on the right
|
|
||||||
side of the screen.</p>
|
|
||||||
|
|
||||||
<p>Any application can be attached to the dock. To do this, open an
|
|
||||||
application then simply left-click-and-drag the application's icon to
|
|
||||||
the last position on the dock. The dock will "attract" the icon and it
|
|
||||||
will remain on the dock until removed by the user (left-click-and-drag
|
|
||||||
the icon off the dock - it will disappear.) If you have saved your
|
|
||||||
Window Maker session prior to logout (or set Window Maker to autosave
|
|
||||||
your session upon logout) any icons you docked will automatically
|
|
||||||
reappear at your next - and each subsequent - session.<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>The dock has it's own menu for user configuration.<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>The dock can be configured to remain on top of maximized windows. To
|
|
||||||
do this, right-click on any docked icon then select "Keep on top" from
|
|
||||||
the application icon menu. This will keep the entire dock visible
|
|
||||||
(maximized windows will not be allowed to cover the dock). To allow the
|
|
||||||
dock to be covered, uncheck the "Keep on top" item in the application
|
|
||||||
icon menu.<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>The WMDock icon (by default, with the GNUstep logo) can be dragged
|
|
||||||
sideways
|
|
||||||
to switch the
|
|
||||||
the entire dock from one side of the display to the other.<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>Dragging the WMDock icon downward will move the dock off the display
|
|
||||||
with the
|
|
||||||
exception of the WMDock icon itself, which will remain visible. To
|
|
||||||
restore dock visibility, left-click-and-drag the dock back on screen.<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h2><a name="start">Starting an application</a></h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p>Double-clicking the icon of a docked application starts the
|
|
||||||
application. <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>An application that has not been launched normally has an elipsis
|
|
||||||
(three dots) in the bottom-left-corner of the icon and appears in full
|
|
||||||
color as shown below. <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p style="text-align: center;"><img style="width: 62px; height: 62px;" alt="Unlaunched application icon" src="images/iconwithelipsis.png"><br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>When the application is running, the elipsis disappears from the
|
|
||||||
bottom-left-corner of the icon and the icon becomes "greyed out,"
|
|
||||||
giving a visual cue that the application is already open. <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p style="text-align: center;"><img style="width: 62px; height: 62px;" alt="Launched application icon" src="images/greyedouticon.png"><br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>A docked icon that continues to show an elipsis and remains "full
|
|
||||||
color" even after an instance of the
|
|
||||||
application is running indicates that the application's settings have
|
|
||||||
been modified to allow multiple launches from one docked icon. To do
|
|
||||||
this you must open the application and modify the
|
|
||||||
"application specific" settings in the <a href="win.html#menu">"commands
|
|
||||||
menu"</a> of the application to allow
|
|
||||||
"shared application icons."</p>
|
|
||||||
|
|
||||||
<p>Using the "launch" command in the "application icon menu" for the
|
|
||||||
icon is another way to start an application from the dock.<br>
|
|
||||||
<br>
|
|
||||||
From version 0.80.0 on, the dock can "steal" appicons. This feature has
|
|
||||||
nothing to
|
|
||||||
do with Autoattract Icons. When you start an application from somewhere
|
|
||||||
else
|
|
||||||
than either the clip or the dock (menu or terminal), and the appicon
|
|
||||||
exists in
|
|
||||||
one of them (clip or dock), this appicon doesn't appear at the bottom
|
|
||||||
of your
|
|
||||||
screen. The appicon existing in the clip or the dock "stole" it. As a
|
|
||||||
result, the
|
|
||||||
appicon is the same as the one used to start the application from the
|
|
||||||
clip or
|
|
||||||
the dock. </p>
|
|
||||||
|
|
||||||
<p> </p>
|
|
||||||
|
|
||||||
<h2><a name="cust">Customizing</a></h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p>Left-clicking and dragging an application icon to the dock adds this
|
|
||||||
application to the dock. Obviously, this means the application is
|
|
||||||
running! <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p><span style="font-style: italic;">Miniwindows</span> (windows of
|
|
||||||
minimized applications) cannot be docked. The small titlebar on the
|
|
||||||
miniwindow differentiates it from an application's icon. <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>Dragging an icon off the dock removes the docked application. <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p> </p>
|
|
||||||
|
|
||||||
<h2><a name="conf">Configuring</a></h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p>There is a dock menu for each icon. Right-clicking the icon displays
|
|
||||||
the "application icon menu." Select the "Settings..." option to
|
|
||||||
configure the application. </p>
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<p><a href="images/docks.jpg"><img src="images/docks.jpg" alt="dock"></a></p>
|
|
||||||
</center>
|
|
||||||
|
|
||||||
<p>The application's <span style="font-style: italic;">path</span> and
|
|
||||||
its arguments, the command for middle-click launch, and the icon
|
|
||||||
employed can
|
|
||||||
be changed in this panel.<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>Shell commands such as redirection cannot be used in the command
|
|
||||||
field. <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>The desired icon must be in one of the directories displayed
|
|
||||||
in the panel while browsing. New directories can be added from the <a href="prefs.html#search">Search path preferences</a><br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p> A checkbox allows you to start the application when Window Maker is
|
|
||||||
first started. (Note: <span style="font-style: italic;">You want to be
|
|
||||||
careful with this</span>. If you have, for example, your terminal
|
|
||||||
emulator, your file manager, and your browser set to start when Window
|
|
||||||
Maker is started you'll get an open terminal, an open file manager and
|
|
||||||
an open browser <span style="font-style: italic;">every time</span>
|
|
||||||
you start a session! Normally you will only want to start certain
|
|
||||||
dockapps - "regular" applications like a terminal emulator or browser
|
|
||||||
can be started <span style="font-style: italic;">after</span> your
|
|
||||||
session is up and going.)<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>From version 0.62.0 on, a checkbox can be used to prevent accidental
|
|
||||||
removal from the dock. <br>
|
|
||||||
<br>
|
|
||||||
From version 0.70.0 on, a new field has been added for middle-click
|
|
||||||
launch. Entering, for example, "firefox" into a docked
|
|
||||||
application
|
|
||||||
settings panel will launch the Firefox browser.<br>
|
|
||||||
<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p> </p>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back to index</a></center>
|
|
||||||
135
docs/guidedtour/dock.rst
Normal file
@@ -0,0 +1,135 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Guided Tour - Dock
|
||||||
|
---
|
||||||
|
|
||||||
|
Dock
|
||||||
|
====
|
||||||
|
|
||||||
|
.. contents::
|
||||||
|
:backlinks: none
|
||||||
|
|
||||||
|
Application dock
|
||||||
|
----------------
|
||||||
|
|
||||||
|
The dock is the column of icons located by default on the right side of the
|
||||||
|
screen.
|
||||||
|
|
||||||
|
Any application can be attached to the dock. To do this, open an application
|
||||||
|
then simply left-click-and-drag the application's icon to the last position on
|
||||||
|
the dock. The dock will "attract" the icon and it will remain on the dock until
|
||||||
|
removed by the user (left-click-and-drag the icon off the dock - it will
|
||||||
|
disappear.) If you have saved your Window Maker session prior to logout (or set
|
||||||
|
Window Maker to autosave your session upon logout) any icons you docked will
|
||||||
|
automatically reappear at your next - and each subsequent - session.
|
||||||
|
|
||||||
|
The dock can be configured to remain on top of maximized windows. To do this,
|
||||||
|
right-click on a dock or any docked icon then select appropriate option form
|
||||||
|
*Dock position* submenu. Consult `Application icon menu
|
||||||
|
<menu.html#application-icon-menu>`_ for details.
|
||||||
|
|
||||||
|
The WMDock icon (by default, with the GNUstep logo) can be dragged sideways to
|
||||||
|
switch the the entire dock from one side of the display to the other.
|
||||||
|
|
||||||
|
Dragging the WMDock icon downward will move the dock off the display with the
|
||||||
|
exception of the WMDock icon itself, which will remain visible. To restore dock
|
||||||
|
visibility, left-click-and-drag the dock back on screen.
|
||||||
|
|
||||||
|
Starting an application
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
Double-clicking the icon of a docked application starts the application.
|
||||||
|
|
||||||
|
An application that has not been launched normally has an elipsis (three dots)
|
||||||
|
in the bottom-left-corner of the icon and appears in full color as shown below.
|
||||||
|
|
||||||
|
.. figure:: images/unlaunched_app.png
|
||||||
|
:alt: Unlaunched application icon
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
Unlaunched application icon
|
||||||
|
|
||||||
|
When the application is running, the elipsis disappears from the
|
||||||
|
bottom-left-corner of the icon and the icon becomes highlited.
|
||||||
|
|
||||||
|
.. figure:: images/launched_app.png
|
||||||
|
:alt: Launched application icon
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
Launched application icon
|
||||||
|
|
||||||
|
Sometimes, when the application is running, instead of highlited icon, the icon
|
||||||
|
becomes "greyed out", giving a visual cue that the application is already open,
|
||||||
|
and cannot be launched again.
|
||||||
|
|
||||||
|
.. figure:: images/grayed_out_icon.png
|
||||||
|
:alt: Launched application icon
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
Grayed-out application icon
|
||||||
|
|
||||||
|
A docked icon that continues to show an elipsis and remains "full color" even
|
||||||
|
after an instance of the application is running indicates that the
|
||||||
|
application's settings have been modified to allow multiple launches from one
|
||||||
|
docked icon. To do this you must open the application and modify the
|
||||||
|
"application specific" settings in the `commands menu <win.html#menu>`_ of the
|
||||||
|
application to allow "shared application icons".
|
||||||
|
|
||||||
|
Using the "launch" command in the "application icon menu" for the icon is
|
||||||
|
another way to start an application from the dock.
|
||||||
|
|
||||||
|
From version 0.80.0 on, the dock can "steal" appicons. This feature has nothing
|
||||||
|
to do with Autoattract Icons. When you start an application from somewhere else
|
||||||
|
than either the clip or the dock (menu or terminal), and the appicon exists in
|
||||||
|
one of them (clip or dock), this appicon doesn't appear at the bottom of your
|
||||||
|
screen. The appicon existing in the clip or the dock "stole" it. As a result,
|
||||||
|
the appicon is the same as the one used to start the application from the clip
|
||||||
|
or the dock.
|
||||||
|
|
||||||
|
Customizing
|
||||||
|
-----------
|
||||||
|
|
||||||
|
Left-clicking and dragging an application icon to the dock adds this
|
||||||
|
application to the dock. Obviously, this means the application is running!
|
||||||
|
|
||||||
|
*Miniwindows* (windows of minimized applications) cannot be docked. The small
|
||||||
|
titlebar on the miniwindow differentiates it from an application's icon.
|
||||||
|
|
||||||
|
Dragging an icon off the dock removes the docked application.
|
||||||
|
|
||||||
|
Configuring
|
||||||
|
-----------
|
||||||
|
|
||||||
|
There is a dock menu for each icon. Right-clicking the icon displays the
|
||||||
|
"application icon menu". Select the "Settings..." option to configure the
|
||||||
|
application.
|
||||||
|
|
||||||
|
.. figure:: images/docked_application_settings.png
|
||||||
|
:alt: Launched application icon
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
Launched application icon
|
||||||
|
|
||||||
|
The application's *path* and its arguments, the command for middle-click
|
||||||
|
launch, and the icon employed can be changed in this panel.
|
||||||
|
|
||||||
|
Shell commands such as redirection cannot be used in the command field.
|
||||||
|
|
||||||
|
The desired icon must be in one of the directories displayed in the panel while
|
||||||
|
browsing. New directories can be added from the `Search path preferences
|
||||||
|
<prefs.html#search-path>`_.
|
||||||
|
|
||||||
|
A checkbox allows you to start the application when Window Maker is first
|
||||||
|
started. (Note: *You want to be careful with this*. If you have, for example,
|
||||||
|
your terminal emulator, your file manager, and your browser set to start when
|
||||||
|
Window Maker is started you'll get an open terminal, an open file manager and
|
||||||
|
an open browser *every time* you start a session! Normally you will only want
|
||||||
|
to start certain dockapps - "regular" applications like a terminal emulator or
|
||||||
|
browser can be started *after* your session is up and going.)
|
||||||
|
|
||||||
|
From version 0.62.0 on, a checkbox can be used to prevent accidental
|
||||||
|
removal from the dock.
|
||||||
|
|
||||||
|
From version 0.70.0 on, a new field has been added for middle-click launch.
|
||||||
|
Entering, for example, "firefox" into a docked application settings panel will
|
||||||
|
launch the Firefox browser.
|
||||||
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 9.7 KiB |
BIN
docs/guidedtour/images/dock_tile.png
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
BIN
docs/guidedtour/images/docked_application_settings.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 9.1 KiB |
|
Before Width: | Height: | Size: 33 KiB |
BIN
docs/guidedtour/images/grayed_out_icon.png
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 3.3 KiB |
BIN
docs/guidedtour/images/launched_app.png
Normal file
|
After Width: | Height: | Size: 3.7 KiB |
BIN
docs/guidedtour/images/menu_application_icon.png
Normal file
|
After Width: | Height: | Size: 4.4 KiB |
BIN
docs/guidedtour/images/menu_applications.png
Normal file
|
After Width: | Height: | Size: 7.6 KiB |
BIN
docs/guidedtour/images/menu_clip.png
Normal file
|
After Width: | Height: | Size: 8.1 KiB |
BIN
docs/guidedtour/images/menu_window_list.png
Normal file
|
After Width: | Height: | Size: 6.6 KiB |
BIN
docs/guidedtour/images/menu_workspaces.png
Normal file
|
After Width: | Height: | Size: 6.0 KiB |
BIN
docs/guidedtour/images/prefs0.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 35 KiB |
BIN
docs/guidedtour/images/prefs15.png
Normal file
|
After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 42 KiB |
BIN
docs/guidedtour/images/unlaunched_app.png
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
|
Before Width: | Height: | Size: 4.9 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 24 KiB |
@@ -1,118 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Guided Tour - Index
|
|
||||||
---
|
|
||||||
<h1 align="center"><strong><big>Window Maker</big></strong></h1>
|
|
||||||
|
|
||||||
<h2 align="center">Guided Tour</h2>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center><img src="images/gnusteplogo.png" alt="Amanda by Agnieszka Czajkowska" height="100" width="100"></center>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<h3><a href="http://www.windowmaker.org/">Window Maker</a></h3>
|
|
||||||
</center>
|
|
||||||
|
|
||||||
<h2><strong>Foreword</strong></h2>
|
|
||||||
|
|
||||||
This tutorial is intended to help Window Maker users gain knowledge
|
|
||||||
about the many excellent features
|
|
||||||
of this window manager. The official Users Guide is worth reading. It can
|
|
||||||
be reached from the <a href="{{ site.baseurl }}/docs/guide_toc.html">Window
|
|
||||||
Maker site</a>.
|
|
||||||
Other guides, tutorials and tips can be found at various sites on the
|
|
||||||
internet. An
|
|
||||||
internet search for "Window Maker guide how-to" might provide
|
|
||||||
additional worthwhile information. <br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
This guided tour is NOT supposed to be a README, INSTALL or FAQ . These
|
|
||||||
are worth reading, or more accurately, they should be considered COMPULSORY reading.
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
The information in the guided tour is based upon Window Maker version 0.95.3.
|
|
||||||
Check your version by opening WPrefs.app (the Window Maker Preferences
|
|
||||||
tool). The version number is shown in the initial WPrefs window just
|
|
||||||
below the "Window Maker Preferences" title. You may also run the
|
|
||||||
command "<span style="font-style: italic;">wmaker --version</span>" in
|
|
||||||
a terminal (without the quotation marks). This command returns the installed version number of Window Maker.
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<h2><strong>A special word of thanks</strong></h2>
|
|
||||||
|
|
||||||
The original Window Maker Guided Tour site was created and maintained
|
|
||||||
for many years by Georges Tarbouriech. Where possible, I have retained
|
|
||||||
his original work - including the layout and structure of the pages,
|
|
||||||
the descriptions of Window Maker features,
|
|
||||||
and even some of his original graphics. I want these pages to be up-to-date,
|
|
||||||
but I also want them to be (as much as possible) a continuation
|
|
||||||
of Georges' work. <span style="font-style: italic;">Thank you, Georges</span>.
|
|
||||||
(Having said that, anything you
|
|
||||||
find in error is without question my fault - so don't blame Georges
|
|
||||||
for any mistakes!)
|
|
||||||
If you find an error, have a suggestion, or wish to make a comment, you may contact me by email at <span style="font-style: italic;">bnance<atsigngoeshere>uu.edu</span>.<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
This tour will attempt to follow Window Maker development, but not
|
|
||||||
every update can be taken into account. In other words, this
|
|
||||||
tour can help you learn the basics, but does not pretend to provide all
|
|
||||||
of the detail or all of the latest information available in the
|
|
||||||
official README, INSTALL and FAQ documents provided by Window Maker
|
|
||||||
developers and maintainers.<br>
|
|
||||||
|
|
||||||
<h2><strong>Table of contents</strong></h2>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li><a href="prefs.html">Preferences</a><a href="prefs.html"><br>
|
|
||||||
</a></li>
|
|
||||||
<li><a href="win.html">Windows</a></li>
|
|
||||||
<li><a href="menu.html">Menus</a></li>
|
|
||||||
<li><a href="dock.html">Dock</a></li>
|
|
||||||
<li><a href="clip.html">Clip</a></li>
|
|
||||||
<li><a href="back.html">Backgrounds and themes</a></li>
|
|
||||||
<li><a href="misc.html">Miscellaneous</a></li>
|
|
||||||
<li><a href="news.html">News</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h2><strong>Archives</strong></h2>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Two archives are available: HTML and pictures.
|
|
||||||
<br>
|
|
||||||
<a href="tut.tar.gz">tut.tar.gz (12K) HTML files</a> <br>
|
|
||||||
<a href="img.tar.gz">img.tar.gz (613K) Picture files</a> </p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h2><strong>Links of interest</strong></h2><a href="https://www.youtube.com/watch?v=dIkbxMbhBpc" target="_blank">Window Maker on Debian 6 (YouTube)</a> by fourandnine<br>
|
|
||||||
<a href="https://wiki.archlinux.org/index.php/Window_Maker" target="_blank">Arch Linux Window Maker Wiki Entry</a><br>
|
|
||||||
<a href="http://packages.debian.org/squeeze/wmaker">Debian Stable (Squeeze) Package Listing</a><br>
|
|
||||||
<a href="http://www.youtube.com/watch?v=T7VFjW8p9NU" target="_blank">Window Maker on Mageia Linux (YouTube)</a> by St. Louis Mageia Users' Group<br>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center><a href="http://www.windowmaker.org"><strong><span class="">Window
|
|
||||||
Maker</span></strong></a></center>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
100
docs/guidedtour/index.rst
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Guided Tour - Index
|
||||||
|
---
|
||||||
|
|
||||||
|
Window Maker
|
||||||
|
============
|
||||||
|
|
||||||
|
.. class:: center
|
||||||
|
|
||||||
|
Guided Tour
|
||||||
|
-----------
|
||||||
|
|
||||||
|
.. class:: screenshot center
|
||||||
|
|
||||||
|
.. image:: images/gnusteplogo.png
|
||||||
|
:height: 100
|
||||||
|
:width: 100
|
||||||
|
|
||||||
|
|
||||||
|
Foreword
|
||||||
|
--------
|
||||||
|
|
||||||
|
This tutorial is intended to help Window Maker users gain knowledge about the
|
||||||
|
many excellent features of this window manager. The official Users Guide is
|
||||||
|
worth reading. It can be reached from the `Window Maker site <{{ site.baseurl
|
||||||
|
}}/docs/guide_toc.html>`_. Other guides, tutorials and tips can be found at
|
||||||
|
various sites on the internet. An internet search for "Window Maker guide
|
||||||
|
how-to" might provide additional worthwhile information.
|
||||||
|
|
||||||
|
This guided tour is NOT supposed to be a README, INSTALL or FAQ. These are
|
||||||
|
worth reading, or more accurately, they should be considered COMPULSORY
|
||||||
|
reading.
|
||||||
|
|
||||||
|
The information in the guided tour is based upon Window Maker version 0.95.3.
|
||||||
|
Check your version by opening WPrefs.app (the Window Maker Preferences tool).
|
||||||
|
The version number is shown in the initial WPrefs window just below the "Window
|
||||||
|
Maker Preferences" title. You may also run the command "*wmaker --version*" in
|
||||||
|
a terminal (without the quotation marks). This command returns the installed
|
||||||
|
version number of Window Maker.
|
||||||
|
|
||||||
|
A special word of thanks
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
The original Window Maker Guided Tour site was created and maintained for many
|
||||||
|
years by Georges Tarbouriech. Where possible, I have retained his original
|
||||||
|
work - including the layout and structure of the pages, the descriptions of
|
||||||
|
Window Maker features, and even some of his original graphics. I want these
|
||||||
|
pages to be up-to-date, but I also want them to be (as much as possible) a
|
||||||
|
continuation of Georges' work. *Thank you, Georges*. (Having said that,
|
||||||
|
anything you find in error is without question my fault - so don't blame
|
||||||
|
Georges for any mistakes!) If you find an error, have a suggestion, or wish to
|
||||||
|
make a comment, you may contact me by email at
|
||||||
|
*bnance<atsigngoeshere>uu.edu*.
|
||||||
|
|
||||||
|
This tour will attempt to follow Window Maker development, but not
|
||||||
|
every update can be taken into account. In other words, this
|
||||||
|
tour can help you learn the basics, but does not pretend to provide all
|
||||||
|
of the detail or all of the latest information available in the
|
||||||
|
official README, INSTALL and FAQ documents provided by Window Maker
|
||||||
|
developers and maintainers.
|
||||||
|
|
||||||
|
Table of contents
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. class:: contents
|
||||||
|
|
||||||
|
- `Preferences <prefs.html>`_
|
||||||
|
- `Windows <win.html>`_
|
||||||
|
- `Menus <menu.html>`_
|
||||||
|
- `Dock <dock.html>`_
|
||||||
|
- `Clip <clip.html>`_
|
||||||
|
- `Backgrounds and themes <back.html>`_
|
||||||
|
- `Miscellaneous <misc.html>`_
|
||||||
|
|
||||||
|
Archives
|
||||||
|
--------
|
||||||
|
|
||||||
|
Two archives are available: HTML and pictures.
|
||||||
|
|
||||||
|
.. TODO: figure out what's the status of those archives.
|
||||||
|
|
||||||
|
- `tut.tar.gz (12K) HTML files <tut.tar.gz>`_
|
||||||
|
- `img.tar.gz (613K) Picture files <img.tar.gz>`_
|
||||||
|
|
||||||
|
Links of interest
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
- `Window Maker on Debian 6 (YouTube)
|
||||||
|
<https://www.youtube.com/watch?v=dIkbxMbhBpc>`_ by fourandnine
|
||||||
|
- `Arch Linux Window Maker Wiki Entry
|
||||||
|
<https://wiki.archlinux.org/index.php/Window_Maker>`_
|
||||||
|
- `Debian Stable (Squeeze) Package Listing
|
||||||
|
<http://packages.debian.org/squeeze/wmaker>`_
|
||||||
|
- `Window Maker on Mageia Linux (YouTube)
|
||||||
|
<http://www.youtube.com/watch?v=T7VFjW8p9NU>`_ by St. Louis Mageia Users' Group
|
||||||
|
|
||||||
|
.. class:: center
|
||||||
|
|
||||||
|
`Window Maker <http://www.windowmaker.org>`_
|
||||||
@@ -1,185 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Guided Tour - Menus
|
|
||||||
---
|
|
||||||
</head>
|
|
||||||
<h1>
|
|
||||||
<center>Menus</center>
|
|
||||||
</h1>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back
|
|
||||||
to Index</a></center>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li><a href="#menu">Menu list</a></li>
|
|
||||||
<li><a href="#root">Root window menu</a></li>
|
|
||||||
<li><a href="#list">Window list menu</a></li>
|
|
||||||
<li><a href="#wspace">Workspaces menu</a></li>
|
|
||||||
<li><a href="#apps">Application icon menu</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="menu">Menu list</a></h2>
|
|
||||||
|
|
||||||
<p>Different menus are available within Window Maker:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>The root window menu or applications menu</li>
|
|
||||||
<li>The window list menu</li>
|
|
||||||
<li>The workspace menu</li>
|
|
||||||
<li>The application icon menu<br>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>Menus provide a list of applications or commands for execution. They
|
|
||||||
can be used to launch applications, to get information, to configure
|
|
||||||
the workspace...<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>Menus are opened by right-clicking either in the "blank" area of the
|
|
||||||
workspace or in a window's titlebar or in docked icons. The <em>window
|
|
||||||
list menu</em> is the only one opened with the middle mouse button.
|
|
||||||
With a two-button mouse, pressing both buttons at once usually does the
|
|
||||||
trick. A number of keyboard shortcuts are provided. These shortcuts are
|
|
||||||
indicated by the modifier key + letter shown to the right of a menu
|
|
||||||
item.</p>
|
|
||||||
|
|
||||||
<p>The keyboard can be used to open and move through some of the menus.
|
|
||||||
For instance, the root menu can be opened using F12 (default setting).
|
|
||||||
The Up and Down arrow keys can then be used to navigate through the
|
|
||||||
menu or the Left and Right arrow keys to jump between parent menus and
|
|
||||||
submenus. Hitting the <em>Enter</em> key executes the selected item.
|
|
||||||
the <em>Escape</em> key closes the menu or stops menu traversal.</p>
|
|
||||||
|
|
||||||
<p>Menus can be forced to remain open on the workspace by left-clicking
|
|
||||||
the titlebar. This creates a <em>close</em> button on the titlebar.</p>
|
|
||||||
|
|
||||||
<h2><a id="root">Root window menu</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 107px; height: 261px;" alt="Root window menu (applications menu)" src="images/apm.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
The root window menu or applications menu is opened by right-clicking
|
|
||||||
on an empty area of the workspace or by hitting the pre-defined
|
|
||||||
keyboard shortcut (default is F12). This menu launches applications,
|
|
||||||
allows for the customization of the workspace (backgrounds, themes...),
|
|
||||||
and the management of other workspace characteristics using standard X
|
|
||||||
utilities (xprop, xfontsel, xcmap...).
|
|
||||||
<p>The menu content is totally configurable, either using WPrefs.app or
|
|
||||||
by editing the plain text menu file. Instructions on how to configure
|
|
||||||
one or the other can be found in the WindowMaker directory of the
|
|
||||||
distribution. To use WPrefs.app, menus must be in property list format
|
|
||||||
(plmenu). A script is available to convert plain text menus to property
|
|
||||||
list menus and it's called wm-oldmenu2new. </p>
|
|
||||||
|
|
||||||
<h2><a id="list">Window list menu</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 265px; height: 141px;" alt="Window list menu" src="images/wlm.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
Middle-clicking an empty area of the workspace opens the window list
|
|
||||||
menu. With a two-button mouse, clicking both buttons at once usually
|
|
||||||
gives the same result. F11 is the default keyboard shorcut to open the
|
|
||||||
window list menu.
|
|
||||||
<p>This menu lists all windows - whether active or inactive - in every
|
|
||||||
workspace. The workspace containing each window is indicated at the
|
|
||||||
right of the window name. The current focused window is marked by a
|
|
||||||
diamond sign to the left of the window's name. Clicking any window in
|
|
||||||
the list focuses and raises the corresponding window and moves you to
|
|
||||||
the workspace where it's located.</p>
|
|
||||||
|
|
||||||
<h2><a id="wspace">Workspaces menu</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 101px; height: 121px;" alt="Workspaces menu" src="images/wksm.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
The workspaces menu is part of the root menu (applications menu).
|
|
||||||
This item has two options: <em>new</em> and <em>destroy last</em>.
|
|
||||||
<p>The first option creates a new workspace and automatically switches
|
|
||||||
you to it. </p>
|
|
||||||
|
|
||||||
<p>The second option destroys the last workspace as soon as there are
|
|
||||||
no windows opened in it.</p>
|
|
||||||
|
|
||||||
<p>Each workspace has a corresponding item in this menu. The active
|
|
||||||
workspace is indicated by a diamond to the left of the workspace name
|
|
||||||
or number.</p>
|
|
||||||
|
|
||||||
<p>Clicking a workspace entry switches from the current workspace to
|
|
||||||
the selected workspace.</p>
|
|
||||||
|
|
||||||
<p>To change the name of a workspace, first "stick" the menu by
|
|
||||||
left-clicking the menu titlebar. Then <em>Ctrl + click</em> the menu
|
|
||||||
item to make it editable and type in the new name. Hitting <em>Return</em>
|
|
||||||
saves the new name, hitting <em>Escape</em> cancels the operation.</p>
|
|
||||||
|
|
||||||
<p>Key bindings allow movement from one workspace to another. Usually <em>Meta
|
|
||||||
+ (number)</em>. The <span style="font-style: italic;">Meta</span> key
|
|
||||||
is normally the "<span style="font-style: italic;">Alt</span>" key,
|
|
||||||
while <em>(number)</em> represents a number
|
|
||||||
key that corresponds to the workspace number. For instance 1 can be
|
|
||||||
the default workspace (workspace 1), 2 the second workspace and so on.
|
|
||||||
Thus,
|
|
||||||
<span style="font-style: italic;">Meta + 2</span> switches to workspace
|
|
||||||
2.</p>
|
|
||||||
|
|
||||||
<p>These key bindings can be set (or changed) from the keyboard
|
|
||||||
shortcut dialog in
|
|
||||||
WPrefs.app. </p>
|
|
||||||
|
|
||||||
<h2><a id="apps">Application icon menu</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 98px; height: 119px;" alt="Icon application menu" src="images/dockm.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
Clicking an icon in the dock with the right mouse button brings a
|
|
||||||
menu for modifying that icon's application. There are six options
|
|
||||||
available in the application icon menu for docked applications. (Some
|
|
||||||
applications will not have all six options available. If an
|
|
||||||
option is not available, it will appear "greyed out" in the menu.) <br>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p>Clicking "Keep on top" places a check-mark beside that option,
|
|
||||||
which means that the icon will always be on "top" of
|
|
||||||
opened windows. If "Keep on top" is unchecked, windows will be allowed
|
|
||||||
to cover the icons in the dock. Selecting "Keep on top" for one icon
|
|
||||||
automatically affects all of the items in the dock. You cannot keep
|
|
||||||
just one docked icon on top of windows - it's all or nothing, one way
|
|
||||||
or the other.<br>
|
|
||||||
</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>"Launch" opens the application without double-clicking the icon.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>"Bring here" unhides the application in the current workspace.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>"Hide" hides the application or unhides it if already hidden.
|
|
||||||
Unhiding opens the application in the workspace where it is located.
|
|
||||||
(This option may not work if the application has it's own hiding menu
|
|
||||||
option.)</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>"Settings" allows the modification of application path and
|
|
||||||
arguments, the command line, and the icon used.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>"Kill" closes the application immediately and should only be
|
|
||||||
used if absolutely necessary.</p>
|
|
||||||
</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back
|
|
||||||
to Index</a></center>
|
|
||||||
168
docs/guidedtour/menu.rst
Normal file
@@ -0,0 +1,168 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Guided Tour - Menus
|
||||||
|
---
|
||||||
|
|
||||||
|
Menus
|
||||||
|
=====
|
||||||
|
|
||||||
|
.. contents::
|
||||||
|
:depth: 1
|
||||||
|
:backlinks: none
|
||||||
|
:local:
|
||||||
|
|
||||||
|
|
||||||
|
Menu list
|
||||||
|
---------
|
||||||
|
|
||||||
|
Different menus are available within Window Maker:
|
||||||
|
|
||||||
|
- The root window menu or applications menu
|
||||||
|
- The window list menu
|
||||||
|
- The workspace menu
|
||||||
|
- The application icon menu
|
||||||
|
|
||||||
|
Menus provide a list of applications or commands for execution. They can be
|
||||||
|
used to launch applications, to get information, to configure the workspace...
|
||||||
|
|
||||||
|
|
||||||
|
Menus are opened by right-clicking either in the "blank" area of the workspace
|
||||||
|
or in a window's titlebar or in docked icons. The *window list menu* is the
|
||||||
|
only one opened with the middle mouse button. With a two-button mouse,
|
||||||
|
pressing both buttons at once usually does the trick. A number of keyboard
|
||||||
|
shortcuts are provided. These shortcuts are indicated by the modifier key +
|
||||||
|
letter shown to the right of a menu item.
|
||||||
|
|
||||||
|
The keyboard can be used to open and move through some of the menus. For
|
||||||
|
instance, the root menu can be opened using F12 (default setting). The Up and
|
||||||
|
Down arrow keys can then be used to navigate through the menu or the Left and
|
||||||
|
Right arrow keys to jump between parent menus and submenus. Hitting the *Enter*
|
||||||
|
key executes the selected item. The *Escape* key closes the menu or stops menu
|
||||||
|
traversal.
|
||||||
|
|
||||||
|
Menus can be forced to remain open on the workspace by left-clicking the
|
||||||
|
titlebar. This creates a *close* button on the titlebar.
|
||||||
|
|
||||||
|
Root window menu
|
||||||
|
----------------
|
||||||
|
|
||||||
|
.. figure:: images/menu_applications.png
|
||||||
|
:alt: Root window menu (applications menu)
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
Root window menu (applications menu)
|
||||||
|
|
||||||
|
The root window menu or applications menu is opened by right-clicking on an
|
||||||
|
empty area of the workspace or by hitting the pre-defined keyboard shortcut
|
||||||
|
(default is F12). This menu launches applications, allows for the customization
|
||||||
|
of the workspace (backgrounds, themes...), and the management of other
|
||||||
|
workspace characteristics using standard X utilities (xprop, xfontsel,
|
||||||
|
xcmap...).
|
||||||
|
|
||||||
|
The menu content is totally configurable, either using WPrefs.app or by editing
|
||||||
|
the plain text menu file. Instructions on how to configure one or the other can
|
||||||
|
be found in the WindowMaker directory of the distribution. To use WPrefs.app,
|
||||||
|
menus must be in property list format (plmenu). A script is available to
|
||||||
|
convert plain text menus to property list menus and it's called wm-oldmenu2new.
|
||||||
|
|
||||||
|
Window list menu
|
||||||
|
----------------
|
||||||
|
|
||||||
|
.. figure:: images/menu_window_list.png
|
||||||
|
:alt: Window list menu
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
Window list menu
|
||||||
|
|
||||||
|
Middle-clicking an empty area of the workspace opens the window list menu. With
|
||||||
|
a two-button mouse, clicking both buttons at once usually gives the same
|
||||||
|
result. F11 is the default keyboard shortcut to open the window list menu.
|
||||||
|
|
||||||
|
This menu lists all windows - whether active or inactive - in every workspace.
|
||||||
|
The workspace containing each window is indicated at the right of the window
|
||||||
|
name. The current focused window is marked by a diamond sign to the left of the
|
||||||
|
window's name. Clicking any window in the list focuses and raises the
|
||||||
|
corresponding window and moves you to the workspace where it's located.
|
||||||
|
|
||||||
|
Workspaces menu
|
||||||
|
---------------
|
||||||
|
|
||||||
|
.. figure:: images/menu_workspaces.png
|
||||||
|
:alt: Workspaces menu
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
Workspaces menu
|
||||||
|
|
||||||
|
The workspaces menu is part of the root menu (applications menu). This item
|
||||||
|
has three options: *new*, *destroy last* and *last used*.
|
||||||
|
|
||||||
|
The first option creates a new workspace and automatically switches you to it.
|
||||||
|
|
||||||
|
The second option destroys the last workspace as soon as there are no windows
|
||||||
|
opened in it.
|
||||||
|
|
||||||
|
The third option switches to last visited workspace.
|
||||||
|
|
||||||
|
Each workspace has a corresponding item in this menu. The active workspace is
|
||||||
|
indicated by a diamond to the left of the workspace name or number.
|
||||||
|
|
||||||
|
Clicking a workspace entry switches from the current workspace to the selected
|
||||||
|
workspace.
|
||||||
|
|
||||||
|
To change the name of a workspace, first "stick" the menu by left-clicking the
|
||||||
|
menu titlebar. Then *Ctrl + click* the menu item to make it editable and type
|
||||||
|
in the new name. Hitting *Return* saves the new name, hitting *Escape* cancels
|
||||||
|
the operation.
|
||||||
|
|
||||||
|
Key bindings allow movement from one workspace to another. Usually *Meta +
|
||||||
|
(number)*. The *Meta* key is normally the "*Alt*" key, while *(number)*
|
||||||
|
represents a number key that corresponds to the workspace number. For instance
|
||||||
|
1 can be the default workspace (workspace 1), 2 the second workspace and so on.
|
||||||
|
Thus, *Meta + 2* switches to workspace 2.
|
||||||
|
|
||||||
|
These key bindings can be set (or changed) from the keyboard shortcut dialog in
|
||||||
|
WPrefs.app.
|
||||||
|
|
||||||
|
Application icon menu
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
.. figure:: images/menu_application_icon.png
|
||||||
|
:alt: Icon application menu
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
Icon application menu
|
||||||
|
|
||||||
|
Clicking an icon in the dock with the right mouse button brings a menu for
|
||||||
|
modifying that icon's application. There are several options available in the
|
||||||
|
application icon menu for docked applications. Docked, but not running
|
||||||
|
applications will not have all options available - they will appear "greyed
|
||||||
|
out" in the menu.
|
||||||
|
|
||||||
|
#. First option is a global Dock submenu, which have three items:
|
||||||
|
|
||||||
|
#. *Normal* will not change dock behaviour - it can be covered by windows,
|
||||||
|
while clicking on any docked items will bring it up.
|
||||||
|
|
||||||
|
#. *Auto raise & lower* is similar for the first options, although you don't
|
||||||
|
have to click on dock - it's enough to hover mouse pointer on visible
|
||||||
|
part of dock or it's items.
|
||||||
|
|
||||||
|
#. *Keep on top* means that the dock will always be on "top" of opened
|
||||||
|
windows.
|
||||||
|
|
||||||
|
#. *Add a drawer* will add special dockapp which can be used for aggregating
|
||||||
|
applications. See `Dock <dock.html>`_ for more details about drawers.
|
||||||
|
|
||||||
|
#. "Launch" opens the application without double-clicking the icon.
|
||||||
|
|
||||||
|
#. "Bring here" unhides the application in the current workspace.
|
||||||
|
|
||||||
|
#. "Hide" hides the application or unhides it if already hidden. Unhiding opens
|
||||||
|
the application in the workspace where it is located. (This option may not
|
||||||
|
work if the application has it's own hiding menu option.)
|
||||||
|
|
||||||
|
#. "Settings" allows the modification of application path and arguments, the
|
||||||
|
command line, and the icon used.
|
||||||
|
|
||||||
|
#. "Kill" closes the application immediately and should only be used if
|
||||||
|
absolutely necessary.
|
||||||
@@ -1,88 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Guided Tour - Miscellaneous
|
|
||||||
---
|
|
||||||
|
|
||||||
<h1><strong>
|
|
||||||
<center>Miscellaneous</center>
|
|
||||||
</strong></h1>
|
|
||||||
|
|
||||||
<strong></strong>
|
|
||||||
<center><a href="index.html">Back to index</a></center>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li><a href="misc.html#loc" name="loc">Localization</a></li>
|
|
||||||
<li><a href="misc.html#font" name="font">Fonts</a></li>
|
|
||||||
<li><a href="misc.html#util" name="util">Utilities</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a name="loc">Localization</a></h2>
|
|
||||||
|
|
||||||
As soon as Window Maker is compiled with some options and gettext
|
|
||||||
installed, it
|
|
||||||
is fully localizable. Check the INSTALL file. <br>
|
|
||||||
|
|
||||||
However, localization of menus can be used without the LANG environment
|
|
||||||
variable
|
|
||||||
set. Using pl menu allows to get menus in any available language
|
|
||||||
without setting
|
|
||||||
this variable. <br>
|
|
||||||
|
|
||||||
Why do such a "thing" instead of setting the localization the "right"
|
|
||||||
way? <br>
|
|
||||||
|
|
||||||
For some reasons users may want to keep the system default language
|
|
||||||
instead of
|
|
||||||
defining a new localization. One of the main reason is that most
|
|
||||||
software doesn't
|
|
||||||
exist in all languages. <br>
|
|
||||||
|
|
||||||
<h2><a name="font">Fonts</a></h2>
|
|
||||||
|
|
||||||
It's possible to change the fonts in Window Maker, editing the
|
|
||||||
WindowMaker file
|
|
||||||
or the WMGLOBAL file in ~/GNUstep/Defaults. <br>
|
|
||||||
|
|
||||||
Once again the INSTALL file gives instructions on how to do it. <br>
|
|
||||||
|
|
||||||
The specific file to edit varies according to the fonts to be changed. <br>
|
|
||||||
|
|
||||||
The script <span style="font-style: italic;">wsetfont</span> is
|
|
||||||
provided to do the job.
|
|
||||||
<h2><a name="util">Utilities</a></h2>
|
|
||||||
|
|
||||||
Window Maker provides the user with some useful utilities. <br>
|
|
||||||
|
|
||||||
There is a README file concerning these scripts in the util directory. <br>
|
|
||||||
|
|
||||||
Almost each script has it's own man page recommended reading. <br>
|
|
||||||
|
|
||||||
These utilities mainly concern the GUI: icons, styles, fonts, menus,
|
|
||||||
backgrounds. <br>
|
|
||||||
|
|
||||||
A few of them deserve special interest as many users don't seem to know
|
|
||||||
about them. <br>
|
|
||||||
|
|
||||||
The <span style="font-style: italic;">wdwrite</span> script, for
|
|
||||||
instance, writes data into the
|
|
||||||
configuration
|
|
||||||
files. <br>
|
|
||||||
|
|
||||||
The <span style="font-style: italic;">setstyle</span> (or <span style="font-style: italic;">getstyle</span>) scripts are used to
|
|
||||||
manage themes. <br>
|
|
||||||
|
|
||||||
<span style="font-style: italic;">Wxcopy</span> and <span style="font-style: italic;">wxpaste</span> allows copying and pasting
|
|
||||||
using the X cutbuffer. <br>
|
|
||||||
|
|
||||||
The first one makes part of the default applications menu, in the
|
|
||||||
selection
|
|
||||||
item. <br>
|
|
||||||
|
|
||||||
For KDE users, wkdemenu.pl is worth using. <br>
|
|
||||||
|
|
||||||
From version 0.63.0 on, a new utility is available : <span style="font-style: italic;">wmagnify</span>. It allows magnification
|
|
||||||
of the area under the mouse pointer.<br>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back to index</a></center>
|
|
||||||
68
docs/guidedtour/misc.rst
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Guided Tour - Miscellaneous
|
||||||
|
---
|
||||||
|
|
||||||
|
Miscellaneous
|
||||||
|
=============
|
||||||
|
|
||||||
|
.. contents::
|
||||||
|
:backlinks: none
|
||||||
|
|
||||||
|
|
||||||
|
Localization
|
||||||
|
------------
|
||||||
|
|
||||||
|
As soon as Window Maker is compiled with some options and gettext installed, it
|
||||||
|
is fully localizable. Check the INSTALL file.
|
||||||
|
|
||||||
|
However, localization of menus can be used without the LANG environment
|
||||||
|
variable set. Using pl menu allows to get menus in any available language
|
||||||
|
without setting this variable.
|
||||||
|
|
||||||
|
Why do such a "thing" instead of setting the localization the "right" way?
|
||||||
|
|
||||||
|
For some reasons users may want to keep the system default language instead of
|
||||||
|
defining a new localization. One of the main reason is that most software
|
||||||
|
doesn't exist in all languages.
|
||||||
|
|
||||||
|
Fonts
|
||||||
|
-----
|
||||||
|
|
||||||
|
It's possible to change the fonts in Window Maker, editing the WindowMaker file
|
||||||
|
or the WMGLOBAL file in ``~/GNUstep/Defaults``.
|
||||||
|
|
||||||
|
Once again the INSTALL file gives instructions on how to do it.
|
||||||
|
|
||||||
|
The specific file to edit varies according to the fonts to be changed.
|
||||||
|
|
||||||
|
The script *wsetfont* is provided to do the job.
|
||||||
|
|
||||||
|
Utilities
|
||||||
|
---------
|
||||||
|
|
||||||
|
Window Maker provides the user with some useful utilities.
|
||||||
|
|
||||||
|
There is a README file concerning these scripts in the util directory.
|
||||||
|
|
||||||
|
Almost each script has it's own man page recommended reading.
|
||||||
|
|
||||||
|
These utilities mainly concern the GUI: icons, styles, fonts, menus,
|
||||||
|
backgrounds.
|
||||||
|
|
||||||
|
A few of them deserve special interest as many users don't seem to know about
|
||||||
|
them.
|
||||||
|
|
||||||
|
The *wdwrite* script, for instance, writes data into the configuration files.
|
||||||
|
|
||||||
|
The *setstyle* (or *getstyle*) scripts are used to manage themes.
|
||||||
|
|
||||||
|
*Wxcopy* and *wxpaste* allows copying and pasting using the X cutbuffer.
|
||||||
|
|
||||||
|
The first one makes part of the default applications menu, in the selection
|
||||||
|
item.
|
||||||
|
|
||||||
|
For KDE users, wkdemenu.pl is worth using.
|
||||||
|
|
||||||
|
From version 0.63.0 on, a new utility is available : *wmagnify*. It allows
|
||||||
|
magnification of the area under the mouse pointer.
|
||||||
@@ -1,168 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Guided Tour - News
|
|
||||||
---
|
|
||||||
|
|
||||||
<h1><strong>
|
|
||||||
<center>News</center></strong></h1>
|
|
||||||
<strong>
|
|
||||||
</strong>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back to index</a></center>
|
|
||||||
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<strong>This page has been added to allow easy discovery of the main
|
|
||||||
changes from one
|
|
||||||
version to another. The original text is drawn directly from the <a href="{{ site.baseurl }}/news">windowmaker.org site</a>.
|
|
||||||
Moving forward, it is anticipated that additional comments and
|
|
||||||
observations on Window Maker development news will be provided as well.</strong>
|
|
||||||
</p>
|
|
||||||
<h3>Version 0.95.4 released</h3>
|
|
||||||
|
|
||||||
|
|
||||||
<p> Window Maker 0.95.4 was released on January 3rd 2013. There was a major code cleanup related to icons, some changes
|
|
||||||
in WPrefs, the addition of a new "Center" placement strategy, support for _NET_FRAME_EXTENTS, the removal of CPP
|
|
||||||
dependency to process menu files and small fixes and improvements all around.</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h3>Version 0.95.3 released</h3>
|
|
||||||
|
|
||||||
|
|
||||||
<p> Window Maker 0.95.3 was released on May 16th 2012. This release fixes a regression
|
|
||||||
which would cause more than one instance of an application to start (under some circunstances) when using menu
|
|
||||||
shortcuts. The window maximization procedures now have a more intuitive behavior with respect to remembering
|
|
||||||
the old geometry and going back to it. Furthermore, there are some other small fixes and cleanups.</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h3>Version 0.95.2 released</h3>
|
|
||||||
|
|
||||||
|
|
||||||
<p> Window Maker 0.95.2 was released on February 14th 2012, and it contains just a few
|
|
||||||
commits on top of 0.95.1. They were necessary to fix a few issues like 'make dist' not compiling.
|
|
||||||
Furthermore a few more code cleanups slipped in.</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h3>Version 0.95.1 released</h3>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p>Window Maker 0.95.1 was released on January 29th 2012.</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p>The last official Window Maker release was version 0.92.0 from 2005, and version 0.95.1 contains many bug fixes and
|
|
||||||
also a few new features.</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h3>New features and highlights</h3>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p>The following list is incomplete, but should give a first-order approximation to the new features in this release.
|
|
||||||
For the truly curious among you, reading through <code>git log</code> is the only complete source of information.</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/6924454836b3a9432def2749f093ea060ac82e97">Left Half / Right
|
|
||||||
Half Maximize</a>.</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/cf62d1591f5aef1e6760a8c0881a6de97ae26e92">Maximus: tiled
|
|
||||||
maximization</a>. Maximizes a window such that it occupies the largest area without overlapping others.</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/a063338175511c4e6af211cef9f2c8a555d7cb44">New mouse-resizing
|
|
||||||
functionality</a>. Windows can now be resized vertically (horizontally) using MOD+Wheel (CTRL+Wheel).</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/05720d97076ffc1569e50d904b998ec99c3d3d4e">History and TAB
|
|
||||||
completion in dialogs</a>. To use this new functionality in your old WMRootMenu, replace %a by %A in the relevant
|
|
||||||
entry. It will look like this <code>(Run..., SHEXEC, "%A(Run, Type command:)")</code>. Or use
|
|
||||||
<code>wmgenmenu</code> to generate a new menu.</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/a257e16593bb471662ce46f65d489c2ba6d87813">Bouncing appicon
|
|
||||||
effect</a>.</p>
|
|
||||||
</li><li>
|
|
||||||
<p>New applications (<a href="http://repo.or.cz/w/wmaker-crm.git/commit/1861880239634774bf898175a3155b7c7cd9b59c">wmgenmenu</a> and wmmenugen)
|
|
||||||
to generate the root menu automatically by looking which applications you have on your $PATH. Translations to
|
|
||||||
German, <a href="http://repo.or.cz/w/wmaker-crm.git/commit/077a2eaa71623421eaffc234c30e6d40a52f0220">Spanish and
|
|
||||||
French</a> of menus generated by wmgenmenu.</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/56d856878743ec2d3b8d98ab6a0b61a6b2c99129">Automatic detection
|
|
||||||
of configuration changes</a>. Linux users whose kernel supports the <a href="http://en.wikipedia.org/wiki/Inotify">inotify</a> mechanism have their configuration changes detected
|
|
||||||
automatically without polling, reducing the number of CPU wakeups.</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/9318a7f42870753bd6b8c306573936369aa819f4">Improved dockapp
|
|
||||||
recognition.</a></p>
|
|
||||||
</li><li>
|
|
||||||
<p>And many trivial things which reduce little annoyances one might have. For example, an option was added to
|
|
||||||
control whether or not Window Maker should do <a href="http://repo.or.cz/w/wmaker-crm.git/commit/d6c134f420bfa1cd6b6a9474d01548933b559901">automatic workspace
|
|
||||||
switching</a> to satisfy a focus request from a window located in another workspace.</p>
|
|
||||||
</li><li>
|
|
||||||
<p>(For developers). The <a href="http://repo.or.cz/w/wmaker-crm.git/commit/442e3876c6e5a78c6ed385ec204647553f45c168">addition</a> of a debian/
|
|
||||||
folder which allows the creation of a debian package for wmaker using the git sources.</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/b6689a0108fd06ba4d7bf22b789b3de531c2ad70">Added keyboard
|
|
||||||
shortcut to uncover/cover the dock</a>.</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/18408fff93468c533bf4aef3ce6c9808b415adde">Mac OS X-style
|
|
||||||
window cycling</a>.</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/c201e1612c1798106ccc2f806669a90b0bbb7a19">Preliminary XRandR
|
|
||||||
support</a> (needs a bit more work to be bug-free; not compiled in by default. Use --enable-xrandr if you want to
|
|
||||||
test it).</p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h3>Bug fixes</h3>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p>Window Maker 0.92.0 was already very stable, but many bugs were fixed in this release. A <strong>very</strong>
|
|
||||||
incomplete list is given below, and as time permits it will be updated (including links to the commits) in the future.
|
|
||||||
But the message now is that if you don't like bugs, use version 0.95.1.</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/37829a7c60ca09eb47d4d82b00070f6f6c0fb277">Fix loading saved
|
|
||||||
states on 64-bit systems</a></p>
|
|
||||||
</li><li>
|
|
||||||
<p>Fix to avoid a segfault when creating more than 81 workspaces, as reported on youtube <a href="http://www.youtube.com/watch?v=fkNJZvKwmhE">here</a>.</p>
|
|
||||||
</li><li>
|
|
||||||
<p><a href="http://repo.or.cz/w/wmaker-crm.git/commit/c91bb1ba1360006c568db37438779e525868cf17">Periodic focus
|
|
||||||
bug</a>.</p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h3>Summary of changes</h3>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p>A lot of effort was put into cleaning up the code, with lots of code removal and tidying things up. The following
|
|
||||||
output should give you an idea of the development in the last cycle:</p>
|
|
||||||
|
|
||||||
|
|
||||||
<pre>git diff --shortstat wmaker-0.92.0+..wmaker-0.95.1<br> 592 files changed, 118361 insertions(+), 133342 deletions(-)<br>git diff --shortstat 688a56e8ab67b..wmaker-0.95.1<br> 566 files changed, 37676 insertions(+), 41817 deletions(-)<br></pre>
|
|
||||||
The first shortstat is really everything, including the (huge) patch generated in this <a href="http://repo.or.cz/w/wmaker-crm.git/commit/688a56e8ab67b56550e2874d9d7423f0d435bfd9">commit</a> from 2009, which changed the old
|
|
||||||
sources to the linux kernel coding style. The second shortstat contains the summary of development afterwards -- but included is
|
|
||||||
the addition of a debian folder with files summing around ~20k lines. The full diffstat for the second command can be seen
|
|
||||||
<a href="{{ site.baseurl }}/news/fulldiffstat.html">here</a>.
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back to index</a></center>
|
|
||||||
@@ -1,476 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Guided Tour - Prefs
|
|
||||||
---
|
|
||||||
<h1>
|
|
||||||
<center>Preferences</center>
|
|
||||||
</h1>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center><img style="width: 64px; height: 64px;" src="images/wprefs.jpg" alt="Amanda by Agnieszka Czajkowska"></center>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back
|
|
||||||
to Index</a>
|
|
||||||
<h2 style="text-align: left;">WPrefs.app</h2>
|
|
||||||
</center>
|
|
||||||
|
|
||||||
<p>WPrefs.app is the heart of the configuration process in Window Maker.</p>
|
|
||||||
|
|
||||||
<p>Upon installing Window Maker and running it for the first time, the
|
|
||||||
WPrefs icon is already docked. By default, it's the one with the
|
|
||||||
GNUstep logo in the background and a few tools in the foreground
|
|
||||||
(although your distibution may use the plain GNUstep icon or something
|
|
||||||
enitrely different). Normally Linux distributions position WPrefs as
|
|
||||||
the second or third icon in the
|
|
||||||
Dock column by default, just above or below the terminal icon. <br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center>
|
|
||||||
<p><img style="width: 64px; height: 64px;" alt="GNUstep Logo with Tools" src="images/wmakerconf.png" align="middle" hspace="20"><img style="width: 64px; height: 64px;" alt="GNUstep Logo" src="images/gnustep_64.png" align="middle" hspace="20"><br>
|
|
||||||
</p>
|
|
||||||
</center>
|
|
||||||
|
|
||||||
<p>Double-clicking on this icon opens the WPrefs.app window.
|
|
||||||
Across the top of the window there is a row of icons, each one
|
|
||||||
corresponding to a group of settings options. There is a checkbox for
|
|
||||||
balloon help on the bottom left of the WPrefs.app window. Most of the
|
|
||||||
following is taken directly from the content of the ballon help dialogs.</p>
|
|
||||||
|
|
||||||
<h2>Available preference settings</h2>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li><a href="#wplace">Window handling</a></li>
|
|
||||||
<li><a href="#switch">Window Focus</a></li>
|
|
||||||
<li><a href="#menu">Menu</a></li>
|
|
||||||
<li><a href="#icon">Icon</a></li>
|
|
||||||
<li><a href="#ergo">Ergonomy</a></li>
|
|
||||||
<li><a href="#search">Search path</a></li>
|
|
||||||
<li><a href="#worksp">Workspace</a></li>
|
|
||||||
<li><a href="#other">Other</a></li>
|
|
||||||
<li><a href="#appmenu">Applications menu</a></li>
|
|
||||||
<li><a href="#keyb">Keyboard shortcut</a></li>
|
|
||||||
<li><a href="#mouse">Mouse</a></li>
|
|
||||||
<li><a href="#appear">Appearance</a></li>
|
|
||||||
<li><a href="#exp">Expert user</a></li>
|
|
||||||
<li><a href="#font">Font configuration</a></li>
|
|
||||||
<li><a href="#edit">Editing the configuration file</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="whand">Window handling</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 519px; height: 414px;" alt="WPrefs.app window handling preferences" src="images/prefs1.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
Clicking the second icon allows you to select the window handling
|
|
||||||
options. Clicking on this icon opens a panel allowing you to define the
|
|
||||||
default placement and properties of windows in the workspace.
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p><em>Window placement</em><br>
|
|
||||||
You can use the sliders around the screen representation to modify the
|
|
||||||
original placement.
|
|
||||||
The gadget tells Window Maker how to order windows on the screen: <span style="font-style: italic;">Random</span>, <span style="font-style: italic;">Manual</span>, <span style="font-style: italic;">Cascade</span> or <span style="font-style: italic;">Smart</span>. <span style="font-style: italic;">Automatic</span> is the default.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Edge resistance</em><br>
|
|
||||||
To set the edge resistance and whether it resists or attracts windows.
|
|
||||||
According to the selection, windows resist or attract when moved
|
|
||||||
against other windows or the edges of the screen. The slider defines
|
|
||||||
the threshold. Some applications' title bars may disappear
|
|
||||||
at the top of the screen, with the window being too high for the screen
|
|
||||||
area. Setting the edge
|
|
||||||
resistance to "0" may solve this problem.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Open dialogs in the same workspace as their owners</em><br>
|
|
||||||
Obviously, whether to force dialog boxes "spawned" by an application to
|
|
||||||
open in same workspace as their owners.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Opaque move/resize</em><br>
|
|
||||||
Clicking on <span style="font-style: italic;">opaque move</span>
|
|
||||||
causes windows to be moved with their contents visible. If not checked,
|
|
||||||
only the frame is displayed during the move. <span style="font-style: italic;">Opaque resize</span> makes window contents
|
|
||||||
visible during resizing, otherwise only the frame is displayed.<br>
|
|
||||||
</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>When maximizing</em><br>
|
|
||||||
This option allows the window to cover (or not) icons or the dock when
|
|
||||||
maximizing. </p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="switch">Window focus</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 519px; height: 411px;" alt="WPrefs.app window focus controls" src="images/prefs2.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
The first icon from the left-hand side controls the way windows get
|
|
||||||
their focus (how they are activated).
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p><em>Input focus mode</em> (two choices are available): <br>
|
|
||||||
<strong>Manual</strong> - click on the window to set keyboard input
|
|
||||||
focus.<br>
|
|
||||||
<strong>Auto</strong> - set keyboard input focus to the window
|
|
||||||
under the mouse pointer.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Install colormap in the window</em><br>
|
|
||||||
Select either (a) install the colormap in the window that has the input
|
|
||||||
focus or (b) that is under the mouse pointer.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Automatic window raise delay</em><br>
|
|
||||||
Setting the delay (in msec) for automatic window raising</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Checkboxes</em><br>
|
|
||||||
The topmost check box prevents applications from receiving the focusing
|
|
||||||
mouse-click (I don't know why you would use this, but some people
|
|
||||||
obviously find it useful).
|
|
||||||
The bottom checkbox allows you to choose whether newly-opened
|
|
||||||
application windows automatically receive the focus, or must be clicked
|
|
||||||
to gain focus. </p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="menu">Menu</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 519px; height: 412px;" alt="WPrefs.app menu preferences" src="images/prefs3.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
This panel allows you to set menu scrolling speed and submenu
|
|
||||||
alignment with the parent menu. In addition, two checkboxes are
|
|
||||||
provided:
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>The topmost box forces submenus to open inside the screen instead
|
|
||||||
of scrolling when they would otherwise be off-screen.<br>
|
|
||||||
</li>
|
|
||||||
<li>The middle box allows submenus to open off-screen, but causes
|
|
||||||
off-screen menus to scroll when the mouse pointer is
|
|
||||||
moved over them. This setting is also of value if you "tear off" a menu
|
|
||||||
and leave it positioned on the desktop. In that case, you might wish to
|
|
||||||
"park" the menu off-screen (with only the titlebar showing, for
|
|
||||||
example) and have it reappear when you mouse over it. This is
|
|
||||||
convenient in some workflows, as when you have multiple applications
|
|
||||||
open and you are using the window list menu to switch between
|
|
||||||
applications.</li>
|
|
||||||
<li>The bottom box allows you to assign EMACS-like keybindings for
|
|
||||||
the selection of menu items.<br>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="icon">Icon</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 516px; height: 410px;" alt="WPrefs.app icon preferences" src="images/prefs4.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p>Set icon or miniwindow handling options.<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li><em>Icon positioning</em><br>
|
|
||||||
This area defines the initial placement of miniwindows or icons will be
|
|
||||||
displayed: <span style="font-style: italic;">bottom, top, right, left</span>...<br>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Checkboxes</em><br>
|
|
||||||
The topmost box enables/disables auto-arrangement of icons. The
|
|
||||||
bottom box places miniwindows for opened applications on all existing
|
|
||||||
workspaces (<span style="font-style: italic;">omnipresent</span>).</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Iconification animation</em><br>
|
|
||||||
When an application's window is miniaturized, <span style="font-style: italic;">miniaturization animation style</span>
|
|
||||||
offers four animation choices.</p>
|
|
||||||
</li>
|
|
||||||
<ul>
|
|
||||||
<li>Shrinking/Zooming,<br>
|
|
||||||
</li>
|
|
||||||
<li>Spinning/Twisting,<br>
|
|
||||||
</li>
|
|
||||||
<li>3D Flipping, or<br>
|
|
||||||
</li>
|
|
||||||
<li>None </li>
|
|
||||||
</ul>
|
|
||||||
<li>
|
|
||||||
<p><em>Icon size</em><br>
|
|
||||||
Selects the size of the icons shown when a window is miniaturized and
|
|
||||||
for application icons. Dockapp developers usually assume that tiles
|
|
||||||
will be 64x64 pixels, so it's
|
|
||||||
probably a good idea to leave it at that size, unless you know you
|
|
||||||
won't be using dockapps.</p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="ergo">Ergonomy</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 518px; height: 413px;" alt="WPrefs.app ergonomic settings" src="images/prefs5.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
Various types of information are defined in this panel.
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p><em>Size display</em> <br>
|
|
||||||
Window Maker provides a box that informs you about the size of a window
|
|
||||||
during resizing. You may choose to have this display (a) in the center
|
|
||||||
of the screen, (b) the center of the screen, (c) the center of the
|
|
||||||
resized window, (d) the side and bottom of the window as a technical
|
|
||||||
drawing-like size display or (e) not at all.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Position display</em><br>
|
|
||||||
Same information as above but regarding the screen placement of a
|
|
||||||
window while moving (no technical drawing-like option).<br>
|
|
||||||
</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Workspace border</em><br>
|
|
||||||
You can set a small border for the workspace. This allows you to easily
|
|
||||||
access the clip (for instance) when windows are maximized.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Show balloon text for</em><br>
|
|
||||||
Selecting
|
|
||||||
checkboxes displays balloon text for: incomplete window
|
|
||||||
titles, miniwindow titles, application and dock icons, or internal
|
|
||||||
help. This may be useful for new users but many people find having help
|
|
||||||
balloons pop out all over the desktop gets annoying quickly. I use the <span style="font-style: italic;">incomplete window title</span> and the <span style="font-style: italic;">miniwindow title</span> options and none
|
|
||||||
of the others.<br>
|
|
||||||
</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Checkbox</em><br>
|
|
||||||
The top check bos, if selected, raises a window when switching focus
|
|
||||||
with the keyboard. The bottom box enables a keyboard language selection
|
|
||||||
button on window titlebars (must have multiple keyboard maps/locales
|
|
||||||
defined - this is handy if you are working in multiple languages in
|
|
||||||
applications such as word processors, for example).<br>
|
|
||||||
</p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="search">Search Path</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 521px; height: 408px;" alt="WPrefs.app icon and pixmap search path settings" src="images/prefs6.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
This panel is used to add or delete directory paths to search for
|
|
||||||
icons and pixmaps. These paths are used in the <span style="font-style: italic;">settings</span>
|
|
||||||
dialogs for dockapps and docked application icons, so having a good,
|
|
||||||
complete set of defined paths is important. This may require some
|
|
||||||
manual intervention, especially upon initial setup, since some default
|
|
||||||
paths will not be present on your system, while others not predefined
|
|
||||||
will be present. Use the <span style="font-style: italic;">add</span>
|
|
||||||
and <span style="font-style: italic;">remove</span> dialogs to
|
|
||||||
configure according to what is actually available.<br>
|
|
||||||
|
|
||||||
<h2><a id="worksp">Workspace</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 520px; height: 410px;" alt="WPrefs.app workspace preference settings" src="images/prefs7.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
This panel defines navigation features within the workspace.
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p><em>Workspace navigation</em><br>
|
|
||||||
Selecting the first
|
|
||||||
checkbox allows switching to the first workspace when
|
|
||||||
switching past the last workspace and vice-versa. Selecting the second
|
|
||||||
checkbox allows windows to be dragged from one workspace to another.
|
|
||||||
Selecting the third checkbox
|
|
||||||
cause a new workspace to be created when windows are dragged off the
|
|
||||||
last existing workspace. A selection menu allows you to define where
|
|
||||||
the workspace name is displayed each time you move from one
|
|
||||||
workspace to another (or not to display the workspace name at all).</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Dock and clip</em><br>
|
|
||||||
Enables / disables the dock and/or the clip. I have seen some
|
|
||||||
interesting configurations using no dock but having the clip present.
|
|
||||||
For users who prefer a bottom or top "panel" of application launchers,
|
|
||||||
system monitors and other tools, this is a very valuable bit of
|
|
||||||
flexibility.<br>
|
|
||||||
</p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="other">Other</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 516px; height: 413px;" alt="WPrefs.app other workspace configuration settings" src="images/prefs8.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p>This panel sets icon slide speed, shade animation speed, smooth
|
|
||||||
scaling and titlebar control (button) style. Animations and sound are
|
|
||||||
also defined here.</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p><em>Icon slide speed</em><br>
|
|
||||||
Selecting the left icon gives the slowest result, selecting the right
|
|
||||||
one gives the fastest.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Shade animation speed</em><br>
|
|
||||||
Same as icon slide</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Smooth scaling</em><br>
|
|
||||||
If selected, neutralizes pixelization effect on background images. The
|
|
||||||
side-effect is to slow down background image loading.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Titlebar style</em><br>
|
|
||||||
To choose a more or less "NeXTish" titlebar. (The top version is
|
|
||||||
"newer," while the bottom left is ca. 1990 and the bottom right is ca.
|
|
||||||
1988.)<br>
|
|
||||||
</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Animations</em><br>
|
|
||||||
Selecting the animations icon enables animations for window
|
|
||||||
miniaturization, shading and so on.<br>
|
|
||||||
Selecting
|
|
||||||
the superfluous icon enables "ghosting" of dock (when moved -
|
|
||||||
especially when moved from one side of the screen to the other) and
|
|
||||||
explosion
|
|
||||||
animation for icons you remove from the dock.<br>
|
|
||||||
</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Dithering colormap for 8bpp</em><br>
|
|
||||||
For 8-bit displays (anyone still have one of these?) this enables
|
|
||||||
dithering and changes the number of colors to reserve either for
|
|
||||||
applications or for Window Maker. The Default setting almost always
|
|
||||||
gives the best result.</p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="appmenu">Applications menu</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 517px; height: 413px;" alt="WPrefs.app application menu configuration" src="images/prefs9.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
<p>In this panel the applications menu and the commands to launch each
|
|
||||||
application can be defined. This panel has been changed in version
|
|
||||||
0.63.and later. It now displays the actual menu thus allowing direct
|
|
||||||
editing. This can be done only if the menu is in property list format.
|
|
||||||
Menus in plain text format can't be edited in WPrefs. Check the README
|
|
||||||
file in the Window Maker directory on how to use one or the other.</p>
|
|
||||||
|
|
||||||
<h2><a id="keyb">Keyboard shortcut</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 518px; height: 412px;" alt="WPrefs.app keyboard shortcut settings" src="images/prefs10.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
Many actions in Window Maker have predefined keyboard shortcuts.
|
|
||||||
These actions mainly concern windows and workspaces.
|
|
||||||
Modifying, adding or removing shortcuts can be done in this panel.
|
|
||||||
Defining a shortcut can be done interactively, capturing the key
|
|
||||||
combination.
|
|
||||||
<h2><a id="mouse">Mouse</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 520px; height: 413px;" alt="WPrefs.app mouse configuration" src="images/prefs11.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
This panel sets the mouse speed and double-click delay.
|
|
||||||
Mouse button bindings can be defined and can be disabled or enabled.
|
|
||||||
<p>The default setting binds the right mouse button to the applications
|
|
||||||
menu, middle button to the window list menu and left button to window
|
|
||||||
selection (focus). Of course, with a two button mouse, the middle
|
|
||||||
button binding will not work. However, on some OSes pressing both
|
|
||||||
buttons at once gives the same result as the one obtained with middle
|
|
||||||
button.</p>
|
|
||||||
|
|
||||||
<p>Starting from version 0.65 on, the mouse wheel can be used to switch
|
|
||||||
workspaces. This is not default behavior and must be enabled here.</p>
|
|
||||||
|
|
||||||
<p>The mouse grab modifier represents the keyboard shortcut to use for
|
|
||||||
actions like dragging windows with the mouse or clicking inside the
|
|
||||||
window. Mod1 (Alt) is the default.</p>
|
|
||||||
|
|
||||||
<h2><a id="appear">Appearance</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 520px; height: 412px;" alt="WPrefs.app appearance settings" src="images/prefs12.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
In this panel, everything related to the appearance of the GUI (except
|
|
||||||
the background color or image) can
|
|
||||||
be configured. Windows, menus and icons can have their own background
|
|
||||||
"texture," meaning color gradients of various types can be configured
|
|
||||||
here. Texture, color, menu style, and title alignment can be fully
|
|
||||||
customized.
|
|
||||||
<h2><a id="exp">Expert user</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 519px; height: 411px;" alt="WPrefs.app expert user settings" src="images/prefs13.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
Using this panel implies some knowledge. Many options are available.
|
|
||||||
Among these are:
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>Disabling miniwindows (useful when using with KDE and GNOME)</li>
|
|
||||||
<li>Using (or not) xset</li>
|
|
||||||
<li>Saving session on exit (highly recommended!)</li>
|
|
||||||
<li>Using SaveUnder in different objects</li>
|
|
||||||
<li>Using Win style cycling (added from version 0.63.0)</li>
|
|
||||||
<li>Disabling confirmation panel for the kill command</li>
|
|
||||||
<li>Disabling cycling colors highlighting of icons</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="font">Font configuration</a></h2>
|
|
||||||
|
|
||||||
<center><img style="width: 517px; height: 411px;" alt="Wprefs.app font configuration options" src="images/prefs14.png"></center>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
This panel allows you to configure fonts for the window and menu
|
|
||||||
titlebars, for the menu body text, and for the icon and clip
|
|
||||||
text. In addition, a font may be defined for desktop messages.<br>
|
|
||||||
|
|
||||||
<h2><a id="edit">Editing the configuration file</a></h2>
|
|
||||||
|
|
||||||
<p>If needed, the defaults configuration file found in
|
|
||||||
$(HOME)/GNUstep/Defaults/WindowMaker can be edited by hand. This file
|
|
||||||
is a database with a property list syntax. When selecting an option in
|
|
||||||
WPrefs.app, it's written down into this file. When modifying this
|
|
||||||
defaults file, it's very important to follow the syntax.<br>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back
|
|
||||||
to Index</a>
|
|
||||||
</center>
|
|
||||||
483
docs/guidedtour/prefs.rst
Normal file
@@ -0,0 +1,483 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Guided Tour - Prefs
|
||||||
|
---
|
||||||
|
|
||||||
|
===========
|
||||||
|
Preferences
|
||||||
|
===========
|
||||||
|
|
||||||
|
.. figure:: images/wprefs.jpg
|
||||||
|
:figclass: borderless
|
||||||
|
:height: 64
|
||||||
|
:width: 64
|
||||||
|
|
||||||
|
WPrefs.app
|
||||||
|
----------
|
||||||
|
|
||||||
|
WPrefs.app is the heart of the configuration process in Window Maker.
|
||||||
|
|
||||||
|
Upon installing Window Maker and running it for the first time, the WPrefs
|
||||||
|
application is available under dock icon by default:
|
||||||
|
|
||||||
|
.. figure:: images/dock_tile.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: GNUstep Logo
|
||||||
|
|
||||||
|
|
||||||
|
although, depending on your distibution, location, menu entry or icon may be
|
||||||
|
different. Ususally Linux distributions position WPrefs as the second or third
|
||||||
|
icon in the Dock column by default, just above or below the terminal icon.
|
||||||
|
|
||||||
|
Double-clicking on this icon opens the WPrefs.app window. Across the top of
|
||||||
|
the window there is a row of icons, each one corresponding to a group of
|
||||||
|
settings options. There is a checkbox for balloon help on the bottom left of
|
||||||
|
the WPrefs.app window. Most of the following is taken directly from the content
|
||||||
|
of the ballon help dialogs.
|
||||||
|
|
||||||
|
.. figure:: images/prefs0.png
|
||||||
|
:alt: WPrefs.app after launching
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
WPrefs.app after launching
|
||||||
|
|
||||||
|
.. contents:: Available preference settings
|
||||||
|
:backlinks: none
|
||||||
|
:local:
|
||||||
|
|
||||||
|
Window focus
|
||||||
|
~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs1.png
|
||||||
|
:alt: WPrefs.app window focus controls
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
WPrefs.app window focus controls
|
||||||
|
|
||||||
|
The first icon from the left-hand side controls the way windows get
|
||||||
|
their focus (how they are activated).
|
||||||
|
|
||||||
|
- *Input focus mode* (two choices are available):
|
||||||
|
|
||||||
|
- **Manual** - click on the window to set keyboard input focus.
|
||||||
|
- **Auto** - set keyboard input focus to the window under the mouse pointer.
|
||||||
|
|
||||||
|
- *Install colormap in the window*
|
||||||
|
|
||||||
|
Select either (a) install the colormap in the window that has the input focus
|
||||||
|
or (b) that is under the mouse pointer.
|
||||||
|
|
||||||
|
- *Automatic window raise delay*
|
||||||
|
|
||||||
|
Setting the delay (in msec) for automatic window raising
|
||||||
|
|
||||||
|
- *Checkboxes*
|
||||||
|
|
||||||
|
The topmost check box prevents applications from receiving the focusing
|
||||||
|
mouse-click (I don't know why you would use this, but some people obviously
|
||||||
|
find it useful). The middle checkbox allows you to choose whether
|
||||||
|
newly-opened application windows automatically receive the focus, or must be
|
||||||
|
clicked to gain focus. The bottom allows you to bring window up while using
|
||||||
|
keyboard.
|
||||||
|
|
||||||
|
Window handling
|
||||||
|
~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs2.png
|
||||||
|
:alt: WPrefs.app window handling preferences
|
||||||
|
:figclass: borderless
|
||||||
|
|
||||||
|
WPrefs.app window handling preferences
|
||||||
|
|
||||||
|
Clicking the second icon allows you to select the window handling options.
|
||||||
|
Clicking on this icon opens a panel allowing you to define the default
|
||||||
|
placement and properties of windows in the workspace.
|
||||||
|
|
||||||
|
- *Window placement*
|
||||||
|
|
||||||
|
You can use the sliders around the screen representation to modify the
|
||||||
|
original placement. The gadget tells Window Maker how to order windows on the
|
||||||
|
screen: *Random*, *Manual*, *Cascade* or *Smart*. *Automatic* is the default.
|
||||||
|
|
||||||
|
- *Dragging a maximized window*
|
||||||
|
|
||||||
|
Set the behaviour of maximized window when click on titlebar and drag with
|
||||||
|
the mouse. Possible actions can be set for a window to:
|
||||||
|
|
||||||
|
- *changes its position*
|
||||||
|
- *restores its unmaximized geometry*
|
||||||
|
- *considers the window now unmaximized*
|
||||||
|
- *does not move the window*
|
||||||
|
|
||||||
|
- *Edge resistance*
|
||||||
|
|
||||||
|
To set the edge resistance and whether it resists or attracts windows.
|
||||||
|
According to the selection, windows resist or attract when moved against
|
||||||
|
other windows or the edges of the screen. The slider defines the threshold.
|
||||||
|
Some applications' title bars may disappear at the top of the screen, with
|
||||||
|
the window being too high for the screen area. Setting the edge resistance to
|
||||||
|
"0" may solve this problem
|
||||||
|
|
||||||
|
- *Mod+Wheel*
|
||||||
|
|
||||||
|
You can define, how many pixels window should increment/decrement by using
|
||||||
|
modifer keys + mouse wheel. By default, CTRL+wheel will change window size
|
||||||
|
horizontally, while SUPER+wheel vertically.
|
||||||
|
|
||||||
|
..
|
||||||
|
1. *Open dialogs in the same workspace as their owners*
|
||||||
|
|
||||||
|
Obviously, whether to force dialog boxes "spawned" by an application to open
|
||||||
|
in same workspace as their owners.
|
||||||
|
|
||||||
|
- *When maximizing*
|
||||||
|
|
||||||
|
This option allows the window to cover (or not) icons or the dock when
|
||||||
|
maximizing.
|
||||||
|
|
||||||
|
- *Opaque move/resize*
|
||||||
|
|
||||||
|
Clicking on *opaque move* causes windows to be moved with their contents
|
||||||
|
visible. If not checked, only the frame is displayed during the move. *Opaque
|
||||||
|
resize* makes window contents visible during resizing, otherwise only the
|
||||||
|
frame is displayed.
|
||||||
|
|
||||||
|
Menu
|
||||||
|
~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs3.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app menu preferences
|
||||||
|
|
||||||
|
WPrefs.app menu preferences
|
||||||
|
|
||||||
|
This panel allows you to set menu scrolling speed and submenu alignment with
|
||||||
|
the parent menu. In addition, two checkboxes are provided:
|
||||||
|
|
||||||
|
- The topmost box forces submenus to open inside the screen instead of
|
||||||
|
scrolling when they would otherwise be off-screen.
|
||||||
|
- The middle box allows submenus to open off-screen, but causes off-screen
|
||||||
|
menus to scroll when the mouse pointer is moved over them. This setting is
|
||||||
|
also of value if you "tear off" a menu and leave it positioned on the
|
||||||
|
desktop. In that case, you might wish to "park" the menu off-screen (with
|
||||||
|
only the titlebar showing, for example) and have it reappear when you mouse
|
||||||
|
over it. This is convenient in some workflows, as when you have multiple
|
||||||
|
applications open and you are using the window list menu to switch between
|
||||||
|
applications.
|
||||||
|
- The bottom box allows you to assign Vim-like keybindings for the selection
|
||||||
|
of menu items.
|
||||||
|
|
||||||
|
Icon
|
||||||
|
~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs4.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app icon preferences
|
||||||
|
|
||||||
|
WPrefs.app icon preferences
|
||||||
|
|
||||||
|
Set icon or miniwindow handling options.
|
||||||
|
|
||||||
|
- *Icon positioning*
|
||||||
|
|
||||||
|
This area defines the initial placement of miniwindows or icons will be
|
||||||
|
displayed: *bottom, top, right, left*...
|
||||||
|
|
||||||
|
- *Icon size*
|
||||||
|
|
||||||
|
Selects the size of the icons shown when a window is miniaturized and for
|
||||||
|
application icons. Dockapp developers usually assume that tiles will be 64x64
|
||||||
|
pixels, so it's probably a good idea to leave it at that size, unless you
|
||||||
|
know you won't be using dockapps.
|
||||||
|
|
||||||
|
- *Mini-Previews for Icons*
|
||||||
|
|
||||||
|
Allows to display content of the window, while hovering the mouse on
|
||||||
|
minimised application icon. The slider allows to set the size of the preview.
|
||||||
|
|
||||||
|
- *Iconification animation*
|
||||||
|
|
||||||
|
When an application's window is miniaturized, *miniaturization animation
|
||||||
|
style* offers four animation choices.
|
||||||
|
|
||||||
|
- Shrinking/Zooming,
|
||||||
|
- Spinning/Twisting,
|
||||||
|
- 3D Flipping, or
|
||||||
|
- None
|
||||||
|
|
||||||
|
- *Checkboxes*
|
||||||
|
|
||||||
|
The topmost box enables/disables auto-arrangement of icons. The middle box
|
||||||
|
places miniwindows for opened applications on all existing workspaces
|
||||||
|
(*omnipresent*). The bottom box, allows to use single click for minimized or
|
||||||
|
docked icons isntead of double clicking.
|
||||||
|
|
||||||
|
Ergonomy
|
||||||
|
~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs5.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app ergonomic settings
|
||||||
|
|
||||||
|
WPrefs.app ergonomic settings
|
||||||
|
|
||||||
|
Various types of information are defined in this panel.
|
||||||
|
|
||||||
|
- *Size display*
|
||||||
|
|
||||||
|
Window Maker provides a box that informs you about the size of a window
|
||||||
|
during resizing. You may choose to have this display (a) in the center of the
|
||||||
|
screen, (b) the center of the screen, (c) the center of the resized
|
||||||
|
window, (d) the side and bottom of the window as a technical drawing-like
|
||||||
|
size display or (e) not at all.
|
||||||
|
|
||||||
|
- *Position display*
|
||||||
|
|
||||||
|
Same information as above but regarding the screen placement of a
|
||||||
|
window while moving (no technical drawing-like option).
|
||||||
|
|
||||||
|
- *Appicon bouncing*
|
||||||
|
|
||||||
|
You can set the behaviour of AppIcons bounce here.
|
||||||
|
|
||||||
|
- *Show balloon text for*
|
||||||
|
|
||||||
|
Selecting checkboxes displays balloon text for: incomplete window titles,
|
||||||
|
miniwindow titles, application and dock icons, or internal help. This may be
|
||||||
|
useful for new users but many people find having help balloons pop out all
|
||||||
|
over the desktop gets annoying quickly. I use the *incomplete window title*
|
||||||
|
and the *miniwindow title* options and none of the others.
|
||||||
|
|
||||||
|
- *Workspace border*
|
||||||
|
|
||||||
|
You can set a small border for the workspace. This allows you to easily
|
||||||
|
access the clip (for instance) when windows are maximized.
|
||||||
|
|
||||||
|
..
|
||||||
|
- *Checkbox*
|
||||||
|
|
||||||
|
The top check box, if selected, raises a window when switching focus with the
|
||||||
|
keyboard. The bottom box enables a keyboard language selection button on
|
||||||
|
window titlebars (must have multiple keyboard maps/locales defined - this is
|
||||||
|
handy if you are working in multiple languages in applications such as word
|
||||||
|
processors, for example).
|
||||||
|
|
||||||
|
Search Path
|
||||||
|
~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs6.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app icon and pixmap search path settings
|
||||||
|
|
||||||
|
WPrefs.app icon and pixmap search path settings
|
||||||
|
|
||||||
|
This panel is used to add or delete directory paths to search for icons and
|
||||||
|
pixmaps. These paths are used in the *settings* dialogs for dockapps and docked
|
||||||
|
application icons, so having a good, complete set of defined paths is
|
||||||
|
important. This may require some manual intervention, especially upon initial
|
||||||
|
setup, since some default paths will not be present on your system, while
|
||||||
|
others not predefined will be present. Use the *add* and *remove* dialogs to
|
||||||
|
configure according to what is actually available.
|
||||||
|
|
||||||
|
Dock
|
||||||
|
~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs7.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app dock preference settings
|
||||||
|
|
||||||
|
WPrefs.app dock preference settings
|
||||||
|
|
||||||
|
In this panel you can fine-tune Dock/Clip/Drawer behaviour.
|
||||||
|
|
||||||
|
- *Clip autocollapsing delays* and *Clip autoraising delays* lets you choose
|
||||||
|
delays for expansion, collapsing, raising and lowering the Clip
|
||||||
|
|
||||||
|
- *Dock/Clip/Drawer*
|
||||||
|
|
||||||
|
First icon enables/disables thr Dock, vertical bar for your appicons and
|
||||||
|
applications. Second allows to enables/disables Clip, the tile with the
|
||||||
|
paperclip icon. Last one enables/disables Drawer - a special dockapp for
|
||||||
|
keeping the applications icons horizontally.
|
||||||
|
|
||||||
|
Workspace
|
||||||
|
~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs8.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app workspace preference settings
|
||||||
|
|
||||||
|
WPrefs.app workspace preference settings
|
||||||
|
|
||||||
|
This panel defines navigation features within the workspace.
|
||||||
|
|
||||||
|
- *Workspace navigation*
|
||||||
|
|
||||||
|
Selecting the first checkbox allows switching to the first workspace when
|
||||||
|
switching past the last workspace and vice-versa. Selecting the second
|
||||||
|
checkbox allows windows to be dragged from one workspace to another.
|
||||||
|
Selecting the third checkbox cause a new workspace to be created when windows
|
||||||
|
are dragged off the last existing workspace. A selection menu allows you to
|
||||||
|
define where the workspace name is displayed each time you move from one
|
||||||
|
workspace to another (or not to display the workspace name at all).
|
||||||
|
|
||||||
|
Other
|
||||||
|
~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs9.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app other workspace configuration settings
|
||||||
|
|
||||||
|
WPrefs.app other workspace configuration settings
|
||||||
|
|
||||||
|
This panel sets icon slide speed, shade animation speed, smooth scaling and
|
||||||
|
titlebar control (button) style. Animations and sound are also defined here.
|
||||||
|
|
||||||
|
- *Icon slide speed*
|
||||||
|
|
||||||
|
Selecting the left icon gives the slowest result, selecting the right one
|
||||||
|
gives the fastest.
|
||||||
|
|
||||||
|
- *Shade animation speed*
|
||||||
|
|
||||||
|
Same as icon slide
|
||||||
|
|
||||||
|
- *Titlebar style*
|
||||||
|
|
||||||
|
To choose a more or less "NeXTish" titlebar. (The top version is "newer,"
|
||||||
|
while the bottom left is ca. 1990 and the bottom right is ca. 1988.)
|
||||||
|
|
||||||
|
- *Animations*
|
||||||
|
|
||||||
|
Selecting the animations icon enables animations for window miniaturization,
|
||||||
|
shading and so on. Selecting the superfluous icon enables "ghosting" of dock
|
||||||
|
(when moved - especially when moved from one side of the screen to the other)
|
||||||
|
and explosion animation for icons you remove from the dock.
|
||||||
|
|
||||||
|
- *Smooth scaling*
|
||||||
|
|
||||||
|
If selected, neutralizes pixelization effect on background images. The
|
||||||
|
side-effect is to slow down background image loading.
|
||||||
|
|
||||||
|
- *Dithering colormap for 8bpp*
|
||||||
|
|
||||||
|
For 8-bit displays (anyone still have one of these?) this enables dithering
|
||||||
|
and changes the number of colors to reserve either for applications or for
|
||||||
|
Window Maker. The Default setting almost always gives the best result.
|
||||||
|
|
||||||
|
Applications menu
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs10.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app application menu configuration
|
||||||
|
|
||||||
|
WPrefs.app application menu configuration
|
||||||
|
|
||||||
|
In this panel the applications menu and the commands to launch each application
|
||||||
|
can be defined. This panel has been changed in version 0.63.and later. It now
|
||||||
|
displays the actual menu thus allowing direct editing. This can be done only if
|
||||||
|
the menu is in property list format. Menus in plain text format can't be
|
||||||
|
edited in WPrefs. Check the README file in the Window Maker directory on how to
|
||||||
|
use one or the other.
|
||||||
|
|
||||||
|
Keyboard shortcut
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs11.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app keyboard shortcut settings
|
||||||
|
|
||||||
|
WPrefs.app keyboard shortcut settings
|
||||||
|
|
||||||
|
Many actions in Window Maker have predefined keyboard shortcuts. These actions
|
||||||
|
mainly concern windows and workspaces. Modifying, adding or removing shortcuts
|
||||||
|
can be done in this panel. Defining a shortcut can be done interactively,
|
||||||
|
capturing the key combination.
|
||||||
|
|
||||||
|
Mouse
|
||||||
|
~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs12.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app mouse configuration
|
||||||
|
|
||||||
|
WPrefs.app mouse configuration
|
||||||
|
|
||||||
|
The mouse grab modifier represents the keyboard shortcut to use for actions
|
||||||
|
like dragging windows with the mouse or clicking inside the window. Mod1 (Alt)
|
||||||
|
is the default.
|
||||||
|
|
||||||
|
This panel sets the mouse speed and double-click delay. Mouse button bindings
|
||||||
|
can be defined and can be disabled or enabled.
|
||||||
|
|
||||||
|
The default setting binds the right mouse button to the applications menu,
|
||||||
|
middle button to the window list menu and left button to window selection
|
||||||
|
(focus). Of course, with a two button mouse, the middle button binding will not
|
||||||
|
work. However, on some OSes pressing both buttons at once gives the same result
|
||||||
|
as the one obtained with middle button.
|
||||||
|
|
||||||
|
Starting from version 0.65 on, the mouse wheel can be used to switch
|
||||||
|
workspaces. This is not default behavior and must be enabled here.
|
||||||
|
|
||||||
|
If mouse have more than 3 buttons and/or tilt, they can be bound to some
|
||||||
|
actions.
|
||||||
|
|
||||||
|
Appearance
|
||||||
|
~~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs13.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app appearance settings
|
||||||
|
|
||||||
|
WPrefs.app appearance settings
|
||||||
|
|
||||||
|
In this panel, everything related to the appearance of the GUI (except the
|
||||||
|
background color or image) can be configured. Windows, menus and icons can have
|
||||||
|
their own background "texture," meaning color gradients of various types can be
|
||||||
|
configured here. Texture, color, menu style, and title alignment can be fully
|
||||||
|
customized.
|
||||||
|
|
||||||
|
Font configuration
|
||||||
|
~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs14.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: Wprefs.app font configuration options
|
||||||
|
|
||||||
|
Wprefs.app font configuration options
|
||||||
|
|
||||||
|
This panel allows you to configure fonts for the window and menu titlebars, for
|
||||||
|
the menu body text, and for the icon and clip text. In addition, a font may be
|
||||||
|
defined for desktop messages.
|
||||||
|
|
||||||
|
Expert user
|
||||||
|
~~~~~~~~~~~
|
||||||
|
|
||||||
|
.. figure:: images/prefs15.png
|
||||||
|
:figclass: borderless
|
||||||
|
:alt: WPrefs.app expert user settings
|
||||||
|
|
||||||
|
WPrefs.app expert user settings
|
||||||
|
|
||||||
|
Using this panel implies some knowledge. Many options are available. Among
|
||||||
|
these are:
|
||||||
|
|
||||||
|
- Disabling miniwindows (useful when using with KDE and GNOME)
|
||||||
|
- Using (or not) xset
|
||||||
|
- Saving session on exit (highly recommended!)
|
||||||
|
- Using SaveUnder in different objects
|
||||||
|
- Using Win style cycling (added from version 0.63.0)
|
||||||
|
- Disabling confirmation panel for the kill command
|
||||||
|
- Disabling cycling colors highlighting of icons
|
||||||
|
- Multi head related options
|
||||||
|
- Screen edge snapping
|
||||||
|
|
||||||
|
Editing the configuration file
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
If needed, the defaults configuration file found in
|
||||||
|
$(HOME)/GNUstep/Defaults/WindowMaker can be edited by hand. This file is a
|
||||||
|
database with a property list syntax. When selecting an option in WPrefs.app,
|
||||||
|
it's written down into this file. When modifying this defaults file, it's very
|
||||||
|
important to follow the syntax.
|
||||||
@@ -1,366 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Guided Tour - Windows
|
|
||||||
---
|
|
||||||
<h1>
|
|
||||||
<center>Windows</center>
|
|
||||||
</h1>
|
|
||||||
|
|
||||||
<center><a href="index.html">Back
|
|
||||||
to Index</a>
|
|
||||||
</center>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li><a href="#desc">Description</a></li>
|
|
||||||
<li><a href="#focus">Focusing</a></li>
|
|
||||||
<li><a href="#order">Reordering</a></li>
|
|
||||||
<li><a href="#move">Moving</a></li>
|
|
||||||
<li><a href="#max">Maximizing</a></li>
|
|
||||||
<li><a href="#mini">Miniturizing</a></li>
|
|
||||||
<li><a href="#size">Resizing</a></li>
|
|
||||||
<li><a href="#shade">Shading</a></li>
|
|
||||||
<li><a href="#hide">Hiding</a></li>
|
|
||||||
<li><a href="#close">Closing</a></li>
|
|
||||||
<li><a href="#menu">Commands menu</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="desc">Description</a></h2>
|
|
||||||
|
|
||||||
<p>General layout of a window:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p><em>Titlebar</em>: Gives the name of the application, document
|
|
||||||
or window. It's color (usually) indicates the focus state (active or
|
|
||||||
inactive window). I say (usually) because some styles and themes do not
|
|
||||||
provide different colors for focused or unfocused windows - although
|
|
||||||
this is rare (and, I might add, cruel!).</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Miniaturize button</em>:
|
|
||||||
Clicking on the left button of the titlebar iconifies the window.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Close button</em>:
|
|
||||||
Clicking on the right button of the titlebar closes the window or kills
|
|
||||||
the application.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Resizebar</em>:
|
|
||||||
The bottom part of the window. Dragging the resizebar with the mouse
|
|
||||||
resizes the window.</p>
|
|
||||||
</li>
|
|
||||||
<li><em>Client area</em>:
|
|
||||||
The window content. It can be an application, some text, a picture... </li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="focus">Focusing</a></h2>
|
|
||||||
|
|
||||||
<p>A window can be in two states: focused or unfocused. The focused
|
|
||||||
window is the active window, the one receiving keystrokes. It's
|
|
||||||
titlebar has a differentiated color (usually!). Dialog windows or
|
|
||||||
panels opened
|
|
||||||
from a main window, automatically get the focus. As soon as they are
|
|
||||||
closed, the main window gets the focus back.</p>
|
|
||||||
|
|
||||||
<p>Two modes are available to focus a window:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p><em>Click to focus mode</em>: clicking on any part of the window
|
|
||||||
activates it.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Focus follows mouse mode</em>: moving the mouse pointer over
|
|
||||||
the window activates it. </p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="order">Reordering</a></h2>
|
|
||||||
|
|
||||||
<p>Windows can overlap other windows, in which case some will hide all
|
|
||||||
or part of others. Clicking on the titlebar or resizebar with the left
|
|
||||||
mouse button brings a window to the "front" (gives that window focus).
|
|
||||||
Selecting a window from the window list menu does the same.</p>
|
|
||||||
|
|
||||||
<p>Some key bindings are provided and are very useful when a window is
|
|
||||||
hidden behind others.</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p><em>Meta key + click on the titlebar with left mouse button</em>-<br>
|
|
||||||
sends the window to the back and gives focus to the topmost window.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Meta key + click on the client area with left mouse button</em>-<br>
|
|
||||||
brings the window to the front and focuses it.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Meta key + Up Arrow key</em>-<br>
|
|
||||||
brings the current focused window to the front.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p><em>Meta key + Down Arrow key</em>-<br>
|
|
||||||
sends the current focused window to the back.</p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>Many window attributes can be modified from the attributes panel in
|
|
||||||
the window commands menu (clicking the right mouse button on the
|
|
||||||
titlebar). From version 0.62.0, window cycling was changed to Windows
|
|
||||||
style (Alt-Tab).</p>
|
|
||||||
|
|
||||||
<h2><a id="move">Moving</a></h2>
|
|
||||||
|
|
||||||
<p>Clicking on the titlebar of a window and dragging it with the left
|
|
||||||
mouse button pressed moves the window.
|
|
||||||
The little box in the middle indicates the current position in pixels
|
|
||||||
relative to the top left corner of the screen (+0 +0).
|
|
||||||
Extra key bindings give more flexibility.
|
|
||||||
- Dragging the titlebar with middle mouse button: moves the window
|
|
||||||
without changing it's stacking order.
|
|
||||||
- Dragging the titlebar + Ctrl key: moves the window without focusing
|
|
||||||
it.
|
|
||||||
- Dragging the client area or the resizebar + Meta key: moves the
|
|
||||||
window.</p>
|
|
||||||
|
|
||||||
<h2><a id="max">Maximizing</a></h2>
|
|
||||||
|
|
||||||
<p>Double-clicking the titlebar while holding the Ctrl key resizes the
|
|
||||||
window's height to full screen.</p>
|
|
||||||
|
|
||||||
<p>Double-clicking the titlebar while holding the Shift key resizes the
|
|
||||||
window's width to full screen.</p>
|
|
||||||
|
|
||||||
<p>Double-clicking the titlebar while holding both Ctrl and Shift keys
|
|
||||||
resizes the window's height and width to full screen.
|
|
||||||
Double-clicking the titlebar while holding Ctrl or Shift key restores
|
|
||||||
the initial size of the window.</p>
|
|
||||||
|
|
||||||
<p>To prevent a maximized window from covering the dock, the "Keep on
|
|
||||||
top" option must be selected from the dock menu.</p>
|
|
||||||
|
|
||||||
<h2><a id="mini">Miniaturizing</a></h2>
|
|
||||||
|
|
||||||
<p>Clicking the miniaturize button (the left one on the titlebar)
|
|
||||||
shrinks the window into a miniwindow with an icon and a title and
|
|
||||||
places it at the bottom of the screen. Hitting the assigned shortcut
|
|
||||||
does the same. (Default is Meta + m.)</p>
|
|
||||||
|
|
||||||
<p>The miniwindow is different from the application icon in that the
|
|
||||||
miniwindow cannot be docked.</p>
|
|
||||||
|
|
||||||
<p>Double-clicking in the miniwindow restores a miniaturized window.
|
|
||||||
Double-clicking in an application icon with the middle mouse button
|
|
||||||
restores all miniaturized and hidden windows of this application.</p>
|
|
||||||
|
|
||||||
<h2><a id="size">Resizing</a></h2>
|
|
||||||
|
|
||||||
<p>The resizebar, at the bottom of the window, is divided into three
|
|
||||||
regions: left end region, middle region and right end region.</p>
|
|
||||||
|
|
||||||
<p>Depending upon the region you click, the resize operation is
|
|
||||||
constrained to one direction. </p>
|
|
||||||
|
|
||||||
<p>Clicking in the middle region of the resizebar and dragging it
|
|
||||||
vertically changes the window's height.</p>
|
|
||||||
|
|
||||||
<p>Clicking in either the left or right region of the resizebar and
|
|
||||||
dragging it horizontally changes the window's width. </p>
|
|
||||||
|
|
||||||
<p>Dragging with Shift key pressed gives the same result. Clicking in
|
|
||||||
either end region of the resizebar and dragging it diagonally changes
|
|
||||||
both height and width.</p>
|
|
||||||
|
|
||||||
<p>Key bindings give more options.</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<p>Dragging the window in the client area with the right mouse
|
|
||||||
button + Meta key resizes the window.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>Dragging the resizebar with the middle mouse button resizes the
|
|
||||||
window without bringing it to the front.</p>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>Dragging the resizebar + Ctrl key resizes the window without
|
|
||||||
focusing it.</p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2><a id="shade">Shading</a></h2>
|
|
||||||
|
|
||||||
<p>Double-clicking on the titlebar of a window shades it.
|
|
||||||
This means the window rolls up to it's titlebar. A shaded window has
|
|
||||||
almost the same properties as a normal window. It can be miniaturized
|
|
||||||
or closed.</p>
|
|
||||||
|
|
||||||
<p>From version 0.80.0, you can shade/unshade a window using a mouse
|
|
||||||
wheel on its titlebar. This of course, assumes your system is able to
|
|
||||||
manage a mouse wheel. The WMGLOBAL file in you $HOME/GNUstep/Defaults
|
|
||||||
should contain two new directives : MouseWheelUp and MouseWheelDown.</p>
|
|
||||||
|
|
||||||
<h2><a id="hide">Hiding</a></h2>
|
|
||||||
|
|
||||||
<p>Clicking the the miniaturize button (the left one on the titlebar)
|
|
||||||
with the right mouse button hides the application.
|
|
||||||
Using the middle mouse button unhides the application, simultaneously
|
|
||||||
opening the windows list menu and selecting the hidden application.
|
|
||||||
(Pressing both buttons at once with a two buttons mouse does the same
|
|
||||||
on some OSes.) If this doesn't work, use the F11 key binding (the
|
|
||||||
default) to open the windows list menu.</p>
|
|
||||||
|
|
||||||
<h2><a id="close">Closing</a></h2>
|
|
||||||
|
|
||||||
<p>Clicking the close button (the right one on the titlebar) closes the
|
|
||||||
window. When the close button has a different form (not an X), it means
|
|
||||||
an application is running in that window.
|
|
||||||
Double-clicking in this close button kills the application. This can be
|
|
||||||
done too with <em>Ctrl key + clicking the close button</em>.</p>
|
|
||||||
|
|
||||||
<p>Usually, it's much better to exit an application from inside
|
|
||||||
(through it's menu, for instance).</p>
|
|
||||||
|
|
||||||
<h2><a id="menu">Commands menu</a></h2>
|
|
||||||
|
|
||||||
<p>Clicking on the titlebar of a window with the right mouse button
|
|
||||||
opens a menu containing commands applying to this window. The keyboard
|
|
||||||
shortcut Ctrl + Esc can replace the click on the titlebar. Esc closes
|
|
||||||
this menu.</p>
|
|
||||||
|
|
||||||
<p><strong>List of Commands Menu commands:</strong></p>
|
|
||||||
|
|
||||||
<p><em>Maximize/Unmaximize</em>:<br>
|
|
||||||
Either maximizes or returns the window to it's initial state.</p>
|
|
||||||
|
|
||||||
<p><em>Miniaturize</em>:<br>
|
|
||||||
Miniaturizes the window (miniwindow). The keyboard shortcut is Meta + m.</p>
|
|
||||||
|
|
||||||
<p><em>Shade/Unshade</em>: Shades (or unshades) the window.</p>
|
|
||||||
|
|
||||||
<p><em>Hide</em>:<br>
|
|
||||||
Hides all windows of the application. Clicking on the application icon
|
|
||||||
unhides the windows.</p>
|
|
||||||
|
|
||||||
<p><em>Hide Others</em>:<br>
|
|
||||||
From version 0.80.1 it is possible to hide all others windows. The
|
|
||||||
window list menu allows to unhide selecting the window to redisplay.</p>
|
|
||||||
|
|
||||||
<p><em>Resize/Move</em>:<br>
|
|
||||||
When this menu option is selected, the window is ready to be moved or
|
|
||||||
resized (the little box with coordinates is displayed inside the
|
|
||||||
window). Clicking on the titlebar deselects the option.</p>
|
|
||||||
|
|
||||||
<p><em>Select</em>:<br>
|
|
||||||
Obviously selects the window which then can be moved or resized...
|
|
||||||
Reselecting this option deselects the window.</p>
|
|
||||||
|
|
||||||
<p><em>Move to</em>:<br>
|
|
||||||
Allows to move the window to another workspace (if existing!).</p>
|
|
||||||
|
|
||||||
<p><em>Attributes</em>:<br>
|
|
||||||
Opens the attributes panel to edit attributes and options for the
|
|
||||||
window.</p>
|
|
||||||
|
|
||||||
<p>Five options are available in this panel: Window specification,
|
|
||||||
Window attributes, Advanced options, Icon and initial workspace and
|
|
||||||
application specific.</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>Window specification: Defines that the configuration will apply
|
|
||||||
to windows having their WM_CLASS property set to the selected name.
|
|
||||||
This is because windows can have different names.
|
|
||||||
From version 0.65.0, you can select the window to get the right
|
|
||||||
specification.</li>
|
|
||||||
<li>
|
|
||||||
<p>Window attributes: selecting the corresponding checkbox allows
|
|
||||||
to: </p>
|
|
||||||
<ul>
|
|
||||||
<li>disable titlebar</li>
|
|
||||||
<li>disable resizebar</li>
|
|
||||||
<li>disable close button</li>
|
|
||||||
<li>disable miniaturize button</li>
|
|
||||||
<li>disable border</li>
|
|
||||||
<li>keep on top</li>
|
|
||||||
<li>keep at bottom</li>
|
|
||||||
<li>omnipresent</li>
|
|
||||||
<li>start miniaturized</li>
|
|
||||||
<li>start maximized</li>
|
|
||||||
<li>full screen maximization</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>Advanced options: selecting the corresponding checkbox allows
|
|
||||||
to: </p>
|
|
||||||
<ul>
|
|
||||||
<li>don't bind keyboard shortcuts</li>
|
|
||||||
<li>don't bind mouse clicks</li>
|
|
||||||
<li>don't show in the window list</li>
|
|
||||||
<li>don't let the window take focus</li>
|
|
||||||
<li>keep inside screen</li>
|
|
||||||
<li>ignore "Hide others"</li>
|
|
||||||
<li>ignore "Save session"</li>
|
|
||||||
<li>emulate application icon</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>Icon and initial workspace: allow to </p>
|
|
||||||
<ul>
|
|
||||||
<li>choose an icon browsing directories</li>
|
|
||||||
<li>ignore client supplied icon when selecting the checkbox</li>
|
|
||||||
<li>define initial workspace</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>Application specific: selecting checkboxes allows to:</p>
|
|
||||||
<ul>
|
|
||||||
<li>start hidden or with no application icon</li>
|
|
||||||
<li>collapse application icons (from version 0.65.0)</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<p>From version 0.80.0 a new checkbox is available : "Shared
|
|
||||||
application icon". It replaces the "Collapse application icon"
|
|
||||||
checkbox. That is, you can have many open windows from the same
|
|
||||||
application with only one appicon. This feature is on by default except
|
|
||||||
for some incompatible applications. This behavior can be defined for
|
|
||||||
all windows in the Window Specification inspector selecting the
|
|
||||||
Defaults for all windows checkbox.</p>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>You can revert to the old behavior changing SharedAppIcon to "No" in
|
|
||||||
the WMWindowAttributes file, either in the global domain or in the
|
|
||||||
local domain : $HOME/GNUstep/Defaults.</p>
|
|
||||||
|
|
||||||
<p><em>Options</em>:</p>
|
|
||||||
|
|
||||||
<p>Submenu options allow to:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li>to keep the window on top</li>
|
|
||||||
<li>to keep the window at bottom</li>
|
|
||||||
<li>to keep the window omnipresent</li>
|
|
||||||
<li>to set shortcuts for the window</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>Ten shortcuts are available as soon as they have been set in the
|
|
||||||
keyboard shortcut dialog. The shortcuts to define are those named
|
|
||||||
"Shortcut for window + figure". Then, using the defined shortcut gives
|
|
||||||
the focus to the window.</p>
|
|
||||||
|
|
||||||
<p><em>Close</em>:<br>
|
|
||||||
Closes the window</p>
|
|
||||||
|
|
||||||
<p><em>Kill</em>:<br>
|
|
||||||
Kills the application.
|
|
||||||
Usually, an application must be closed from inside (menu or other
|
|
||||||
means). This option is especially reserved for "emergency" cases.</p>
|
|
||||||
308
docs/guidedtour/win.rst
Normal file
@@ -0,0 +1,308 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Guided Tour - Windows
|
||||||
|
---
|
||||||
|
|
||||||
|
Windows
|
||||||
|
=======
|
||||||
|
|
||||||
|
.. contents::
|
||||||
|
:depth: 1
|
||||||
|
:backlinks: none
|
||||||
|
:local:
|
||||||
|
|
||||||
|
Description
|
||||||
|
-----------
|
||||||
|
|
||||||
|
General layout of a window:
|
||||||
|
|
||||||
|
- *Titlebar*: Gives the name of the application, document or window. It's color
|
||||||
|
(usually) indicates the focus state (active or inactive window). I say
|
||||||
|
(usually) because some styles and themes do not provide different colors for
|
||||||
|
focused or unfocused windows - although this is rare (and, I might add,
|
||||||
|
cruel!).
|
||||||
|
- *Miniaturize button*: Clicking on the left button of the titlebar iconifies
|
||||||
|
the window.
|
||||||
|
- *Close button*: Clicking on the right button of the titlebar closes the
|
||||||
|
window or kills the application.
|
||||||
|
- *Resizebar*: The bottom part of the window. Dragging the resizebar with the
|
||||||
|
mouse resizes the window.
|
||||||
|
- *Client area*: The window content. It can be an application, some text, a
|
||||||
|
picture...
|
||||||
|
|
||||||
|
Focusing
|
||||||
|
--------
|
||||||
|
|
||||||
|
A window can be in two states: focused or unfocused. The focused window is the
|
||||||
|
active window, the one receiving keystrokes. It's titlebar has a differentiated
|
||||||
|
color (usually!). Dialog windows or panels opened from a main window,
|
||||||
|
automatically get the focus. As soon as they are closed, the main window gets
|
||||||
|
the focus back.
|
||||||
|
|
||||||
|
Two modes are available to focus a window:
|
||||||
|
|
||||||
|
- *Click to focus mode*: clicking on any part of the window activates it.
|
||||||
|
- *Focus follows mouse mode*: moving the mouse pointer over the window
|
||||||
|
activates it.
|
||||||
|
|
||||||
|
Reordering
|
||||||
|
----------
|
||||||
|
|
||||||
|
Windows can overlap other windows, in which case some will hide all or part of
|
||||||
|
others. Clicking on the titlebar or resizebar with the left mouse button brings
|
||||||
|
a window to the "front" (gives that window focus). Selecting a window from the
|
||||||
|
window list menu does the same.
|
||||||
|
|
||||||
|
Some key bindings are provided and are very useful when a window is hidden
|
||||||
|
behind others.
|
||||||
|
|
||||||
|
- *Meta key + click on the titlebar with left mouse button*-
|
||||||
|
|
||||||
|
sends the window to the back and gives focus to the topmost window.
|
||||||
|
|
||||||
|
- *Meta key + click on the client area with left mouse button*-
|
||||||
|
|
||||||
|
brings the window to the front and focuses it.
|
||||||
|
|
||||||
|
- *Meta key + Up Arrow key*-
|
||||||
|
|
||||||
|
brings the current focused window to the front.
|
||||||
|
|
||||||
|
- *Meta key + Down Arrow key*-
|
||||||
|
|
||||||
|
sends the current focused window to the back.
|
||||||
|
|
||||||
|
Many window attributes can be modified from the attributes panel in the window
|
||||||
|
commands menu (clicking the right mouse button on the titlebar). From version
|
||||||
|
0.62.0, window cycling was changed to Windows style (Alt-Tab).
|
||||||
|
|
||||||
|
Moving
|
||||||
|
------
|
||||||
|
|
||||||
|
Clicking on the titlebar of a window and dragging it with the left mouse button
|
||||||
|
pressed moves the window. The little box in the middle indicates the current
|
||||||
|
position in pixels relative to the top left corner of the screen (+0 +0). Extra
|
||||||
|
key bindings give more flexibility.
|
||||||
|
|
||||||
|
- Dragging the titlebar with middle mouse button: moves the window
|
||||||
|
without changing it's stacking order.
|
||||||
|
- Dragging the titlebar + Ctrl key: moves the window without focusing it.
|
||||||
|
- Dragging the client area or the resizebar + Meta key: moves the window.
|
||||||
|
|
||||||
|
Maximizing
|
||||||
|
----------
|
||||||
|
|
||||||
|
Double-clicking the titlebar while holding the Ctrl key resizes the window's
|
||||||
|
height to full screen.
|
||||||
|
|
||||||
|
Double-clicking the titlebar while holding the Shift key resizes the window's
|
||||||
|
width to full screen.
|
||||||
|
|
||||||
|
Double-clicking the titlebar while holding both Ctrl and Shift keys resizes the
|
||||||
|
window's height and width to full screen. Double-clicking the titlebar while
|
||||||
|
holding Ctrl or Shift key restores the initial size of the window.
|
||||||
|
|
||||||
|
To prevent a maximized window from covering the dock, the "Keep on top" option
|
||||||
|
must be selected from the dock menu.
|
||||||
|
|
||||||
|
Miniaturizing
|
||||||
|
-------------
|
||||||
|
|
||||||
|
Clicking the miniaturize button (the left one on the titlebar) shrinks the
|
||||||
|
window into a miniwindow with an icon and a title and places it at the bottom
|
||||||
|
of the screen. Hitting the assigned shortcut does the same. (Default is Meta +
|
||||||
|
m.)
|
||||||
|
|
||||||
|
The miniwindow is different from the application icon in that the miniwindow
|
||||||
|
cannot be docked.
|
||||||
|
|
||||||
|
Double-clicking in the miniwindow restores a miniaturized window.
|
||||||
|
Double-clicking in an application icon with the middle mouse button restores
|
||||||
|
all miniaturized and hidden windows of this application.
|
||||||
|
|
||||||
|
Resizing
|
||||||
|
--------
|
||||||
|
|
||||||
|
The resizebar, at the bottom of the window, is divided into three regions: left
|
||||||
|
end region, middle region and right end region.
|
||||||
|
|
||||||
|
Depending upon the region you click, the resize operation is constrained to one
|
||||||
|
direction.
|
||||||
|
|
||||||
|
Clicking in the middle region of the resizebar and dragging it vertically
|
||||||
|
changes the window's height.
|
||||||
|
|
||||||
|
Clicking in either the left or right region of the resizebar and dragging it
|
||||||
|
horizontally changes the window's width.
|
||||||
|
|
||||||
|
Dragging with Shift key pressed gives the same result. Clicking in either end
|
||||||
|
region of the resizebar and dragging it diagonally changes both height and
|
||||||
|
width.
|
||||||
|
|
||||||
|
Key bindings give more options.
|
||||||
|
|
||||||
|
- Dragging the window in the client area with the right mouse button + Meta key
|
||||||
|
resizes the window.
|
||||||
|
- Dragging the resizebar with the middle mouse button resizes the window
|
||||||
|
without bringing it to the front.
|
||||||
|
- Dragging the resizebar + Ctrl key resizes the window without focusing it.
|
||||||
|
|
||||||
|
Shading
|
||||||
|
-------
|
||||||
|
|
||||||
|
Double-clicking on the titlebar of a window shades it. This means the window
|
||||||
|
rolls up to it's titlebar. A shaded window has almost the same properties as a
|
||||||
|
normal window. It can be miniaturized or closed.
|
||||||
|
|
||||||
|
From version 0.80.0, you can shade/unshade a window using a mouse wheel on its
|
||||||
|
titlebar. This of course, assumes your system is able to manage a mouse wheel.
|
||||||
|
The WMGLOBAL file in you $HOME/GNUstep/Defaults should contain two new
|
||||||
|
directives : MouseWheelUp and MouseWheelDown.
|
||||||
|
|
||||||
|
Hiding
|
||||||
|
------
|
||||||
|
|
||||||
|
Clicking the the miniaturize button (the left one on the titlebar) with the
|
||||||
|
right mouse button hides the application. Using the middle mouse button unhides
|
||||||
|
the application, simultaneously opening the windows list menu and selecting the
|
||||||
|
hidden application. (Pressing both buttons at once with a two buttons mouse
|
||||||
|
does the same on some OSes.) If this doesn't work, use the F11 key binding (the
|
||||||
|
default) to open the windows list menu.
|
||||||
|
|
||||||
|
Closing
|
||||||
|
-------
|
||||||
|
|
||||||
|
Clicking the close button (the right one on the titlebar) closes the window.
|
||||||
|
When the close button has a different form (not an X), it means an application
|
||||||
|
is running in that window. Double-clicking in this close button kills the
|
||||||
|
application. This can be done too with *Ctrl key + clicking the close button*.
|
||||||
|
|
||||||
|
Usually, it's much better to exit an application from inside (through it's
|
||||||
|
menu, for instance).
|
||||||
|
|
||||||
|
Commands menu
|
||||||
|
-------------
|
||||||
|
|
||||||
|
Clicking on the titlebar of a window with the right mouse button opens a menu
|
||||||
|
containing commands applying to this window. The keyboard shortcut Ctrl + Esc
|
||||||
|
can replace the click on the titlebar. Esc closes this menu.
|
||||||
|
|
||||||
|
List of Commands Menu commands:
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
*Maximize/Unmaximize*:
|
||||||
|
|
||||||
|
Either maximizes or returns the window to it's initial state.
|
||||||
|
|
||||||
|
*Miniaturize*:
|
||||||
|
|
||||||
|
Miniaturizes the window (miniwindow). The keyboard shortcut is Meta + m.
|
||||||
|
|
||||||
|
*Shade/Unshade*: Shades (or unshades) the window.
|
||||||
|
|
||||||
|
*Hide*:
|
||||||
|
|
||||||
|
Hides all windows of the application. Clicking on the application icon unhides
|
||||||
|
the windows.
|
||||||
|
|
||||||
|
*Hide Others*:
|
||||||
|
|
||||||
|
From version 0.80.1 it is possible to hide all others windows. The window list
|
||||||
|
menu allows to unhide selecting the window to redisplay.
|
||||||
|
|
||||||
|
*Resize/Move*:
|
||||||
|
|
||||||
|
When this menu option is selected, the window is ready to be moved or resized
|
||||||
|
(the little box with coordinates is displayed inside the window). Clicking on
|
||||||
|
the titlebar deselects the option.
|
||||||
|
|
||||||
|
*Select*:
|
||||||
|
|
||||||
|
Obviously selects the window which then can be moved or resized... Reselecting
|
||||||
|
this option deselects the window.
|
||||||
|
|
||||||
|
*Move to*:
|
||||||
|
|
||||||
|
Allows to move the window to another workspace (if existing!).
|
||||||
|
|
||||||
|
*Attributes*:
|
||||||
|
|
||||||
|
Opens the attributes panel to edit attributes and options for the window.
|
||||||
|
|
||||||
|
Five options are available in this panel: Window specification, Window
|
||||||
|
attributes, Advanced options, Icon and initial workspace and application
|
||||||
|
specific.
|
||||||
|
|
||||||
|
- Window specification: Defines that the configuration will apply to windows
|
||||||
|
having their WM_CLASS property set to the selected name. This is because
|
||||||
|
windows can have different names. From version 0.65.0, you can select the
|
||||||
|
window to get the right specification.
|
||||||
|
|
||||||
|
- Window attributes: selecting the corresponding checkbox allows to:
|
||||||
|
|
||||||
|
- disable titlebar
|
||||||
|
- disable resizebar
|
||||||
|
- disable close button
|
||||||
|
- disable miniaturize button
|
||||||
|
- disable border
|
||||||
|
- keep on top
|
||||||
|
- keep at bottom
|
||||||
|
- omnipresent
|
||||||
|
- start miniaturized
|
||||||
|
- start maximized
|
||||||
|
- full screen maximization
|
||||||
|
|
||||||
|
- Advanced options: selecting the corresponding checkbox allows to:
|
||||||
|
|
||||||
|
- don't bind keyboard shortcuts
|
||||||
|
- don't bind mouse clicks
|
||||||
|
- don't show in the window list
|
||||||
|
- don't let the window take focus
|
||||||
|
- keep inside screen
|
||||||
|
- ignore "Hide others"
|
||||||
|
- ignore "Save session"
|
||||||
|
- emulate application icon
|
||||||
|
|
||||||
|
- Icon and initial workspace: allow to
|
||||||
|
|
||||||
|
- choose an icon browsing directories
|
||||||
|
- ignore client supplied icon when selecting the checkbox
|
||||||
|
- define initial workspace
|
||||||
|
|
||||||
|
- Application specific: selecting checkboxes allows to:
|
||||||
|
|
||||||
|
- start hidden or with no application icon
|
||||||
|
- collapse application icons (from version 0.65.0)
|
||||||
|
|
||||||
|
- From version 0.80.0 a new checkbox is available : "Shared application icon".
|
||||||
|
It replaces the "Collapse application icon" checkbox. That is, you can have
|
||||||
|
many open windows from the same application with only one appicon. This
|
||||||
|
feature is on by default except for some incompatible applications. This
|
||||||
|
behavior can be defined for all windows in the Window Specification inspector
|
||||||
|
selecting the Defaults for all windows checkbox.
|
||||||
|
|
||||||
|
You can revert to the old behavior changing SharedAppIcon to "No" in the
|
||||||
|
WMWindowAttributes file, either in the global domain or in the local domain :
|
||||||
|
$HOME/GNUstep/Defaults.
|
||||||
|
|
||||||
|
*Options*:
|
||||||
|
|
||||||
|
Submenu options allow to:
|
||||||
|
|
||||||
|
- to keep the window on top
|
||||||
|
- to keep the window at bottom
|
||||||
|
- to keep the window omnipresent
|
||||||
|
- to set shortcuts for the window
|
||||||
|
|
||||||
|
Ten shortcuts are available as soon as they have been set in the keyboard
|
||||||
|
shortcut dialog. The shortcuts to define are those named "Shortcut for window +
|
||||||
|
figure". Then, using the defined shortcut gives the focus to the window.
|
||||||
|
|
||||||
|
*Close*:
|
||||||
|
|
||||||
|
Closes the window
|
||||||
|
|
||||||
|
*Kill*:
|
||||||
|
|
||||||
|
Kills the application. Usually, an application must be closed from inside (menu
|
||||||
|
or other means). This option is especially reserved for "emergency" cases.
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Documentation
|
|
||||||
---
|
|
||||||
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h3>Documentation</h3><br />
|
|
||||||
|
|
||||||
<p>It's a fact that one of the biggest problems with today's software is lack of good documentation, or any
|
|
||||||
documentation for that matter. Programmers generally don't have a lot of time to document their work, and the things
|
|
||||||
they do document are usually oriented towards other programmers. While we can appreciate the programmers point of view,
|
|
||||||
we feel it's necessary to cater to a larger audience (i.e our users) by providing clear, concise information on how to
|
|
||||||
use our software. The sections below will bring all of these pieces of information together for you.</p>
|
|
||||||
|
|
||||||
<p>Before you get started with Window Maker, you need to have an understanding of how to make use of the documentation
|
|
||||||
that comes with the source distribution. The main objective to using documentation is to <strong>understand</strong>
|
|
||||||
it, which coincidentally requires that you <strong>read</strong> it. A common mistake is for new or novice users to
|
|
||||||
overlook this information, leading them to frustration and a bad first impression. Please take a moment to peruse the
|
|
||||||
sections below, which should make the experience of learning Window Maker a more pleasant one.</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><a href="installation.html">Installation Basics</a></li>
|
|
||||||
<li><a href="wmaker_install.html">Window Maker Compilation and Installation</a></li>
|
|
||||||
<li><a href="wmaker_i18n.html">Window Maker Internationalisation</a></li>
|
|
||||||
<li><a href="guidedtour/index.html">Guided Tour</a></li>
|
|
||||||
<li><a href="guide_toc.html">User Guide</a></li>
|
|
||||||
<!-- <li><a href="desktop.php">Desktop/X Integration</a></li> -->
|
|
||||||
|
|
||||||
<li><a href="FAQ.html">FAQ</a></li>
|
|
||||||
|
|
||||||
<li><a href="wings.html">WINGs</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>Very frequently asked question </h3>
|
|
||||||
|
|
||||||
|
|
||||||
<h2> Can I easily mount my external drives or connect to the internet with Window Maker?</h2>
|
|
||||||
<p> Yes, you can. Mounting external media is not the problem of a window manager to solve, but
|
|
||||||
a tipical Window Maker user can mount external media just as easily as any other desktop user.
|
|
||||||
If you use a dockapp like <a href="https://github.com/raorn/wmvolman">wmvolman</a> or
|
|
||||||
<a href="http://sourceforge.net/projects/wmudmount">wmudmount</a> you are just a click away from
|
|
||||||
having your external media mounted on /media/VOLUME_LABEL.</p>
|
|
||||||
|
|
||||||
<p> And you can just as easily manage your network connections using the standard <code>nm-applet</code> running
|
|
||||||
in a system tray like <a href="http://sourceforge.net/projects/wmsystemtray">wmsystemtray</a> on your dock.</p>
|
|
||||||
|
|
||||||
<div align="center"><img src="/img/essential_dockapps.png" alt="Essential dockapps" width="66" height="135" /><div>wmvolman and wmsystemtray with nm-applet</div></div>
|
|
||||||
58
docs/index.rst
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Documentation
|
||||||
|
---
|
||||||
|
|
||||||
|
Documentation
|
||||||
|
=============
|
||||||
|
|
||||||
|
It's a fact that one of the biggest problems with today's software is lack of
|
||||||
|
good documentation, or any documentation for that matter. Programmers generally
|
||||||
|
don't have a lot of time to document their work, and the things they do
|
||||||
|
document are usually oriented towards other programmers. While we can
|
||||||
|
appreciate the programmers point of view, we feel it's necessary to cater to a
|
||||||
|
larger audience (i.e our users) by providing clear, concise information on how
|
||||||
|
to use our software. The sections below will bring all of these pieces of
|
||||||
|
information together for you.
|
||||||
|
|
||||||
|
Before you get started with Window Maker, you need to have an understanding of
|
||||||
|
how to make use of the documentation that comes with the source distribution.
|
||||||
|
The main objective to using documentation is to **understand** it, which
|
||||||
|
coincidentally requires that you **read** it. A common mistake is for new or
|
||||||
|
novice users to overlook this information, leading them to frustration and a
|
||||||
|
bad first impression. Please take a moment to peruse the sections below, which
|
||||||
|
should make the experience of learning Window Maker a more pleasant one.
|
||||||
|
|
||||||
|
.. class:: contents
|
||||||
|
|
||||||
|
- `Installation Basics <installation.html>`_
|
||||||
|
- `Window Maker Compilation and Installation <wmaker_install.html>`_
|
||||||
|
- `Window Maker Internationalisation <wmaker_i18n.html>`_
|
||||||
|
- `Guided Tour <guidedtour/index.html>`_
|
||||||
|
- `User Guide <guide_toc.html>`_
|
||||||
|
- `FAQ <FAQ.html>`_
|
||||||
|
- `WINGs <wings.html>`_
|
||||||
|
|
||||||
|
.. - `Desktop/X Integration <desktop.php>`_
|
||||||
|
|
||||||
|
Very frequently asked question
|
||||||
|
------------------------------
|
||||||
|
|
||||||
|
- **Can I easily mount my external drives or connect to the internet with
|
||||||
|
Window Maker?**
|
||||||
|
|
||||||
|
Yes, you can. Mounting external media is not the problem of a window manager
|
||||||
|
to solve, but a tipical Window Maker user can mount external media just as
|
||||||
|
easily as any other desktop user. If you use a dockapp like
|
||||||
|
`wmvolman <https://github.com/raorn/wmvolman>`_ or
|
||||||
|
`wmudmount <http://sourceforge.net/projects/wmudmount>`_ you are just a
|
||||||
|
click away from having your external media mounted on `/media/VOLUME_LABEL`.
|
||||||
|
|
||||||
|
And you can just as easily manage your network connections using the standard
|
||||||
|
`nm-applet` running in a system tray like `wmsystemtray
|
||||||
|
<http://sourceforge.net/projects/wmsystemtray>`_ on your dock.
|
||||||
|
|
||||||
|
.. figure:: /img/essential_dockapps.png
|
||||||
|
:alt: essential dockapps
|
||||||
|
|
||||||
|
wmvolman and wmsystemtray with nm-applet
|
||||||
@@ -1,103 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Documentation
|
|
||||||
---
|
|
||||||
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h3>Installation Basics</h3>
|
|
||||||
|
|
||||||
<h3>Downloading and Extracting</h3>
|
|
||||||
|
|
||||||
<p>The first necessary step is to <a href="http://windowmaker.org/pub/source/release/WindowMaker-0.95.5.tar.gz">download</a>
|
|
||||||
the Window Maker source distribution. From this point on, we'll assume it has
|
|
||||||
been retrieved and is residing on the local hard disk. The next step is to extract it, and change into the source
|
|
||||||
directory.</p>
|
|
||||||
<pre>
|
|
||||||
<code># cd /path/to/your/download
|
|
||||||
# gunzip WindowMaker-0.xx.xx.tar.gz
|
|
||||||
# tar -xf WindowMaker-0.xx.xx.tar
|
|
||||||
# cd WindowMaker-0.xx.xx
|
|
||||||
</code>
|
|
||||||
</pre>
|
|
||||||
|
|
||||||
<p>Now that things are extracted, it's time to look at the relevant pieces of documentation. Most UNIX oriented free
|
|
||||||
software packages come with a README file, and Window Maker is no exception. The README file contains a summary
|
|
||||||
overview of what the distribution is, what the various directories contain, and other general information.</p>
|
|
||||||
|
|
||||||
<p>Moving along, we have the NEWS file. For now, we just want to point out its existence. It will become more useful to
|
|
||||||
novice users over time. Veteran Window Maker users will find it handy for keeping their configuration files up to date,
|
|
||||||
and learning about various changes which affect Window Maker's behavior.</p>
|
|
||||||
|
|
||||||
<p>The two remaining files we need to look at are INSTALL and BUGS. The INSTALL file provides additional information
|
|
||||||
that is necessary to install Window Maker successfully. The BUGS file contains a list of known Window Maker bugs. If a
|
|
||||||
user feels they've found a bug in Window Maker, they should consult the BUGS file first. If the bug isn't listed,
|
|
||||||
proceed to the Bug Tracker and see if its there.</p>
|
|
||||||
|
|
||||||
<h3>Compiling</h3>
|
|
||||||
|
|
||||||
<p>After extracting the latest version of Window Maker using the previous instructions, the next step is to compile it.
|
|
||||||
First of all, the configure script should be run. It will test to make sure all the necessary libraries, compilers and
|
|
||||||
build tools are available on the local system. The configure script allows for various arguments to be passed to it
|
|
||||||
which relate to Window Maker's installation. For a complete list of all configurable settings, enter:</p>
|
|
||||||
<pre>
|
|
||||||
<code>$ ./configure --help
|
|
||||||
</code>
|
|
||||||
</pre>
|
|
||||||
|
|
||||||
<p>Commonly used configuration options are:</p>
|
|
||||||
<pre>
|
|
||||||
<code>--prefix=DIR --enable-modelock --enable-xinerama --enable-silent-rules
|
|
||||||
</code>
|
|
||||||
</pre>
|
|
||||||
|
|
||||||
<p>The first configuration option lets Window Maker be installed into a non-default installation directory (e.g if
|
|
||||||
Window Maker cannot be installed system wide for some reason, a user can specify a path under his/her home directory).
|
|
||||||
The default installation directory is /usr/local/bin. Note that root access
|
|
||||||
will be needed later on during the installation process if the defaults were used.</p>
|
|
||||||
|
|
||||||
<p>So if a user johndoe would like to install the wmaker binary into /home/johndoe/wmaker/bin instead of the default
|
|
||||||
/usr/local/bin, the following argument would be passed to the configure script:</p>
|
|
||||||
<pre>
|
|
||||||
<code> $ ./configure --prefix=/home/johndoe/wmaker
|
|
||||||
</code>
|
|
||||||
</pre>
|
|
||||||
|
|
||||||
<p>After the configure script has been successfully executed, Window Maker can now be compiled with the make command;
|
|
||||||
simply enter:</p>
|
|
||||||
<pre>
|
|
||||||
<code>$ make
|
|
||||||
</code>
|
|
||||||
</pre>
|
|
||||||
|
|
||||||
<p>The final step is to install the binaries and other support files. This is accomplished by entering: # make install</p>
|
|
||||||
|
|
||||||
<p>Note that this is the step that needs to be performed by root if the default installation directory was used, or if
|
|
||||||
a directory was specified that the running user cannot write to. If the installing user has root access, they should
|
|
||||||
first become root by issuing <code>su - root</code>. Otherwise, reconfigure and recompile Window Maker by specifying a
|
|
||||||
different installation directory, or kindly ask the local system administator to install it system wide.</p>
|
|
||||||
|
|
||||||
<p>Once Window Maker is installed system-wide, a default configuration can be installed on a per-user basis, through
|
|
||||||
the bundled installation script, <code>wmaker.inst</code>. Enter <code>wmaker.inst</code> in a terminal emulator to
|
|
||||||
configure Window Maker for your user.</p>
|
|
||||||
|
|
||||||
<p>This script copies the default Window Maker configuration to your user's home directory and sets Window Maker as the
|
|
||||||
default window manager. It is recommended to create ~/GNUstep before executing the script.</p>
|
|
||||||
|
|
||||||
<h3> Final tweaks</h3>
|
|
||||||
|
|
||||||
<p> Edit your ~/.xinitrc to load your newly installed Window Maker using the line
|
|
||||||
<code> exec /usr/local/bin/wmaker</code>.</p>
|
|
||||||
|
|
||||||
<p> Generate a new root menu (accessible with F12) with <code>wmgenmenu</code>, for example
|
|
||||||
<pre>
|
|
||||||
<code> $ wmgenmenu > $HOME/GNUstep/Defaults/WMRootMenu </code>
|
|
||||||
</pre>
|
|
||||||
|
|
||||||
|
|
||||||
<p> Another recommended step is to install a few dockapps like wmvolman, wmmixer and wmsystemtray which allow one to
|
|
||||||
easily mount external media on /media among other things. Visit <a href="http://www.dockapps.net">dockapps</a>
|
|
||||||
for many more choices.</p>
|
|
||||||
|
|
||||||
<br><br><br>
|
|
||||||
130
docs/installation.rst
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Documentation
|
||||||
|
---
|
||||||
|
|
||||||
|
Installation Basics
|
||||||
|
===================
|
||||||
|
|
||||||
|
Downloading and Extracting
|
||||||
|
--------------------------
|
||||||
|
|
||||||
|
The first necessary step is to `download
|
||||||
|
<http://windowmaker.org/pub/source/release/WindowMaker-0.95.5.tar.gz>`_ the
|
||||||
|
Window Maker source distribution. From this point on, we'll assume it has been
|
||||||
|
retrieved and is residing on the local hard disk. The next step is to extract
|
||||||
|
it, and change into the source directory.
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
# cd /path/to/your/download
|
||||||
|
# gunzip WindowMaker-0.xx.xx.tar.gz
|
||||||
|
# tar -xf WindowMaker-0.xx.xx.tar
|
||||||
|
# cd WindowMaker-0.xx.xx
|
||||||
|
|
||||||
|
Now that things are extracted, it's time to look at the relevant pieces of
|
||||||
|
documentation. Most UNIX oriented free software packages come with a README
|
||||||
|
file, and Window Maker is no exception. The README file contains a summary
|
||||||
|
overview of what the distribution is, what the various directories contain, and
|
||||||
|
other general information.
|
||||||
|
|
||||||
|
Moving along, we have the NEWS file. For now, we just want to point out its
|
||||||
|
existence. It will become more useful to novice users over time. Veteran Window
|
||||||
|
Maker users will find it handy for keeping their configuration files up to
|
||||||
|
date, and learning about various changes which affect Window Maker's behavior.
|
||||||
|
|
||||||
|
The two remaining files we need to look at are INSTALL and BUGS. The INSTALL
|
||||||
|
file provides additional information that is necessary to install Window Maker
|
||||||
|
successfully. The BUGS file contains a list of known Window Maker bugs. If a
|
||||||
|
user feels they've found a bug in Window Maker, they should consult the BUGS
|
||||||
|
file first. If the bug isn't listed, proceed to the Bug Tracker and see if its
|
||||||
|
there.
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
---------
|
||||||
|
|
||||||
|
After extracting the latest version of Window Maker using the previous
|
||||||
|
instructions, the next step is to compile it. First of all, the configure
|
||||||
|
script should be run. It will test to make sure all the necessary libraries,
|
||||||
|
compilers and build tools are available on the local system. The configure
|
||||||
|
script allows for various arguments to be passed to it which relate to Window
|
||||||
|
Maker's installation. For a complete list of all configurable settings, enter:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
$ ./configure --help
|
||||||
|
|
||||||
|
Commonly used configuration options are:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
--prefix=DIR --enable-modelock --enable-xinerama --enable-silent-rules
|
||||||
|
|
||||||
|
The first configuration option lets Window Maker be installed into a
|
||||||
|
non-default installation directory (e.g if Window Maker cannot be installed
|
||||||
|
system wide for some reason, a user can specify a path under his/her home
|
||||||
|
directory). The default installation directory is /usr/local/bin. Note that
|
||||||
|
root access will be needed later on during the installation process if the
|
||||||
|
defaults were used.
|
||||||
|
|
||||||
|
So if a user johndoe would like to install the wmaker binary into
|
||||||
|
/home/johndoe/wmaker/bin instead of the default /usr/local/bin, the following
|
||||||
|
argument would be passed to the configure script:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
$ ./configure --prefix=/home/johndoe/wmaker
|
||||||
|
|
||||||
|
After the configure script has been successfully executed, Window Maker can now
|
||||||
|
be compiled with the make command; simply enter:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
$ make
|
||||||
|
|
||||||
|
The final step is to install the binaries and other support files. This is
|
||||||
|
accomplished by entering:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
# make install
|
||||||
|
|
||||||
|
Note that this is the step that needs to be performed by root if the default
|
||||||
|
installation directory was used, or if a directory was specified that the
|
||||||
|
running user cannot write to. If the installing user has root access, they
|
||||||
|
should first become root by issuing ``su - root``. Otherwise, reconfigure and
|
||||||
|
recompile Window Maker by specifying a different installation directory, or
|
||||||
|
kindly ask the local system administator to install it system wide.
|
||||||
|
|
||||||
|
Once Window Maker is installed system-wide, a default configuration can be
|
||||||
|
installed on a per-user basis, through the bundled installation script,
|
||||||
|
``wmaker.inst``. Enter ``wmaker.inst`` in a terminal emulator to configure
|
||||||
|
Window Maker for your user.
|
||||||
|
|
||||||
|
This script copies the default Window Maker configuration to your user's home
|
||||||
|
directory and sets Window Maker as the default window manager. It is
|
||||||
|
recommended to create ``~/GNUstep`` before executing the script.
|
||||||
|
|
||||||
|
Final tweaks
|
||||||
|
------------
|
||||||
|
|
||||||
|
Edit your ~/.xinitrc to load your newly installed Window Maker using the line
|
||||||
|
``exec /usr/local/bin/wmaker``.
|
||||||
|
|
||||||
|
Generate a new root menu (accessible with F12) with ``wmgenmenu``, for example
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
$ wmgenmenu > $HOME/GNUstep/Defaults/WMRootMenu
|
||||||
|
|
||||||
|
Another recommended step is to install a few dockapps like wmvolman, wmmixer
|
||||||
|
and wmsystemtray which allow one to easily mount external media on /media among
|
||||||
|
other things. Visit `dockapps <http://www.dockapps.net>`_ for many more
|
||||||
|
choices.
|
||||||
@@ -1,66 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: WINGs
|
|
||||||
---
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
<h3>WINGs Is Not GNUstep</h3>
|
|
||||||
|
|
||||||
<p>While GNUstep is our ideal development framework, it's overkill for a window manager like Window Maker. We had a
|
|
||||||
need for a quick, lightweight toolkit to handle basic window manager tasks, which is how WINGs was born, and why it has
|
|
||||||
become an integral part of Window Maker's core.</p>
|
|
||||||
|
|
||||||
<p>Unlike the general uses of the GNUstep development environment, the WINGs toolkit was designed as a specific
|
|
||||||
solution for Window Maker. It is not implemented in an object-oriented language, but was designed with OO schemas in
|
|
||||||
mind. It is encapsulated in objects that have various methods (functions), which in turn can be accessed like real
|
|
||||||
objects (i.e it's unknown what they contain, and they only have the interface functions to alter their data). As much
|
|
||||||
as C will allow, that is. What really matters is that it's functional and small enough for our purposes.</p>
|
|
||||||
|
|
||||||
<p>Surprisingly, there have been several developers who think WINGs is mature and functional enough to write full
|
|
||||||
fledged applications with it. For developers who are interested in creating real applications, we would encourage them
|
|
||||||
to look at GNUstep instead. GNUstep is written in Objective-C, and anyone with a solid C++ background shouldn't need
|
|
||||||
more than an hour to begin programming in Objective-C. For more information on this, please visit the <a href=
|
|
||||||
"http://www.gnustep.org/developers/documentation.html">GNUstep Developer Documentation</a> section.</p>
|
|
||||||
|
|
||||||
<p>So, what does WINGs do for us, specifically? It contains many necessary widgets, such as the buttons, file browser,
|
|
||||||
color chooser, and text editor dialog that are all used for creating the UI. It is currently missing a few important
|
|
||||||
items, such as DnD, treeview, and application menus, but those will be integrated in future releases.</p>
|
|
||||||
|
|
||||||
<p>One of the more important aspects of WINGs is that it now provides proplist functionality. proplist, short for
|
|
||||||
<a href="http://en.wikipedia.org/wiki/Property_list">property list</a>, is what Window Maker uses to generate and
|
|
||||||
maintain structured configuration files. This data is stored as plain ASCII text under a user's ~/GNUstep directory.
|
|
||||||
These files are what make up the menus, the current state and appearance of the desktop, the Dock, the Clip, and the
|
|
||||||
values set in WPrefs.</p>
|
|
||||||
|
|
||||||
<p>As an example, here is a short snippet from the proplist version of the default menu:</p>
|
|
||||||
<pre>
|
|
||||||
<code>(
|
|
||||||
Applications,
|
|
||||||
(
|
|
||||||
Info,
|
|
||||||
("Info Panel", INFO_PANEL),
|
|
||||||
(Legal, LEGAL_PANEL),
|
|
||||||
("System Console", EXEC, xconsole),
|
|
||||||
("System Load", SHEXEC, "xosview || xload"),
|
|
||||||
("Process List", EXEC, "xterm -e top"),
|
|
||||||
("Manual Browser", EXEC, xman)
|
|
||||||
),
|
|
||||||
(Run..., EXEC, "%a(Run,Type command to run:)"),
|
|
||||||
...
|
|
||||||
)
|
|
||||||
</code>
|
|
||||||
</pre>
|
|
||||||
|
|
||||||
<h3>External sources of information</h3>
|
|
||||||
|
|
||||||
<p>As this section evolves, we will be providing more documentation on the internals of WINGs. For the time being,
|
|
||||||
developers interested in WINGs should see Alexey Voinov's <a href=
|
|
||||||
"http://voins.program.ru/windowmaker/wingsman.html">WINGsman documentation project</a>. Starters may find <a href=
|
|
||||||
"/WINGs_tutorial/WINGtoc.html">this tutorial</a>, which includes a library
|
|
||||||
listing based on Voinov's work, useful. We'll try to cover some examples and/or more tutorials on how to program small
|
|
||||||
applications in WINGs in the near future. For anyone already using WINGs for a project, please <a href=
|
|
||||||
"{{ site.baseurl }}/lists">contact us</a>, as we'd like to get an idea of its popularity and practical uses, as well as some
|
|
||||||
additional material to place here.</p><br />
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
78
docs/wings.rst
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: WINGs
|
||||||
|
---
|
||||||
|
|
||||||
|
WINGs Is Not GNUstep
|
||||||
|
====================
|
||||||
|
|
||||||
|
While GNUstep is our ideal development framework, it's overkill for a window
|
||||||
|
manager like Window Maker. We had a need for a quick, lightweight toolkit to
|
||||||
|
handle basic window manager tasks, which is how WINGs was born, and why it has
|
||||||
|
become an integral part of Window Maker's core.
|
||||||
|
|
||||||
|
Unlike the general uses of the GNUstep development environment, the WINGs
|
||||||
|
toolkit was designed as a specific solution for Window Maker. It is not
|
||||||
|
implemented in an object-oriented language, but was designed with OO schemas in
|
||||||
|
mind. It is encapsulated in objects that have various methods (functions),
|
||||||
|
which in turn can be accessed like real objects (i.e it's unknown what they
|
||||||
|
contain, and they only have the interface functions to alter their data). As
|
||||||
|
much as C will allow, that is. What really matters is that it's functional and
|
||||||
|
small enough for our purposes.
|
||||||
|
|
||||||
|
Surprisingly, there have been several developers who think WINGs is mature and
|
||||||
|
functional enough to write full fledged applications with it. For developers
|
||||||
|
who are interested in creating real applications, we would encourage them to
|
||||||
|
look at GNUstep instead. GNUstep is written in Objective-C, and anyone with a
|
||||||
|
solid C++ background shouldn't need more than an hour to begin programming in
|
||||||
|
Objective-C. For more information on this, please visit the `GNUstep Developer
|
||||||
|
Documentation <http://www.gnustep.org/developers/documentation.html>`_ section.
|
||||||
|
|
||||||
|
So, what does WINGs do for us, specifically? It contains many necessary
|
||||||
|
widgets, such as the buttons, file browser, color chooser, and text editor
|
||||||
|
dialog that are all used for creating the UI. It is currently missing a few
|
||||||
|
important items, such as DnD, treeview, and application menus, but those will
|
||||||
|
be integrated in future releases.
|
||||||
|
|
||||||
|
One of the more important aspects of WINGs is that it now provides proplist
|
||||||
|
functionality. proplist, short for `property list
|
||||||
|
<http://en.wikipedia.org/wiki/Property_list>`_, is what Window Maker uses to
|
||||||
|
generate and maintain structured configuration files. This data is stored as
|
||||||
|
plain ASCII text under a user's ~/GNUstep directory. These files are what make
|
||||||
|
up the menus, the current state and appearance of the desktop, the Dock, the
|
||||||
|
Clip, and the values set in WPrefs.
|
||||||
|
|
||||||
|
As an example, here is a short snippet from the proplist version of the default
|
||||||
|
menu:
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
(
|
||||||
|
Applications,
|
||||||
|
(
|
||||||
|
Info,
|
||||||
|
("Info Panel", INFO_PANEL),
|
||||||
|
(Legal, LEGAL_PANEL),
|
||||||
|
("System Console", EXEC, xconsole),
|
||||||
|
("System Load", SHEXEC, "xosview || xload"),
|
||||||
|
("Process List", EXEC, "xterm -e top"),
|
||||||
|
("Manual Browser", EXEC, xman)
|
||||||
|
),
|
||||||
|
(Run..., EXEC, "%a(Run,Type command to run:)"),
|
||||||
|
...
|
||||||
|
)
|
||||||
|
|
||||||
|
External sources of information
|
||||||
|
===============================
|
||||||
|
|
||||||
|
As this section evolves, we will be providing more documentation on the
|
||||||
|
internals of WINGs. For the time being, developers interested in WINGs should
|
||||||
|
see Alexey Voinov's `WINGsman documentation project
|
||||||
|
<http://voins.program.ru/windowmaker/wingsman.html>`_. Starters may find `this
|
||||||
|
tutorial </WINGs_tutorial/WINGtoc.html>`_, which includes a library listing
|
||||||
|
based on Voinov's work, useful. We'll try to cover some examples and/or more
|
||||||
|
tutorials on how to program small applications in WINGs in the near future. For
|
||||||
|
anyone already using WINGs for a project, please `contact us <{{ site.baseurl
|
||||||
|
}}/lists>`_, as we'd like to get an idea of its popularity and practical uses,
|
||||||
|
as well as some additional material to place here.
|
||||||
@@ -1,486 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Internationalisation
|
|
||||||
---
|
|
||||||
|
|
||||||
<a name="Top"></a>
|
|
||||||
<a name="Window-Maker-Internationalisation"></a>
|
|
||||||
<h1 class="top">Window Maker Internationalisation</h1>
|
|
||||||
|
|
||||||
<p>A guide to enable support for language translations
|
|
||||||
in <small>WINDOW MAKER</small> and to the contributors
|
|
||||||
who want to help translating.
|
|
||||||
</p>
|
|
||||||
<a name="SEC_Contents"></a>
|
|
||||||
<h2 class="contents-heading">Table of Contents</h2>
|
|
||||||
|
|
||||||
<div class="contents">
|
|
||||||
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li><a name="toc-Enabling-Languages-support-1" href="#Enabling-Languages-support">1 Enabling Languages support</a>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li><a name="toc-Getting-the-list-of-supported-languages" href="#Getting-the-list-of-supported-languages">1.1 Getting the list of supported languages</a></li>
|
|
||||||
<li><a name="toc-Translations-for-Menus" href="#Translations-for-Menus">1.2 Translations for Menus</a></li>
|
|
||||||
<li><a name="toc-Setting-LINGUAS-at-system-level" href="#Setting-LINGUAS-at-system-level">1.3 Setting <code>LINGUAS</code> at system level</a></li>
|
|
||||||
</ul></li>
|
|
||||||
<li><a name="toc-Choosing-the-Language-1" href="#Choosing-the-Language">2 Choosing the Language</a></li>
|
|
||||||
<li><a name="toc-Troubleshooting-1" href="#Troubleshooting">3 Troubleshooting</a></li>
|
|
||||||
<li><a name="toc-Contribute-to-Translations-1" href="#Contribute-to-Translations">4 Contribute to Translations</a>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li><a name="toc-Install-the-latest-sources" href="#Install-the-latest-sources">4.1 Install the latest sources</a></li>
|
|
||||||
<li><a name="toc-Updating-the-Translations" href="#Updating-the-Translations">4.2 Updating the Translations</a></li>
|
|
||||||
<li><a name="toc-Translate-the-Man-Pages" href="#Translate-the-Man-Pages">4.3 Translate the Man Pages</a></li>
|
|
||||||
<li><a name="toc-Checking-the-Result" href="#Checking-the-Result">4.4 Checking the Result</a></li>
|
|
||||||
<li><a name="toc-Submitting-your-Contribution" href="#Submitting-your-Contribution">4.5 Submitting your Contribution</a></li>
|
|
||||||
</ul></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<br>
|
|
||||||
<p>This manual is for Window Maker, version git#next.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
<a name="Enabling-Languages-support"></a>
|
|
||||||
<a name="Enabling-Languages-support-1"></a>
|
|
||||||
<h2 class="chapter">1 Enabling Languages support</h2>
|
|
||||||
|
|
||||||
<p><small>WINDOW MAKER</small> has the possibility to be translated in many languages, but by default none of
|
|
||||||
them will be installed, and the support for translation will not be compiled.
|
|
||||||
</p>
|
|
||||||
<p>To enable the translation capabilities, you have to specify which language(s) you want to be
|
|
||||||
installed: this is done with the variable <code>LINGUAS</code> when running the <code>configure</code> script.
|
|
||||||
This variable should contain the space-separated list of languages you want to install.
|
|
||||||
</p>
|
|
||||||
<p>You could for instance enable both French (<code>fr</code>) and Dutch (<code>nl</code>) with this:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">./configure LINGUAS="fr nl"
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>You can of course add any other option that you want to the <code>configure</code> command.
|
|
||||||
From the moment you specify the variable, the <code>configure</code> script will check that you have
|
|
||||||
the appropriate dependencies for this (basically the <code>gettext</code> function and the <code>libintl</code>
|
|
||||||
library); when you run <code>make</code> to compile the project, it will also compile the translation
|
|
||||||
(<code>mo</code> files) for the language(s) you asked (if available, of course), and during
|
|
||||||
<code>make install</code> it will install them in the usual directory.
|
|
||||||
</p>
|
|
||||||
<p>The installation directory can be changed with the standard option <samp>--localedir</samp> to the
|
|
||||||
<code>configure</code> script, the default path being
|
|
||||||
<samp><em><prefix></em>/share/locale/<em><lang></em>/LC_MESSAGES</samp>).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Getting-the-list-of-supported-languages"></a>
|
|
||||||
<h3 class="section">1.1 Getting the list of supported languages</h3>
|
|
||||||
|
|
||||||
<p>The naming convention for the languages follows the <cite>ISO 639-1</cite> standard,
|
|
||||||
for which you can find a summary list in the
|
|
||||||
<a href="https://www.gnu.org/software/gettext/manual/html_node/Usual-Language-Codes.html">GNU gettext manual</a>.
|
|
||||||
</p>
|
|
||||||
<p>But as <small>WINDOW MAKER</small> does not support all of them, the <code>configure</code> script will print a
|
|
||||||
warning for each language you specify that it does not know, and sum up at the end the list of
|
|
||||||
enabled languages that will be installed.
|
|
||||||
</p>
|
|
||||||
<p>There is a non-standard possibility to set <code>LINGUAS</code> to <code>list</code>, in which case the
|
|
||||||
<code>configure</code> script will provide you the list of languages it supports, and stop:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">./configure LINGUAS="list"
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>There is also another non-standard possibility to enable all the languages that <small>WINDOW MAKER</small>
|
|
||||||
supports by setting <code>LINGUAS</code> to <code>*</code>.
|
|
||||||
This is an internal trick implemented so the development team can have the command
|
|
||||||
<code>make distcheck</code> include some checks on translations:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">./configure LINGUAS='*'
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="Translations-for-Menus"></a>
|
|
||||||
<h3 class="section">1.2 Translations for Menus</h3>
|
|
||||||
|
|
||||||
<p>In order to propose an <em>Application Menu</em> (also called <em>Root Menu</em>) that is also
|
|
||||||
translated in the language of the interface, <small>WINDOW MAKER</small> implements two complementary
|
|
||||||
mechanisms:
|
|
||||||
</p>
|
|
||||||
<p>The first, always enabled when i18n support is enabled, is to look for the menu file containing the
|
|
||||||
name of the locale.
|
|
||||||
For example, if the file is called <samp>menu</samp> and the language is set as <code>LANG=fr_FR.utf-8</code>,
|
|
||||||
then <small>WINDOW MAKER</small> will search for, and use the first match found:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li> <code>menu.fr_FR.utf-8</code>
|
|
||||||
</li><li> <code>menu.fr_FR</code>
|
|
||||||
</li><li> <code>menu.fr</code>
|
|
||||||
</li><li> <code>menu</code>
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
<p>The second possibility, which is not enabled by default, is to be able to use a custom <samp>po</samp>
|
|
||||||
file which contains the translations for the text of the menu.
|
|
||||||
This feature is enabled at compile time, using the option <samp>--with-menu-textdomain</samp> to the
|
|
||||||
<code>configure</code> script. For example, if you specify:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">./configure --with-menu-textdomain=WMMenu
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>then the translations for the menu will be searched in the file <samp>WMMenu.mo</samp> located
|
|
||||||
at the standard location, the default path being
|
|
||||||
<samp><em><prefix></em>/share/locale/<em><lang></em>/LC_MESSAGES/<em>WMMenu</em>.mo</samp>.
|
|
||||||
</p>
|
|
||||||
<p>If you do not enable the feature (the default behaviour, or with an explicit
|
|
||||||
<samp>--without-menu-textdomain</samp>), then <small>WINDOW MAKER</small> will <b>not</b> try to translate the
|
|
||||||
strings, even using its own domain file (<samp>WindowMaker.mo</samp>).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Setting-LINGUAS-at-system-level"></a>
|
|
||||||
<h3 class="section">1.3 Setting <code>LINGUAS</code> at system level</h3>
|
|
||||||
|
|
||||||
<p>As the variable <code>LINGUAS</code> is quite standard, you also have the possibility to set its value in
|
|
||||||
the <samp>config.site</samp> file for <small>AUTOCONF</small>.
|
|
||||||
This file can be placed in one of these paths:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li> <samp><em><prefix></em>/share/config.site</samp>
|
|
||||||
</li><li> <samp><em><prefix></em>/etc/config.site</samp>
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
<p>This way, the same language list will be used for all the programs that use <small>AUTOCONF</small> that you
|
|
||||||
would compile.
|
|
||||||
Please note that if you also specify a value on the command line, it will have precedence over the
|
|
||||||
value in that file.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
<a name="Choosing-the-Language"></a>
|
|
||||||
<a name="Choosing-the-Language-1"></a>
|
|
||||||
<h2 class="chapter">2 Choosing the Language</h2>
|
|
||||||
|
|
||||||
<p>If you have compiled and installed <small>WINDOW MAKER</small> with support for your language,
|
|
||||||
the effective translation is done is the very same way as any other application on an <small>UNIX</small>
|
|
||||||
system, you just have to set the shell variable <code>LANG</code> to your language before <code>wmaker</code>
|
|
||||||
is started.
|
|
||||||
In <code>sh</code> type of shell (<small>SH</small>, <small>KSH</small>, <small>BASH</small>, ...), this is done for example with
|
|
||||||
(<code>fr</code> is for French):
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">export LANG=fr
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
|
|
||||||
<p>There is also a command line option <samp>--locale</samp> for <small>WINDOW MAKER</small> which may be used to set
|
|
||||||
the language:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">wmaker --locale fr
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>When using this option, <small>WINDOW MAKER</small> will use the locale you specified, redefining the
|
|
||||||
<code>LANG</code> environment variable to this value so all program started from <small>WINDOW MAKER</small> will
|
|
||||||
inherit its value.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>If your system is using <small>SYSTEMD</small>, you can also configure the locale at system level using the
|
|
||||||
command:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">localectl set-locale LANG=fr
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
|
|
||||||
<p>You can check if the current value is properly supported with the command:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">locale
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>If this does not work, you may need first to activate the support for your locale in the system;
|
|
||||||
you can get the list of currently enabled locales with the command:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">locale -a
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>You should be able to enable a new language support by editing the file <samp>/etc/locale.gen</samp> to
|
|
||||||
uncomment the locale(s) you need (by removing the <code>#</code> character and space(s) in front of it,
|
|
||||||
and by running the command <code>locale-gen</code> as root.
|
|
||||||
</p>
|
|
||||||
<p>For further information, you may wish to read dedicated documentation, for example from
|
|
||||||
<a href="http://tldp.org/HOWTO/HOWTO-INDEX/other-lang.html">the Linux Documentation Project</a>
|
|
||||||
or through pages like
|
|
||||||
<a href="http://www.shellhacks.com/en/HowTo-Change-Locale-Language-and-Character-Set-in-Linux">Shell Hacks’ note on Changing Locale</a>.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
<a name="Troubleshooting"></a>
|
|
||||||
<a name="Troubleshooting-1"></a>
|
|
||||||
<h2 class="chapter">3 Troubleshooting</h2>
|
|
||||||
|
|
||||||
<p>If I18N support does not work for you, check these:
|
|
||||||
</p>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li>- the <code>LANG</code> environment variable is set to your locale, and
|
|
||||||
the locale is supported by your OS’s locale or X’s locale
|
|
||||||
emulation. you can display all supported locales by
|
|
||||||
executing "<code>locale -a</code>" command if it is available; you
|
|
||||||
can check if your locale is supported by X’s locale emulation,
|
|
||||||
see <samp>/usr/share/X11/locale/locale.alias</samp>
|
|
||||||
|
|
||||||
</li><li>- check if you are using an appropriate fonts for the locale you
|
|
||||||
chose. If you’re using a font set that has a different
|
|
||||||
encoding than the one used by <small>XLIB</small> or <small>LIBC</small>, bad things can
|
|
||||||
happen. Try specifically putting the encoding in the <code>LANG</code>
|
|
||||||
variable, like <code>ru_RU.KOI8-R</code>. Again, see
|
|
||||||
<samp>/usr/share/X11/locale/locale.alias</samp>
|
|
||||||
|
|
||||||
</li><li>- the fonts you’re using support your locale. if your font
|
|
||||||
setting on <samp>$HOME/GNUstep/Defaults/WindowMaker</samp> is like...
|
|
||||||
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example"> WindowTitleFont = "Trebuchet MS:bold:pixelsize=12";
|
|
||||||
MenuTitleFont = "Trebuchet MS:bold:pixelsize=12";
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>then you can’t display Asian languages (<code>ja</code>, <code>ko</code>, <code>ch</code>, ...) characters using
|
|
||||||
<code>Trebuchet MS</code>. A font that is guaranteed to work for any language is
|
|
||||||
<code>sans</code> (or <code>sans-serif</code>). <code>sans</code> is not a font itself, but an alias which
|
|
||||||
points to multiple fonts and will load the first in that list that
|
|
||||||
has the ability to show glyphs in your language. If you don’t know
|
|
||||||
a font that is suited for your language you can always set all your
|
|
||||||
fonts to something like:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example"> "sans:pixelsize=12"
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>However, please note that if your font is something like:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example"> "Trebuchet MS,sans serif:pixelsize=12"
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>this will not be able to display Asian languages if any of the
|
|
||||||
previous fonts before sans are installed. This is because unlike
|
|
||||||
the proper font pickup that <code>sans</code> guarantees for your language,
|
|
||||||
this construct only allows a font fallback mechanism, which tries
|
|
||||||
all the fonts in the list in order, until it finds one that is
|
|
||||||
available, even if it doesn’t support your language.
|
|
||||||
</p>
|
|
||||||
<p>Also you need to change font settings in style files in
|
|
||||||
the <samp>$HOME/Library/WindowMaker/Style</samp> directory.
|
|
||||||
</p>
|
|
||||||
</li><li>- the <code>LC_CTYPE</code> environment variable is unset or it has the correct
|
|
||||||
value. If you don’t know what is the correct value, unset it.
|
|
||||||
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
<a name="Contribute-to-Translations"></a>
|
|
||||||
<a name="Contribute-to-Translations-1"></a>
|
|
||||||
<h2 class="chapter">4 Contribute to Translations</h2>
|
|
||||||
|
|
||||||
<p>You may have noticed that many translations are not up to date, because the code has evolved but the
|
|
||||||
persons who initially contributed may not have had the time to continue, so any help is welcome.
|
|
||||||
</p>
|
|
||||||
<p>Since <small>WINDOW MAKER</small> 0.95.7 there are some targets to <code>make</code> that can help you in that
|
|
||||||
task.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Install-the-latest-sources"></a>
|
|
||||||
<h3 class="section">4.1 Install the latest sources</h3>
|
|
||||||
|
|
||||||
<p>If you want to contribute, the first step is get the development branch of the code;
|
|
||||||
this is done using <code>git</code>.
|
|
||||||
If you do not feel confident at all with using <code>git</code>, you may also try to ask for a
|
|
||||||
<em>snapshot</em> on the developer’s mailing list <a href="mailto:wmaker-dev@lists.windowmaker.org">wmaker-dev@lists.windowmaker.org</a>.
|
|
||||||
With <code>git</code> the procedure is:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example"># Get your working copy of the sources
|
|
||||||
git clone git://repo.or.cz/wmaker-crm.git
|
|
||||||
|
|
||||||
# Go into that newly created directory
|
|
||||||
cd wmaker-crm
|
|
||||||
|
|
||||||
# Switch to the branch where everything happens
|
|
||||||
git checkout next
|
|
||||||
|
|
||||||
# Generate the configuration script
|
|
||||||
./autogen.sh
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>Now you should have an up-to-date working copy ready to be compiled;
|
|
||||||
you will not need to go the full way but you should run the <code>configure</code> script, so it will
|
|
||||||
create the <samp>Makefile</samp>s, and you may want to compile the code once so it will not do it again
|
|
||||||
automatically later while you are doing something else:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example"># Setup the build, enabling at least the language you want to work on
|
|
||||||
./configure LINGUAS="<list of iso 639 country code>"
|
|
||||||
|
|
||||||
# Compile the code once
|
|
||||||
make
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="Updating-the-Translations"></a>
|
|
||||||
<h3 class="section">4.2 Updating the Translations</h3>
|
|
||||||
|
|
||||||
<p>The typical process for translating one program is:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li> generate a POT file (PO Template):
|
|
||||||
this is done with <code>xgettext</code> which searches for all the strings from the sources that can be
|
|
||||||
translated;
|
|
||||||
|
|
||||||
</li><li> update the PO file for your language:
|
|
||||||
this is done with <code>msgmerge</code> which compares the PO file and aligns it to the latest
|
|
||||||
template;
|
|
||||||
|
|
||||||
</li><li> edit the new PO file:
|
|
||||||
this is done by you with your favourite editor, to add the missing <code>msgstr</code>, review the
|
|
||||||
possible <em>fuzzy matches</em>, ...
|
|
||||||
|
|
||||||
</li><li> check the PO file:
|
|
||||||
unfortunately there is no definitive method for this;
|
|
||||||
|
|
||||||
</li><li> submit your contribution to the project:
|
|
||||||
this is done with <code>git</code>.
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
<p>In <small>WINDOW MAKER</small>, you have actually 4 <code>po</code> files to take care of:
|
|
||||||
</p>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li>- <samp>po/<em><lang></em>.po</samp>: for <small>WINDOW MAKER</small> itself
|
|
||||||
</li><li>- <samp>WPrefs.app/po/<em><lang></em>.po</samp>: for the Preference Editor program
|
|
||||||
</li><li>- <samp>WINGs/po/<em><lang></em>.po</samp>: for the graphic toolkit library
|
|
||||||
</li><li>- <samp>util/po/<em><lang></em>.po</samp>: for the command-line tools of <small>WINDOW MAKER</small>
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
<p>As stated previously, there is a <code>make</code> target that can help you to automatically generate
|
|
||||||
the POT and update the PO for these 4 cases:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">make update-lang PO=<lang>
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>Once run, it will have updated as needed the 4 <code>po</code> files against the latest source code.
|
|
||||||
You may wish to use the command <code>git gui</code> to view the changes;
|
|
||||||
you can now edit the files to complete the translation, correct them, remove deprecated stuff, ...
|
|
||||||
Please note that the encoding should be set to <em>UTF-8</em> as this is now the standard.
|
|
||||||
</p>
|
|
||||||
<p>If you think an error message is too obscure, just ask on the developer mailing list
|
|
||||||
<a href="mailto:wmaker-dev@lists.windowmaker.org">wmaker-dev@lists.windowmaker.org</a>: in addition to clarifications there’s even a chance for the original message
|
|
||||||
to be improved!
|
|
||||||
</p>
|
|
||||||
<p>You may find some information on working with <code>po</code> file in the
|
|
||||||
<a href="https://www.gnu.org/software/gettext/manual/html_node/Editing.html">GNU gettext documentation</a>.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Translate-the-Man-Pages"></a>
|
|
||||||
<h3 class="section">4.3 Translate the Man Pages</h3>
|
|
||||||
|
|
||||||
<p>You may want to extend the translation to the documentation that is provided to users in the form
|
|
||||||
of Unix <i>man pages</i>.
|
|
||||||
The sources of the man pages are located in the <samp>doc/</samp> directory;
|
|
||||||
the translation should be placed in the directory <samp>doc/<i>lang</i>/</samp> with the same file name.
|
|
||||||
</p>
|
|
||||||
<p>The directory will also need a file <samp>Makefile.am</samp> which provides the list of man pages to be
|
|
||||||
included in the distribution package and to be installed.
|
|
||||||
You can probably get inspiration from an existing one from another language;
|
|
||||||
if you do not feel confident about it do not hesitate to ask on the project’s mailing list
|
|
||||||
(<a href="mailto:wmaker-dev@lists.windowmaker.org">wmaker-dev@lists.windowmaker.org</a>), either for help or to ask someone to make it for you.
|
|
||||||
</p>
|
|
||||||
<p>Please note that although most man pages sources are directly in man page format
|
|
||||||
(<em>nroff</em>, the file extension being a number), a few of them are processed by a script
|
|
||||||
(those with the <samp>.in</samp> extension, like <samp>wmaker.in</samp>).
|
|
||||||
This is done because in some case we want the man page to reflect the actual compilation options.
|
|
||||||
</p>
|
|
||||||
<p>You may not want to bother with this hassle, in which case you can simply name your translation
|
|
||||||
file with the <samp>.1</samp> and remove the special <code>@keyword@</code> marks.
|
|
||||||
If you are sure you want to keep that processing but do not feel confident about hacking the
|
|
||||||
<samp>Makefile.am</samp> do not hesitate to ask on the project’s mailing list (<a href="mailto:wmaker-dev@lists.windowmaker.org">wmaker-dev@lists.windowmaker.org</a>).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Checking-the-Result"></a>
|
|
||||||
<h3 class="section">4.4 Checking the Result</h3>
|
|
||||||
|
|
||||||
<p>In the <small>WINDOW MAKER</small> build tree you also have another target that can help you, it is
|
|
||||||
<code>make check</code>.
|
|
||||||
</p>
|
|
||||||
<p>At current time, it does not check much, but if during the <code>make update-lang</code> new <code>po</code>
|
|
||||||
file have been created you may get some errors, because you have to add these new files to the
|
|
||||||
variable <var>EXTRA_DIST</var> in the corresponding <samp>Makefile</samp>.
|
|
||||||
</p>
|
|
||||||
<p>If you do not feel confident about doing it, do not worry, just tell about it when you submit your
|
|
||||||
work, and some developer on the mailing list will just be happy to do it for you when integrating
|
|
||||||
your valuable contribution (we always like when someone helps making <small>WINDOW MAKER</small> better).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Submitting-your-Contribution"></a>
|
|
||||||
<h3 class="section">4.5 Submitting your Contribution</h3>
|
|
||||||
|
|
||||||
<p><em>Preliminary Remark</em>: if the update process made changes in a <code>po</code> file but you did not
|
|
||||||
change any <code>msgstr</code> content, it is probably a good idea to not submit the changes to that
|
|
||||||
<code>po</code> file because it would just add noise.
|
|
||||||
</p>
|
|
||||||
<p>When you feel ready to send your changes, the first step is to prepare them.
|
|
||||||
This is done with <code>git</code>: if you have not run the <code>git gui</code> previously then it is a
|
|
||||||
good time to do it now.
|
|
||||||
This window offers you the possibility to show your changes and to decide what you want to send.
|
|
||||||
</p>
|
|
||||||
<p>The window is divided in 4 panes:
|
|
||||||
</p><ul>
|
|
||||||
<li> top-right show the current changes you have selected, for review
|
|
||||||
(and also for cherry-picking stuff if you want to select precisely)
|
|
||||||
|
|
||||||
</li><li> top-left ("Unstaged Changes") the list of files with changes to be send,
|
|
||||||
you can click on the name of the file to see the changes,
|
|
||||||
you can click on the icon of the file if you want to send all the changes in this file;
|
|
||||||
an icon in blue shows a file that have been changed and an icon in black shows a file that is new
|
|
||||||
|
|
||||||
</li><li> bottom-left ("Staged Changes") the list of files with changes that you have chosen to send so far,
|
|
||||||
you can click on the file name to view these changes,
|
|
||||||
you can click on the icon if you want to remove the changes from this file from the list to send
|
|
||||||
|
|
||||||
</li><li> bottom-right ("Commit Message") the message you want to attach to your changes when you submit them
|
|
||||||
to the development team
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
<p>The idea here is to pick your changes to the <code>po</code> files;
|
|
||||||
for the <em>commit message</em> you may wish to stuck to a simple, single line:
|
|
||||||
</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>"Updated translations for <em><lang></em>"
|
|
||||||
</p></blockquote>
|
|
||||||
|
|
||||||
<p>The penultimate step is to click on the button <tt class="key">Sign Off</tt> (it will add a line in the commit
|
|
||||||
message), and then click on the button <tt class="key">Commit</tt>.
|
|
||||||
From this time, the commit message will clear itself and the "Staged Changes" also, showing that
|
|
||||||
your action was done.
|
|
||||||
</p>
|
|
||||||
<p>You may now quit the <code>git gui</code>, the final step begins by running this command:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">git format-patch HEAD^
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>This will generate a file named like <samp>0001-<em>updated-translations-for-XX</em>.patch</samp>
|
|
||||||
which contains your changes, ready for sending.
|
|
||||||
The goal will now be to email this file to <a href="mailto:wmaker-dev@lists.windowmaker.org">wmaker-dev@lists.windowmaker.org</a>.
|
|
||||||
If you feel confident in having <code>git</code> send it for you, you may want to read the file
|
|
||||||
<samp>The-perfect-Window-Maker-patch.txt</samp> to see how to configure <code>git</code> for mailing, so you
|
|
||||||
can run:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">git send-email 0001-<em>updated-translations-for-XX</em>.patch
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
466
docs/wmaker_i18n.rst
Normal file
@@ -0,0 +1,466 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Internationalisation
|
||||||
|
---
|
||||||
|
|
||||||
|
Window Maker Internationalisation
|
||||||
|
=================================
|
||||||
|
|
||||||
|
A guide to enable support for language translations in WINDOW MAKER and to the
|
||||||
|
contributors who want to help translating.
|
||||||
|
|
||||||
|
.. sectnum::
|
||||||
|
.. contents:: Table of Contents
|
||||||
|
:backlinks: none
|
||||||
|
|
||||||
|
This manual is for Window Maker, version git#next.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
Enabling Languages support
|
||||||
|
--------------------------
|
||||||
|
|
||||||
|
WINDOW MAKER has the possibility to be translated in many languages, but by
|
||||||
|
default none of them will be installed, and the support for translation will
|
||||||
|
not be compiled.
|
||||||
|
|
||||||
|
To enable the translation capabilities, you have to specify which language(s)
|
||||||
|
you want to be installed: this is done with the variable ``LINGUAS`` when
|
||||||
|
running the ``configure`` script. This variable should contain the
|
||||||
|
space-separated list of languages you want to install.
|
||||||
|
|
||||||
|
You could for instance enable both French (``fr``) and Dutch (``nl``) with
|
||||||
|
this:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
$ ./configure LINGUAS="fr nl"
|
||||||
|
|
||||||
|
You can of course add any other option that you want to the ``configure``
|
||||||
|
command. From the moment you specify the variable, the ``configure`` script
|
||||||
|
will check that you have the appropriate dependencies for this (basically the
|
||||||
|
``gettext`` function and the ``libintl`` library); when you run ``make`` to
|
||||||
|
compile the project, it will also compile the translation (``mo`` files) for
|
||||||
|
the language(s) you asked (if available, of course), and during ``make
|
||||||
|
install`` it will install them in the usual directory.
|
||||||
|
|
||||||
|
The installation directory can be changed with the standard option
|
||||||
|
``--localedir`` to the ``configure`` script, the default path being
|
||||||
|
``PREFIX/share/locale/<lang>/LC_MESSAGES``).
|
||||||
|
|
||||||
|
Getting the list of supported languages
|
||||||
|
.......................................
|
||||||
|
|
||||||
|
The naming convention for the languages follows the ``ISO 639-1`` standard, for
|
||||||
|
which you can find a summary list in the `GNU gettext manual
|
||||||
|
<https://www.gnu.org/software/gettext/manual/html_node/Usual-Language-Codes.html>`_.
|
||||||
|
|
||||||
|
But as WINDOW MAKER does not support all of them, the ``configure`` script will
|
||||||
|
print a warning for each language you specify that it does not know, and sum up
|
||||||
|
at the end the list of enabled languages that will be installed.
|
||||||
|
|
||||||
|
There is a non-standard possibility to set ``LINGUAS`` to ``list``, in which
|
||||||
|
case the ``configure`` script will provide you the list of languages it
|
||||||
|
supports, and stop:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./configure LINGUAS="list"
|
||||||
|
|
||||||
|
There is also another non-standard possibility to enable all the languages that
|
||||||
|
WINDOW MAKER supports by setting ``LINGUAS`` to ``*``. This is an internal
|
||||||
|
trick implemented so the development team can have the command ``make
|
||||||
|
distcheck`` include some checks on translations:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./configure LINGUAS='*'
|
||||||
|
|
||||||
|
Translations for Menus
|
||||||
|
......................
|
||||||
|
|
||||||
|
In order to propose an *Application Menu* (also called *Root Menu*) that is
|
||||||
|
also translated in the language of the interface, WINDOW MAKER implements two
|
||||||
|
complementary mechanisms:
|
||||||
|
|
||||||
|
The first, always enabled when i18n support is enabled, is to look for the menu
|
||||||
|
file containing the name of the locale. For example, if the file is called
|
||||||
|
``menu`` and the language is set as ``LANG=fr_FR.utf-8``, then WINDOW MAKER
|
||||||
|
will search for, and use the first match found:
|
||||||
|
|
||||||
|
- ``menu.fr_FR.utf-8``
|
||||||
|
- ``menu.fr_FR``
|
||||||
|
- ``menu.fr``
|
||||||
|
- ``menu``
|
||||||
|
|
||||||
|
The second possibility, which is not enabled by default, is to be able to use a
|
||||||
|
custom ``po`` file which contains the translations for the text of the menu.
|
||||||
|
This feature is enabled at compile time, using the option
|
||||||
|
``--with-menu-textdomain`` to the ``configure`` script. For example, if you
|
||||||
|
specify:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./configure --with-menu-textdomain=WMMenu
|
||||||
|
|
||||||
|
then the translations for the menu will be searched in the file ``WMMenu.mo``
|
||||||
|
located at the standard location, the default path being
|
||||||
|
`PREFIX/share/locale/[lang]/LC_MESSAGES/WMMenu.mo`.
|
||||||
|
|
||||||
|
If you do not enable the feature (the default behaviour, or with an explicit
|
||||||
|
``--without-menu-textdomain``), then WINDOW MAKER will **not** try to translate
|
||||||
|
the strings, even using its own domain file (``WindowMaker.mo``).
|
||||||
|
|
||||||
|
|
||||||
|
Setting ``LINGUAS`` at system level
|
||||||
|
...................................
|
||||||
|
|
||||||
|
As the variable ``LINGUAS`` is quite standard, you also have the possibility to
|
||||||
|
set its value in the ``config.site`` file for AUTOCONF. This file can be placed
|
||||||
|
in one of these paths:
|
||||||
|
|
||||||
|
- ``PREFIX/share/config.site``
|
||||||
|
- ``PREFIX/etc/config.site``
|
||||||
|
|
||||||
|
This way, the same language list will be used for all the programs that use
|
||||||
|
AUTOCONF that you would compile. Please note that if you also specify a value
|
||||||
|
on the command line, it will have precedence over the value in that file.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
Choosing the Language
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
If you have compiled and installed WINDOW MAKER with support for your language,
|
||||||
|
the effective translation is done is the very same way as any other application
|
||||||
|
on an UNIX system, you just have to set the shell variable ``LANG`` to your
|
||||||
|
language before ``wmaker`` is started. In ``sh`` type of shell (SH, KSH, BASH,
|
||||||
|
...), this is done for example with (``fr`` is for French):
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
export LANG=fr
|
||||||
|
|
||||||
|
There is also a command line option ``--locale`` for WINDOW MAKER which may be
|
||||||
|
used to set the language:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
wmaker --locale fr
|
||||||
|
|
||||||
|
When using this option, WINDOW MAKER will use the locale you specified,
|
||||||
|
redefining the ``LANG`` environment variable to this value so all program
|
||||||
|
started from WINDOW MAKER will inherit its value.
|
||||||
|
|
||||||
|
If your system is using SYSTEMD, you can also configure the locale at system
|
||||||
|
level using the command:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
localectl set-locale LANG=fr
|
||||||
|
|
||||||
|
You can check if the current value is properly supported with the command:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
locale
|
||||||
|
|
||||||
|
|
||||||
|
If this does not work, you may need first to activate the support for your
|
||||||
|
locale in the system; you can get the list of currently enabled locales with
|
||||||
|
the command:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
locale -a
|
||||||
|
|
||||||
|
You should be able to enable a new language support by editing the file
|
||||||
|
``/etc/locale.gen`` to uncomment the locale(s) you need (by removing the ``#``
|
||||||
|
character and space(s) in front of it, and by running the command
|
||||||
|
``locale-gen`` as root.
|
||||||
|
|
||||||
|
For further information, you may wish to read dedicated documentation, for
|
||||||
|
example from `the Linux Documentation Project
|
||||||
|
<http://tldp.org/HOWTO/HOWTO-INDEX/other-lang.html>`_ or through pages like
|
||||||
|
`Shell Hacks' note on Changing Locale
|
||||||
|
<http://www.shellhacks.com/en/HowTo-Change-Locale-Language-and-Character-Set-in-Linux>`_.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
Troubleshooting
|
||||||
|
---------------
|
||||||
|
|
||||||
|
If I18N support does not work for you, check these:
|
||||||
|
|
||||||
|
|
||||||
|
- the ``LANG`` environment variable is set to your locale, and
|
||||||
|
the locale is supported by your OS's locale or X's locale
|
||||||
|
emulation. you can display all supported locales by
|
||||||
|
executing "``locale -a``" command if it is available; you
|
||||||
|
can check if your locale is supported by X's locale emulation,
|
||||||
|
see ``/usr/share/X11/locale/locale.alias``
|
||||||
|
|
||||||
|
- check if you are using an appropriate fonts for the locale you chose. If
|
||||||
|
you're using a font set that has a different encoding than the one used by
|
||||||
|
XLIB or LIBC, bad things can happen. Try specifically putting the encoding in
|
||||||
|
the ``LANG`` variable, like ``ru_RU.KOI8-R``. Again, see
|
||||||
|
``/usr/share/X11/locale/locale.alias``
|
||||||
|
|
||||||
|
- the fonts you're using support your locale. if your font setting on
|
||||||
|
``$HOME/GNUstep/Defaults/WindowMaker`` is like...
|
||||||
|
|
||||||
|
.. code:: ini
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
WindowTitleFont = "Trebuchet MS:bold:pixelsize=12";
|
||||||
|
MenuTitleFont = "Trebuchet MS:bold:pixelsize=12";
|
||||||
|
|
||||||
|
then you can't display Asian languages (``ja``, ``ko``, ``ch``, ...)
|
||||||
|
characters using ``Trebuchet MS``. A font that is guaranteed to work for any
|
||||||
|
language is ``sans`` (or ``sans-serif``). ``sans`` is not a font itself, but
|
||||||
|
an alias which points to multiple fonts and will load the first in that list
|
||||||
|
that has the ability to show glyphs in your language. If you don't know a
|
||||||
|
font that is suited for your language you can always set all your fonts to
|
||||||
|
something like:
|
||||||
|
|
||||||
|
.. code:: ini
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
|
||||||
|
"sans:pixelsize=12"
|
||||||
|
|
||||||
|
|
||||||
|
However, please note that if your font is something like:
|
||||||
|
|
||||||
|
.. code:: ini
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
"Trebuchet MS,sans serif:pixelsize=12"
|
||||||
|
|
||||||
|
this will not be able to display Asian languages if any of the previous fonts
|
||||||
|
before sans are installed. This is because unlike the proper font pickup that
|
||||||
|
``sans`` guarantees for your language, this construct only allows a font
|
||||||
|
fallback mechanism, which tries all the fonts in the list in order, until it
|
||||||
|
finds one that is available, even if it doesn't support your language.
|
||||||
|
|
||||||
|
Also you need to change font settings in style files in the
|
||||||
|
``$HOME/Library/WindowMaker/Style`` directory.
|
||||||
|
|
||||||
|
- the ``LC_CTYPE`` environment variable is unset or it has the correct value.
|
||||||
|
If you don't know what is the correct value, unset it.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
Contribute to Translations
|
||||||
|
--------------------------
|
||||||
|
|
||||||
|
You may have noticed that many translations are not up to date, because the
|
||||||
|
code has evolved but the persons who initially contributed may not have had the
|
||||||
|
time to continue, so any help is welcome.
|
||||||
|
|
||||||
|
Since WINDOW MAKER 0.95.7 there are some targets to ``make`` that can help you
|
||||||
|
in that task.
|
||||||
|
|
||||||
|
Install the latest sources
|
||||||
|
..........................
|
||||||
|
|
||||||
|
If you want to contribute, the first step is get the development branch of the code;
|
||||||
|
this is done using ``git``. If you do not feel confident at all with using
|
||||||
|
``git``, you may also try to ask for a *snapshot* on the developer's mailing
|
||||||
|
list `wmaker-dev@lists.windowmaker.org
|
||||||
|
<mailto:wmaker-dev@lists.windowmaker.org>`_. With ``git`` the procedure is:
|
||||||
|
|
||||||
|
.. code:: bash
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
# Get your working copy of the sources
|
||||||
|
git clone git://repo.or.cz/wmaker-crm.git
|
||||||
|
|
||||||
|
# Go into that newly created directory
|
||||||
|
cd wmaker-crm
|
||||||
|
|
||||||
|
# Switch to the branch where everything happens
|
||||||
|
git checkout next
|
||||||
|
|
||||||
|
# Generate the configuration script
|
||||||
|
./autogen.sh
|
||||||
|
|
||||||
|
Now you should have an up-to-date working copy ready to be compiled; you will
|
||||||
|
not need to go the full way but you should run the ``configure`` script, so it
|
||||||
|
will create the ``Makefile`s``, and you may want to compile the code once so it
|
||||||
|
will not do it again automatically later while you are doing something else:
|
||||||
|
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
# Setup the build, enabling at least the language you want to work on
|
||||||
|
./configure LINGUAS="<list of iso 639 country code>"
|
||||||
|
|
||||||
|
# Compile the code once
|
||||||
|
make
|
||||||
|
|
||||||
|
Updating the Translations
|
||||||
|
.........................
|
||||||
|
|
||||||
|
The typical process for translating one program is:
|
||||||
|
|
||||||
|
- generate a POT file (PO Template): this is done with ``xgettext`` which
|
||||||
|
searches for all the strings from the sources that can be translated;
|
||||||
|
- update the PO file for your language: this is done with ``msgmerge`` which
|
||||||
|
compares the PO file and aligns it to the latest template;
|
||||||
|
- edit the new PO file: this is done by you with your favourite editor, to add
|
||||||
|
the missing ``msgstr``, review the possible *fuzzy matches*, …
|
||||||
|
- check the PO file: unfortunately there is no definitive method for this;
|
||||||
|
- submit your contribution to the project: this is done with ``git``.
|
||||||
|
|
||||||
|
In WINDOW MAKER, you have actually 4 ``po`` files to take care of:
|
||||||
|
|
||||||
|
- ``po/<LANG>.po``: for WINDOW MAKER itself
|
||||||
|
- ``WPrefs.app/po/<LANG>.po``: for the Preference Editor program
|
||||||
|
- ``WINGs/po/<LANG>.po``: for the graphic toolkit library
|
||||||
|
- ``util/po/<LANG>.po``: for the command-line tools of WINDOW MAKER
|
||||||
|
|
||||||
|
As stated previously, there is a ``make`` target that can help you to
|
||||||
|
automatically generate the POT and update the PO for these 4 cases:
|
||||||
|
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
make update-lang PO=<LANG>
|
||||||
|
|
||||||
|
Once run, it will have updated as needed the 4 ``po`` files against the latest
|
||||||
|
source code. You may wish to use the command ``git gui`` to view the changes;
|
||||||
|
you can now edit the files to complete the translation, correct them, remove
|
||||||
|
deprecated stuff, … Please note that the encoding should be set to *UTF-8* as
|
||||||
|
this is now the standard.
|
||||||
|
|
||||||
|
.. TODO: change mailing list address
|
||||||
|
|
||||||
|
If you think an error message is too obscure, just ask on the developer mailing
|
||||||
|
list `wmaker-dev@lists.windowmaker.org
|
||||||
|
<mailto:wmaker-dev@lists.windowmaker.org>`_: in addition to clarifications
|
||||||
|
there's even a chance for the original message to be improved!
|
||||||
|
|
||||||
|
You may find some information on working with ``po`` file in the `GNU gettext
|
||||||
|
documentation
|
||||||
|
<https://www.gnu.org/software/gettext/manual/html_node/Editing.html>`_.
|
||||||
|
|
||||||
|
Translate the Man Pages
|
||||||
|
.......................
|
||||||
|
|
||||||
|
You may want to extend the translation to the documentation that is provided to
|
||||||
|
users in the form of Unix *man pages*. The sources of the man pages are located
|
||||||
|
in the ``doc/`` directory; the translation should be placed in the directory
|
||||||
|
``doc/LANG/`` with the same file name.
|
||||||
|
|
||||||
|
.. TODO: change mailing list address
|
||||||
|
|
||||||
|
The directory will also need a file ``Makefile.am`` which provides the list of
|
||||||
|
man pages to be included in the distribution package and to be installed. You
|
||||||
|
can probably get inspiration from an existing one from another language; if you
|
||||||
|
do not feel confident about it do not hesitate to ask on the project's mailing
|
||||||
|
list (`wmaker-dev@lists.windowmaker.org
|
||||||
|
<mailto:wmaker-dev@lists.windowmaker.org>`_), either for help or to ask someone
|
||||||
|
to make it for you.
|
||||||
|
|
||||||
|
Please note that although most man pages sources are directly in man page
|
||||||
|
format (*nroff*, the file extension being a number), a few of them are
|
||||||
|
processed by a script (those with the ``.in`` extension, like ``wmaker.in``).
|
||||||
|
This is done because in some case we want the man page to reflect the actual
|
||||||
|
compilation options.
|
||||||
|
|
||||||
|
You may not want to bother with this hassle, in which case you can simply name
|
||||||
|
your translation file with the ``.1`` and remove the special ``@keyword@``
|
||||||
|
marks. If you are sure you want to keep that processing but do not feel
|
||||||
|
confident about hacking the ``Makefile.am`` do not hesitate to ask on the
|
||||||
|
project's mailing list (`wmaker-dev@lists.windowmaker.org
|
||||||
|
<mailto:wmaker-dev@lists.windowmaker.org>`_).
|
||||||
|
|
||||||
|
Checking the Result
|
||||||
|
...................
|
||||||
|
|
||||||
|
In the WINDOW MAKER build tree you also have another target that can help you,
|
||||||
|
it is ``make check``.
|
||||||
|
|
||||||
|
At current time, it does not check much, but if during the ``make update-lang``
|
||||||
|
new ``po`` file have been created you may get some errors, because you have to
|
||||||
|
add these new files to the variable ``EXTRA_DIST`` in the corresponding
|
||||||
|
``Makefile``.
|
||||||
|
|
||||||
|
If you do not feel confident about doing it, do not worry, just tell about it
|
||||||
|
when you submit your work, and some developer on the mailing list will just be
|
||||||
|
happy to do it for you when integrating your valuable contribution (we always
|
||||||
|
like when someone helps making WINDOW MAKER better).
|
||||||
|
|
||||||
|
Submitting your Contribution
|
||||||
|
............................
|
||||||
|
|
||||||
|
*Preliminary Remark*: if the update process made changes in a ``po`` file but
|
||||||
|
you did not change any ``msgstr`` content, it is probably a good idea to not
|
||||||
|
submit the changes to that ``po`` file because it would just add noise.
|
||||||
|
|
||||||
|
When you feel ready to send your changes, the first step is to prepare them.
|
||||||
|
This is done with ``git``: if you have not run the ``git gui`` previously then
|
||||||
|
it is a good time to do it now. This window offers you the possibility to show
|
||||||
|
your changes and to decide what you want to send.
|
||||||
|
|
||||||
|
The window is divided in 4 panes:
|
||||||
|
|
||||||
|
- top-right show the current changes you have selected, for review (and also
|
||||||
|
for cherry-picking stuff if you want to select precisely)
|
||||||
|
- top-left ("Unstaged Changes") the list of files with changes to be send, you
|
||||||
|
can click on the name of the file to see the changes, you can click on the
|
||||||
|
icon of the file if you want to send all the changes in this file; an icon in
|
||||||
|
blue shows a file that have been changed and an icon in black shows a file
|
||||||
|
that is new
|
||||||
|
- bottom-left ("Staged Changes") the list of files with changes that you have
|
||||||
|
chosen to send so far, you can click on the file name to view these changes,
|
||||||
|
you can click on the icon if you want to remove the changes from this file
|
||||||
|
from the list to send
|
||||||
|
|
||||||
|
- bottom-right ("Commit Message") the message you want to attach to your
|
||||||
|
changes when you submit them to the development team
|
||||||
|
|
||||||
|
The idea here is to pick your changes to the ``po`` files; for the *commit
|
||||||
|
message* you may wish to stuck to a simple, single line:
|
||||||
|
|
||||||
|
| "Updated translations for <LANG>"
|
||||||
|
|
||||||
|
The penultimate step is to click on the button ``Sign Off`` (it will add a line
|
||||||
|
in the commit message), and then click on the button ``Commit``. From this
|
||||||
|
time, the commit message will clear itself and the "Staged Changes" also,
|
||||||
|
showing that your action was done.
|
||||||
|
|
||||||
|
You may now quit the ``git gui``, the final step begins by running this
|
||||||
|
command:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
git format-patch HEAD^
|
||||||
|
|
||||||
|
.. TODO: change mailing list address
|
||||||
|
|
||||||
|
This will generate a file named like ``0001-updated-translations-for-XX.patch``
|
||||||
|
which contains your changes, ready for sending. The goal will now be to email
|
||||||
|
this file to `wmaker-dev@lists.windowmaker.org
|
||||||
|
<mailto:wmaker-dev@lists.windowmaker.org>`_. If you feel confident in having
|
||||||
|
``git`` send it for you, you may want to read the file
|
||||||
|
``The-perfect-Window-Maker-patch.txt`` to see how to configure ``git`` for
|
||||||
|
mailing, so you can run:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
git send-email 0001-updated-translations-for-XX.patch
|
||||||
@@ -1,801 +0,0 @@
|
|||||||
---
|
|
||||||
layout: default
|
|
||||||
title: Compilation and Installation
|
|
||||||
---
|
|
||||||
|
|
||||||
<a name="Top"></a>
|
|
||||||
<a name="Window-Maker-Compilation-and-Installation"></a>
|
|
||||||
<h1 class="top">Window Maker Compilation and Installation</h1>
|
|
||||||
|
|
||||||
<p>A guide to configure, compile and install
|
|
||||||
<small>WINDOW MAKER</small> from sources.
|
|
||||||
</p>
|
|
||||||
<a name="SEC_Contents"></a>
|
|
||||||
<h2 class="contents-heading">Table of Contents</h2>
|
|
||||||
|
|
||||||
<div class="contents">
|
|
||||||
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li><a name="toc-Prerequisites-1" href="#Prerequisites">1 Prerequisites</a>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li><a name="toc-Supported-Platforms" href="#Supported-Platforms">1.1 Supported Platforms</a></li>
|
|
||||||
<li><a name="toc-Software-Dependencies-1" href="#Software-Dependencies-1">1.2 Software Dependencies</a></li>
|
|
||||||
<li><a name="toc-Special-Dependencies-1" href="#Special-Dependencies-1">1.3 Special Dependencies</a></li>
|
|
||||||
<li><a name="toc-Optional-Dependencies-1" href="#Optional-Dependencies-1">1.4 Optional Dependencies</a></li>
|
|
||||||
</ul></li>
|
|
||||||
<li><a name="toc-Building-WINDOW-MAKER" href="#Building-Window-Maker">2 Building <small>WINDOW MAKER</small></a>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li><a name="toc-Getting-the-Sources" href="#Getting-the-Sources">2.1 Getting the Sources</a></li>
|
|
||||||
<li><a name="toc-Build-and-Install" href="#Build-and-Install">2.2 Build and Install</a></li>
|
|
||||||
<li><a name="toc-User-specific-configuration" href="#User-specific-configuration">2.3 User specific configuration</a></li>
|
|
||||||
<li><a name="toc-Locales_002fInternationalisation" href="#Locales_002fInternationalisation">2.4 Locales/Internationalisation</a></li>
|
|
||||||
<li><a name="toc-Configure-Options-1" href="#Configure-Options-1">2.5 Configure Options</a>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li><a name="toc-Installation-Directory" href="#Installation-Directory">2.5.1 Installation Directory</a></li>
|
|
||||||
<li><a name="toc-External-Libraries" href="#External-Libraries">2.5.2 External Libraries</a></li>
|
|
||||||
<li><a name="toc-X11-and-Extensions" href="#X11-and-Extensions">2.5.3 X11 and Extensions</a></li>
|
|
||||||
<li><a name="toc-Feature-Selection" href="#Feature-Selection">2.5.4 Feature Selection</a></li>
|
|
||||||
<li><a name="toc-Developer-Stuff" href="#Developer-Stuff">2.5.5 Developer Stuff</a></li>
|
|
||||||
</ul></li>
|
|
||||||
</ul></li>
|
|
||||||
<li><a name="toc-Miscellaneous-1" href="#Miscellaneous">3 Miscellaneous</a>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li><a name="toc-Platform-Specific-Notes" href="#Platform-Specific-Notes">3.1 Platform Specific Notes</a></li>
|
|
||||||
<li><a name="toc-I-don_0027t-have-the-root-password-_003a_0028" href="#I-don_0027t-have-the-root-password-_003a_0028">3.2 I don’t have the <em>root</em> password :(</a></li>
|
|
||||||
<li><a name="toc-Upgrading" href="#Upgrading">3.3 Upgrading</a></li>
|
|
||||||
</ul></li>
|
|
||||||
<li><a name="toc-Troubleshooting-1" href="#Troubleshooting">4 Troubleshooting</a>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li><a name="toc-Error-with-loading-fonts_002c-even-if-they-exist" href="#Error-with-loading-fonts_002c-even-if-they-exist">4.1 Error with loading fonts, even if they exist</a></li>
|
|
||||||
<li><a name="toc-configure-doesn_0027t-detect-libtiff_002c-or-other-graphic-libraries" href="#configure-doesn_0027t-detect-libtiff_002c-or-other-graphic-libraries">4.2 configure doesn’t detect <em>libtiff</em>, or other graphic libraries</a></li>
|
|
||||||
<li><a name="toc-configure-doesn_0027t-detect-libXpm" href="#configure-doesn_0027t-detect-libXpm">4.3 configure doesn’t detect <em>libXpm</em></a></li>
|
|
||||||
<li><a name="toc-Segmentation-fault-on-startup" href="#Segmentation-fault-on-startup">4.4 Segmentation fault on startup</a></li>
|
|
||||||
<li><a name="toc-_0022_002e_002e_002e_003a-your-machine-is-misconfigured_002e-gethostname_0028_0029-returned-_0028none_0029_0022" href="#g_t_0022_002e_002e_002e_003a-your-machine-is-misconfigured_002e-gethostname_0028_0029-returned-_0028none_0029_0022">4.5 "...: your machine is misconfigured. gethostname() returned (none)"</a></li>
|
|
||||||
<li><a name="toc-The-root-menu-contains-only-2-entries_002e-_0028_0022XTerm_0022-and-_0022Exit_002e_002e_002e_0022_0029" href="#The-root-menu-contains-only-2-entries_002e-_0028_0022XTerm_0022-and-_0022Exit_002e_002e_002e_0022_0029">4.6 The root menu contains only 2 entries. ("XTerm" and "Exit...")</a></li>
|
|
||||||
</ul></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<br>
|
|
||||||
<p>This manual is for Window Maker, version git#next.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
<a name="Prerequisites"></a>
|
|
||||||
<a name="Prerequisites-1"></a>
|
|
||||||
<h2 class="chapter">1 Prerequisites</h2>
|
|
||||||
|
|
||||||
<a name="Supported-Platforms"></a>
|
|
||||||
<h3 class="section">1.1 Supported Platforms</h3>
|
|
||||||
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li>- Intel GNU/Linux Systems in general, <tt>ix86</tt> and <tt>x86_64</tt> but other architectures should work
|
|
||||||
</li><li>- BSD systems
|
|
||||||
</li><li>- Solaris, at least on release 10 and 11
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
<p>Patches to make it work on other platforms are welcome.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Software-Dependencies-1"></a>
|
|
||||||
<h3 class="section">1.2 Software Dependencies</h3>
|
|
||||||
<a name="Software-Dependencies"></a>
|
|
||||||
<p>The following software is required to use <small>WINDOW MAKER</small>:
|
|
||||||
</p><ul class="no-bullet">
|
|
||||||
<li>- X11R6.x
|
|
||||||
|
|
||||||
<p>Window Maker can be compiled in older versions of <em>X</em>, like <em>X11R5</em> (<em>Solaris</em>)
|
|
||||||
or <em>X11R4</em> (<em>OpenWindows</em>) but it will not work 100% correctly.
|
|
||||||
In such servers there will not be application icons and you’ll have trouble using the dock.
|
|
||||||
Upgrading the client libraries (<em>Xlib</em>, <em>Xt</em>, etc.) will help if you can’t upgrade
|
|
||||||
the server.
|
|
||||||
</p></li></ul>
|
|
||||||
|
|
||||||
<p>The following is required to build <small>WINDOW MAKER</small>:
|
|
||||||
</p><ul class="no-bullet">
|
|
||||||
<li>- Basic obvious stuff
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li> <em>gcc</em> (or some other ANSI C compiler, supporting some C99 extensions)
|
|
||||||
</li><li> <em>glibc</em> development files (usually <samp>glibc-devel</samp> in Linux distributions)
|
|
||||||
</li><li> <em>X</em> development files (<samp>XFree86-devel</samp> or something similar)
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
</li><li>- <em>Xft2</em> and its dependencies
|
|
||||||
|
|
||||||
<p>Dependencies include <em>freetype2</em> and <em>fontconfig</em>.
|
|
||||||
You will also need the development files for them (<samp>xft2-devel</samp>).
|
|
||||||
Sources are available at: <a href="http://www.freedesktop.org/wiki/Software/Xft/">http://www.freedesktop.org/wiki/Software/Xft/</a>
|
|
||||||
</p>
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
<p><b>Note</b>:
|
|
||||||
<small>WINDOW MAKER</small> is known to compile with <em>gcc</em> and <em>clang</em>;
|
|
||||||
the code source is mostly ANSI C (also known as C89 and C90) but is uses very few of the C99
|
|
||||||
novelties;
|
|
||||||
it also uses a few attributes introduced in the C11 standard but those are detected automatically,
|
|
||||||
so most compilers should work.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Special-Dependencies-1"></a>
|
|
||||||
<h3 class="section">1.3 Special Dependencies</h3>
|
|
||||||
<a name="Special-Dependencies"></a>
|
|
||||||
|
|
||||||
<p>If you want to compile using the sources from the git repository instead of the distribution
|
|
||||||
package, you will also need:
|
|
||||||
</p><ul>
|
|
||||||
<li> <em>git</em>
|
|
||||||
</li><li> <em>autoconf</em> 2.69
|
|
||||||
</li><li> <em>automake</em> 1.12
|
|
||||||
</li><li> <em>libtool</em> 1.4.2
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="Optional-Dependencies-1"></a>
|
|
||||||
<h3 class="section">1.4 Optional Dependencies</h3>
|
|
||||||
<a name="Optional-Dependencies"></a>
|
|
||||||
<p>These libraries are not required to make <small>WINDOW MAKER</small> work, but they are supported in case you
|
|
||||||
want to use them. Version numbers are indicative, but other versions might work too.
|
|
||||||
</p>
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li>- <em>libXPM</em> 4.7 or newer
|
|
||||||
|
|
||||||
<p>Older versions may not work!
|
|
||||||
</p>
|
|
||||||
<p>Available from <a href="http://xlibs.freedesktop.org/release/">http://xlibs.freedesktop.org/release/</a>
|
|
||||||
</p>
|
|
||||||
<p>There is built-in support for <em>XPM</em> files, but it will not
|
|
||||||
load images in some uncommon encodings.
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>libpng</em> 0.96 or newer and <em>zlib</em>
|
|
||||||
|
|
||||||
<p>For <em>PNG</em> image support,
|
|
||||||
<a href="http://www.libpng.org/pub/png/libpng.html">http://www.libpng.org/pub/png/libpng.html</a>
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>libtiff</em> 3.4 or newer
|
|
||||||
|
|
||||||
<p>For <em>TIFF</em> image support,
|
|
||||||
<a href="http://www.libtiff.org/">http://www.libtiff.org/</a>
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>libjpeg</em> 6.0.1 or newer
|
|
||||||
|
|
||||||
<p>For <em>JPEG</em> image support,
|
|
||||||
<a href="http://www.ijg.org/">http://www.ijg.org/</a>
|
|
||||||
</p>
|
|
||||||
<p>Note that if you don’t have it, <code>configure</code> will issue a big warning in the end,
|
|
||||||
this is because JPEG images are often used in themes and for background images
|
|
||||||
so you probably want this format supported.
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>libgif</em> 2.2 or <em>libungif</em>
|
|
||||||
|
|
||||||
<p>For <em>GIF</em> image support,
|
|
||||||
<a href="http://giflib.sourceforge.net/">http://giflib.sourceforge.net/</a>
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>WebP</em> 0.4.1 or newer
|
|
||||||
|
|
||||||
<p>The reference library from <em>Google</em> for their image format,
|
|
||||||
<a href="https://developers.google.com/speed/webp/download">https://developers.google.com/speed/webp/download</a>
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>GNU xgettext</em>
|
|
||||||
|
|
||||||
<p>If you want to use translated messages, you will need <em>GNU gettext</em>.
|
|
||||||
Other versions of <em>gettext</em> are not compatible and will not work.
|
|
||||||
Get the <em>GNU</em> version from <a href="http://www.gnu.org/software/gettext/">http://www.gnu.org/software/gettext/</a>
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>Pango</em> 1.36.8 or newer
|
|
||||||
|
|
||||||
<p>This library can be used by the <em>WINGs</em> toolkit to improve support for <em>UTF-8</em> and for
|
|
||||||
languages written in right-to-left direction, in some widgets.
|
|
||||||
You have to explicitly ask for its support through (see <a href="#Configure-Options">Configure Options</a>).
|
|
||||||
You can get it from <a href="http://www.pango.org/Download">http://www.pango.org/Download</a>
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>libbsd</em>
|
|
||||||
|
|
||||||
<p>This library can be used by the <em>WINGs</em> utility library to make use of <code>strlcat</code> and
|
|
||||||
<code>strlcpy</code> instead of using built-in functions if your system does not provide them in its
|
|
||||||
core <em>libc</em>.
|
|
||||||
You should let <small>WINDOW MAKER</small>’s <code>configure</code> detect this for you.
|
|
||||||
You can get it from <a href="http://libbsd.freedesktop.org/wiki/">http://libbsd.freedesktop.org/wiki/</a>
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>Inotify</em>
|
|
||||||
|
|
||||||
<p>If you have Linux’s <em>inotify</em> support, <small>WINDOW MAKER</small> will use it to check for configuration
|
|
||||||
updates instead of polling regularly the file.
|
|
||||||
The needed header comes with the kernel, typical packages names include:
|
|
||||||
</p><ul>
|
|
||||||
<li> <samp>kernel-headers</samp> for <em>Slackware</em> and <em>Fedora</em>
|
|
||||||
</li><li> <samp>linux-userspace-headers</samp> for <em>Mageia</em>
|
|
||||||
</li><li> <samp>linux-libc-dev</samp> for <em>Debian</em> and <em>Ubuntu</em>
|
|
||||||
</li><li> <samp>linux-glibc-devel</samp> for <em>OpenSuSE</em>
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
</li><li>- <em>MagickWand</em> 6.8.9-9 or newer
|
|
||||||
|
|
||||||
<p>If found, then the library <em>WRaster</em> can use the <em>ImageMagick</em> library to let
|
|
||||||
<small>WINDOW MAKER</small> support more image formats, like <em>SVG</em>, <em>BMP</em>, <em>TGA</em>, ...
|
|
||||||
You can get it from <a href="http://www.imagemagick.org/">http://www.imagemagick.org/</a>
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>Boehm GC</em>
|
|
||||||
|
|
||||||
<p>This library can be used by the <em>WINGs</em> utility toolkit to use a
|
|
||||||
<cite>Boehm-Demers-Weiser Garbage Collector</cite> instead of the traditional
|
|
||||||
<code>malloc</code>/<code>free</code> functions from the <em>libc</em>.
|
|
||||||
You have to explicitly ask for its support though (see <a href="#Configure-Options">Configure Options</a>).
|
|
||||||
You can get it from <a href="http://www.hboehm.info/gc/">http://www.hboehm.info/gc/</a>
|
|
||||||
</p>
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
<a name="Building-Window-Maker"></a>
|
|
||||||
<a name="Building-WINDOW-MAKER"></a>
|
|
||||||
<h2 class="chapter">2 Building <small>WINDOW MAKER</small></h2>
|
|
||||||
|
|
||||||
<a name="Getting-the-Sources"></a>
|
|
||||||
<h3 class="section">2.1 Getting the Sources</h3>
|
|
||||||
|
|
||||||
<p>The latest version of <small>WINDOW MAKER</small> (<tt>-crm</tt>) can be downloaded from
|
|
||||||
<a href="http://www.windowmaker.org/">http://www.windowmaker.org/</a>
|
|
||||||
</p>
|
|
||||||
<p>Alternatively, the development branch, called <tt>#next</tt> is in the <em>git</em> repository at
|
|
||||||
<a href="http://repo.or.cz/w/wmaker-crm.git">http://repo.or.cz/w/wmaker-crm.git</a>
|
|
||||||
</p>
|
|
||||||
<p>If you want to use the <em>git</em> versions, you can get it with:
|
|
||||||
</p><div class="example">
|
|
||||||
<pre class="example">git clone -b next git://repo.or.cz/wmaker-crm.git
|
|
||||||
</pre></div>
|
|
||||||
<p>then, assuming you have the dependencies listed in <a href="#Special-Dependencies">Special Dependencies</a>, you have to
|
|
||||||
type:
|
|
||||||
</p><div class="example">
|
|
||||||
<pre class="example">./autogen.sh
|
|
||||||
</pre></div>
|
|
||||||
<p>to generate the configuration script.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Build-and-Install"></a>
|
|
||||||
<h3 class="section">2.2 Build and Install</h3>
|
|
||||||
|
|
||||||
<p>For a quick start, type the following in your shell prompt:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">./configure
|
|
||||||
make
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>then, login as <em>root</em> and type:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">make install
|
|
||||||
ldconfig
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>or if you want to strip the debugging symbols from the binaries to make them smaller,
|
|
||||||
you can type instead:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">make install-strip
|
|
||||||
ldconfig
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>This will build and install <small>WINDOW MAKER</small> with default parameters.
|
|
||||||
</p>
|
|
||||||
<p>If you want to customise some compile-time options, you can do the following:
|
|
||||||
</p>
|
|
||||||
<ol>
|
|
||||||
<li> (optional) Look at the <a href="#Configure-Options">Configure Options</a>, for the options available.
|
|
||||||
Also run:
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">./configure --help
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>to get a complete list of options that are available.
|
|
||||||
</p>
|
|
||||||
</li><li> Run configure with the options you want.
|
|
||||||
For example, if you want to use the <samp>--enable-modelock</samp> option, type:
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">./configure --enable-modelock
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
</li><li> (optional) Edit <samp>src/wconfig.h</samp> with your favourite text editor and browse through it for some
|
|
||||||
options you might want to change.
|
|
||||||
|
|
||||||
</li><li> Compile. Just type:
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">make
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
</li><li> Login as root (if you can’t do that, read the <a href="#No-Root-Password">I don’t have the <em>root</em> password</a>)
|
|
||||||
and install <small>WINDOW MAKER</small> in your system:
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">su root
|
|
||||||
make install
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
</li></ol>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="User-specific-configuration"></a>
|
|
||||||
<h3 class="section">2.3 User specific configuration</h3>
|
|
||||||
|
|
||||||
<p>These instructions do not need to be followed when upgrading <small>WINDOW MAKER</small>
|
|
||||||
from an older version, unless stated differently in the <cite>NEWS</cite> file.
|
|
||||||
</p>
|
|
||||||
<p>Every user on your system that wishes to run <small>WINDOW MAKER</small> must do the
|
|
||||||
following:
|
|
||||||
</p>
|
|
||||||
<ol>
|
|
||||||
<li> Install Window Maker configuration files in your home directory.
|
|
||||||
Type:
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">wmaker.inst
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p><code>wmaker.inst</code> will install <small>WINDOW MAKER</small> configuration files and will
|
|
||||||
setup X to automatically launch <small>WINDOW MAKER</small> at startup.
|
|
||||||
</p>
|
|
||||||
</li></ol>
|
|
||||||
|
|
||||||
<p>That’s it!
|
|
||||||
</p>
|
|
||||||
<p>You can type <code>man wmaker</code> to get some general help for configuration
|
|
||||||
and other stuff.
|
|
||||||
</p>
|
|
||||||
<p>Read the <cite>User Guide</cite> for a more in-depth explanation of <small>WINDOW MAKER</small>.
|
|
||||||
</p>
|
|
||||||
<p>You might want to take a look at the <cite>FAQ</cite> too.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Locales_002fInternationalisation"></a>
|
|
||||||
<h3 class="section">2.4 Locales/Internationalisation</h3>
|
|
||||||
|
|
||||||
<p><small>WINDOW MAKER</small> has national language support. The procedure to enable national
|
|
||||||
language support is described in the dedicated
|
|
||||||
<a href="wmaker_i18n.html#Enabling-Languages-support">Enabling Languages support</a> in <cite><samp>README.i18n</samp></cite>.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Configure-Options-1"></a>
|
|
||||||
<h3 class="section">2.5 Configure Options</h3>
|
|
||||||
<a name="Configure-Options"></a>
|
|
||||||
<p>These options can be passed to the configure script to enable/disable
|
|
||||||
some <small>WINDOW MAKER</small> features. Example:
|
|
||||||
</p><div class="example">
|
|
||||||
<pre class="example">./configure --enable-modelock --disable-gif
|
|
||||||
</pre></div>
|
|
||||||
<p>will configure <small>WINDOW MAKER</small> with <em>modelock</em> supported and disable <em>gif</em> support.
|
|
||||||
Normally, you won’t need any of them.
|
|
||||||
</p>
|
|
||||||
<p>To get the list of all options, run <code>./configure --help</code>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Installation-Directory"></a>
|
|
||||||
<h4 class="subsection">2.5.1 Installation Directory</h4>
|
|
||||||
|
|
||||||
<p>The default installation path will be in the <samp>/usr/local</samp> hierarchy;
|
|
||||||
a number of option can customise this:
|
|
||||||
</p>
|
|
||||||
<dl compact="compact">
|
|
||||||
<dt><samp>--prefix=<i>PREFIX</i></samp></dt>
|
|
||||||
<dt><samp>--exec-prefix=<i>EPREFIX</i></samp></dt>
|
|
||||||
<dt><samp>--bindir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--sysconfdir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--libdir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--includedir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--datarootdir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--datadir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--localedir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--mandir=<i>DIR</i></samp></dt>
|
|
||||||
<dd><p>Standard options from <em>autoconf</em> to define target paths,
|
|
||||||
you probably want to read Installation Names in <cite><samp>INSTALL</samp></cite>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--sbindir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--libexecdir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--sharedstatedir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--localstatedir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--oldincludedir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--infodir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--docdir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--htmldir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--dvidir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--pdfdir=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--psdir=<i>DIR</i></samp></dt>
|
|
||||||
<dd><p>More standard options from <em>autoconf</em>, today these are not used by <small>WINDOW MAKER</small>;
|
|
||||||
they are provided automatically by <em>autoconf</em> for consistency.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--with-gnustepdir=<i>PATH</i></samp></dt>
|
|
||||||
<dd><p>Specific to <small>WINDOW MAKER</small>, defines the directory where <samp>WPrefs.app</samp> will be installed,
|
|
||||||
if you want to install it like a <em>GNUstep</em> applications.
|
|
||||||
If not specified, it will be installed like usual programs.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--with-pixmapdir=<i>DIR</i></samp></dt>
|
|
||||||
<dd><p>Specific to <small>WINDOW MAKER</small>, this option defines an additional path where <em>pixmaps</em> will be
|
|
||||||
searched. Nothing will be installed there; the default path taken is <samp><em>DATADIR</em>/pixmaps</samp>,
|
|
||||||
where <var>DATADIR</var> is the path defined from <samp>--datadir</samp>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--with-defsdatadir=<i>DIR</i></samp></dt>
|
|
||||||
<dd><p>Specific to <small>WINDOW MAKER</small>, defines the directory where system configuration
|
|
||||||
files, e.g., <samp>WindowMaker</samp>, <samp>WMRootMenu</samp>, etc., are installed. The
|
|
||||||
default value is <samp><em>SYSCONFDIR</em>/WindowMaker</samp>, where <var>SYSCONFDIR</var> is
|
|
||||||
the path defined from <samp>--sysconfdir</samp>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="External-Libraries"></a>
|
|
||||||
<h4 class="subsection">2.5.2 External Libraries</h4>
|
|
||||||
|
|
||||||
<p>Unless specifically written, <code>configure</code> will try to detect automatically for the libraries;
|
|
||||||
if you explicitly provide <samp>--enable-<em>FEATURE</em></samp> then it will break with an error message
|
|
||||||
if the library cannot be linked;
|
|
||||||
if you specify <samp>--disable-<em>FEATURE</em></samp> then it will not try to search for the library.
|
|
||||||
You can find more information about the libraries in the
|
|
||||||
<a href="#Optional-Dependencies">Optional Dependencies</a>.
|
|
||||||
</p>
|
|
||||||
<dl compact="compact">
|
|
||||||
<dt><samp>--enable-boehm-gc</samp></dt>
|
|
||||||
<dd><p>Never enabled by default, use Boehm GC instead of the default <em>libc</em> <code>malloc()</code>
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-gif</samp></dt>
|
|
||||||
<dd><p>Disable GIF support in <em>WRaster</em> library; when enabled use <samp>libgif</samp> or <samp>libungif</samp>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-jpeg</samp></dt>
|
|
||||||
<dd><p>Disable JPEG support in <em>WRaster</em> library; when enabled use <samp>libjpeg</samp>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--without-libbsd</samp></dt>
|
|
||||||
<dd><p>Refuse use of the <samp>libbsd</samp> compatibility library in <em>WINGs</em> utility library,
|
|
||||||
even if your system provides it.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-magick</samp></dt>
|
|
||||||
<dd><p>Disable <em>ImageMagick’s MagickWand</em> support in <em>WRaster</em>, used to support for image formats.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--enable-pango</samp></dt>
|
|
||||||
<dd><p>Disabled by default, enable <em>Pango</em> text layout support in <em>WINGs</em>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-png</samp></dt>
|
|
||||||
<dd><p>Disable PNG support in <em>WRaster</em>; when enabled use <samp>libpng</samp>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-tiff</samp></dt>
|
|
||||||
<dd><p>Disable TIFF support in <em>WRaster</em>. when enabled use <samp>libtiff</samp>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-webp</samp></dt>
|
|
||||||
<dd><p>Disable WEBP support in <em>WRaster</em>. when enabled use <samp>libwebp</samp>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-xpm</samp></dt>
|
|
||||||
<dd><p>Disable use of <samp>libXpm</samp> for XPM support in <em>WRaster</em>, use internal code instead.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<p>The following options can be used to tell <code>configure</code> about extra paths that needs to be
|
|
||||||
used when compiling against libraries:
|
|
||||||
</p>
|
|
||||||
<dl compact="compact">
|
|
||||||
<dt><samp>--with-libs-from</samp></dt>
|
|
||||||
<dd><p>specify additional paths for libraries to be searched.
|
|
||||||
The <samp>-L</samp> flag must precede each path, like:
|
|
||||||
</p><div class="example">
|
|
||||||
<pre class="example">--with-libs-from="-L/opt/libs -L/usr/local/lib"
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--with-incs-from</samp></dt>
|
|
||||||
<dd><p>specify additional paths for header files to be searched.
|
|
||||||
The <samp>-I</samp> flag must precede each paths, like:
|
|
||||||
</p><div class="example">
|
|
||||||
<pre class="example">--with-incs-from="-I/opt/headers -I/usr/local/include"
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="X11-and-Extensions"></a>
|
|
||||||
<h4 class="subsection">2.5.3 X11 and Extensions</h4>
|
|
||||||
|
|
||||||
<p><code>configure</code> will try to detect automatically the compilation paths for X11 headers and
|
|
||||||
libraries, and which X Extensions support can be enabled.
|
|
||||||
if you explicitly provide <samp>--enable-<em>FEATURE</em></samp> then it will break with an error message
|
|
||||||
if the extension cannot be used;
|
|
||||||
if you specify <samp>--disable-<em>FEATURE</em></samp> then it will not check for the extension.
|
|
||||||
</p>
|
|
||||||
<dl compact="compact">
|
|
||||||
<dt><samp>--x-includes=<i>DIR</i></samp></dt>
|
|
||||||
<dt><samp>--x-libraries=<i>DIR</i></samp></dt>
|
|
||||||
<dd><p><em>Autoconf</em>’s option to specify search paths for <em>X11</em>,
|
|
||||||
for the case were it would not have been able to detect it automatically.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-xlocale</samp></dt>
|
|
||||||
<dd><p>If you activated support for Native Languages, then <em>X11</em> may use a hack to also configure its
|
|
||||||
locale support when the program configure the locale for itself.
|
|
||||||
The <code>configure</code> script detects if the <em>Xlib</em> supports this or not;
|
|
||||||
this options explicitly disable this initialisation mechanism.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--enable-modelock</samp></dt>
|
|
||||||
<dd><p>XKB language status lock support. If you don’t know what it is you probably don’t need it.
|
|
||||||
The default is to not enable it.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-shm</samp></dt>
|
|
||||||
<dd><p>Disable use of the <em>MIT shared memory</em> extension.
|
|
||||||
This will slow down texture generation a little bit, but in some cases it seems to be necessary due
|
|
||||||
to a bug that manifests as messed icons and textures.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-shape</samp></dt>
|
|
||||||
<dd><p>Disables support for <em>shaped</em> windows (for <code>oclock</code>, <code>xeyes</code>, etc.).
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--enable-xinerama</samp></dt>
|
|
||||||
<dd><p>The <em>Xinerama</em> extension provides information about the different screens connected when
|
|
||||||
running a multi-head setting (if you plug more than one monitor).
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--enable-randr</samp></dt>
|
|
||||||
<dd><p>The <em>RandR</em> extension provides feedback when changing the multiple-monitor configuration in X11
|
|
||||||
and allows to re-configure how screens are organised.
|
|
||||||
</p>
|
|
||||||
<p>At current time, it is not enabled by default because it is NOT recommended (buggy);
|
|
||||||
<small>WINDOW MAKER</small> only restart itself when the configuration change, to take into account the new
|
|
||||||
screen size.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="Feature-Selection"></a>
|
|
||||||
<h4 class="subsection">2.5.4 Feature Selection</h4>
|
|
||||||
|
|
||||||
<dl compact="compact">
|
|
||||||
<dt><samp>--disable-animations</samp></dt>
|
|
||||||
<dd><p>Disable animations permanently, by not compiling the corresponding code into <small>WINDOW MAKER</small>.
|
|
||||||
When enabled (the default), you still have a run-time configuration option in <em>WPrefs</em>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-mwm-hints</samp></dt>
|
|
||||||
<dd><p>Disable support for Motif’s MWM Window Manager hints.
|
|
||||||
These attributes were introduced by the Motif toolkit to ask for special window appearance requests.
|
|
||||||
Nowadays this is covered by the NetWM/EWMH specification, but there are still applications that rely on MWM Hints.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--enable-wmreplace</samp></dt>
|
|
||||||
<dd><p>Add support for the <em>ICCCM</em> protocol for cooperative window manager replacement.
|
|
||||||
This feature is disabled by default because you probably don’t need to switch seamlessly the window manager;
|
|
||||||
if you are making a package for a distribution you’d probably want to enable this because it allows users to give
|
|
||||||
a try to different window managers without restarting everything for an extra cost that is not really big.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--disable-xdnd</samp></dt>
|
|
||||||
<dd><p>Disable support for dragging and dropping files on the dock, which launches a user-specified command
|
|
||||||
with that file.
|
|
||||||
Starting from version 0.65.6 this feature is enabled by default.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--enable-ld-version-script</samp></dt>
|
|
||||||
<dd><p>This feature is auto-detected, and you should not use this option.
|
|
||||||
When compiling a library (<samp>wrlib</samp>, ...), <em>gcc</em> has the possibility to filter the list of
|
|
||||||
functions that will be visible, to keep only the public API, because it helps running programs
|
|
||||||
faster.
|
|
||||||
</p>
|
|
||||||
<p>The <code>configure</code> script checks if this feature is available;
|
|
||||||
if you specify this option it will not check anymore and blindly trust you that it is supposed to
|
|
||||||
work, which is not a good idea as you may encounter problems later when compiling.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--enable-usermenu</samp></dt>
|
|
||||||
<dd><p>This feature, disabled by default, allows to add a user-defined custom menu to applications;
|
|
||||||
when choosing an entry of the menu it will send the key combination defined by the user to that
|
|
||||||
application. See <a href="http://repo.or.cz/wmaker-crm.git/blob/HEAD:/NEWS">Application User Menu</a> in <cite><samp>NEWS</samp></cite> for more information.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--with-menu-textdomain=<i>DOMAIN</i></samp></dt>
|
|
||||||
<dd><p>Selection of the domain used for translation of the menus;
|
|
||||||
see <a href="wmaker_i18n.html#Translations-for-Menus">Translations for Menus</a> in <cite><samp>README.i18n</samp></cite>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="Developer-Stuff"></a>
|
|
||||||
<h4 class="subsection">2.5.5 Developer Stuff</h4>
|
|
||||||
|
|
||||||
<p>These options are disabled by default:
|
|
||||||
</p>
|
|
||||||
<dl compact="compact">
|
|
||||||
<dt><samp>--config-cache</samp></dt>
|
|
||||||
<dd><p>If you intend to re-run the <code>configure</code> script often, you probably want to include this
|
|
||||||
option, so it will save and re-use the status of what have been detected in the file
|
|
||||||
<samp>config.cache</samp>.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--enable-debug</samp></dt>
|
|
||||||
<dd><p>Enable debugging features (debug symbol, some extra verbosity and checks) and add a number of
|
|
||||||
check flags (warnings) for the compiler (in <em>gcc</em> fashion).
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
<dt><samp>--enable-lcov=<i>DIRECTORY</i></samp></dt>
|
|
||||||
<dd><p>Enable generation of code coverage and profiling data;
|
|
||||||
if the <samp><i>DIRECTORY</i></samp> is not specified, use <samp>coverage-report</samp>.
|
|
||||||
</p>
|
|
||||||
<p>This option was meant to be use with <em>gcc</em>;
|
|
||||||
it was not used recently so it is probable that is does not work anymore;
|
|
||||||
the <code>configure</code> script will not even check that your compiling environment has the
|
|
||||||
appropriate requirements and works with this.
|
|
||||||
Despite all this, if you think there’s a use for it and feel in the mood to help, do not hesitate to
|
|
||||||
discuss on the mailing list <a href="mailto:wmaker-dev@lists.windowmaker.org">wmaker-dev@lists.windowmaker.org</a> to get it working.
|
|
||||||
</p>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
<a name="Miscellaneous"></a>
|
|
||||||
<a name="Miscellaneous-1"></a>
|
|
||||||
<h2 class="chapter">3 Miscellaneous</h2>
|
|
||||||
|
|
||||||
<a name="Platform-Specific-Notes"></a>
|
|
||||||
<h3 class="section">3.1 Platform Specific Notes</h3>
|
|
||||||
|
|
||||||
<ul class="no-bullet">
|
|
||||||
<li>- <em>GNU/Linux</em> in general
|
|
||||||
|
|
||||||
<p>Make sure you have <samp>/usr/local/lib</samp> in <samp>/etc/ld.so.conf</samp> and that you
|
|
||||||
run <code>ldconfig</code> after installing.
|
|
||||||
Uninstall any packaged version of <small>WINDOW MAKER</small> before installing a new version.
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>RedHat GNU/Linux</em>
|
|
||||||
|
|
||||||
<p><em>RedHat</em> systems have several annoying problems.
|
|
||||||
If you use it, be sure to follow the steps below or <small>WINDOW MAKER</small> will not work:
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li> if you installed the <small>WINDOW MAKER</small> that comes with <em>RedHat</em>, uninstall it before upgrading;
|
|
||||||
|
|
||||||
</li><li> make sure you have <samp>/usr/local/bin</samp> in your <code>PATH</code> environment variable;
|
|
||||||
|
|
||||||
</li><li> make sure you have <samp>/usr/local/lib</samp> in <samp>/etc/ld.so.conf</samp> before running <code>ldconfig</code>;
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
</li><li>- <em>PowerPC MkLinux</em>
|
|
||||||
|
|
||||||
<p>You will need to have the latest version of <em>Xpmac</em>.
|
|
||||||
Older versions seem to have bugs that cause the system to hang.
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>Debian GNU/Linux</em>
|
|
||||||
|
|
||||||
<p>If you want <em>JPEG</em> and <em>TIFF</em> support, make sure you have <samp>libtiff-dev</samp>
|
|
||||||
and <samp>libjpeg-dev</samp> installed.
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>SuSE GNU/Linux</em>
|
|
||||||
|
|
||||||
<p>If you installed the <small>WINDOW MAKER</small> package from <em>SuSE</em>, uninstall it before trying to
|
|
||||||
compile <em>Window Maker</em> or you might have problems.
|
|
||||||
</p>
|
|
||||||
</li><li>- <em>MetroX</em> (unknown version)
|
|
||||||
|
|
||||||
<p><em>MetroX</em> has a bug that corrupts pixmaps that are set as window backgrounds.
|
|
||||||
If you use <em>MetroX</em> and have weird problems with textures, do not use textures in title bars.
|
|
||||||
Or use a different X server.
|
|
||||||
</p>
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="I-don_0027t-have-the-root-password-_003a_0028"></a>
|
|
||||||
<h3 class="section">3.2 I don’t have the <em>root</em> password :(</h3>
|
|
||||||
<a name="No-Root-Password"></a>
|
|
||||||
<p>If you can’t get superuser privileges (can’t be <i>root</i>) you can install <em>Window Maker</em> in your own
|
|
||||||
home directory.
|
|
||||||
For that, supply the <samp>--prefix</samp> option when running configure in step 2 of building
|
|
||||||
<small>WINDOW MAKER</small>.
|
|
||||||
You will also need to supply the <samp>--with-gnustepdir</samp> option, to specify the path for
|
|
||||||
<code>WPrefs.app</code>.
|
|
||||||
Example:
|
|
||||||
</p>
|
|
||||||
<div class="example">
|
|
||||||
<pre class="example">./configure --prefix=/home/jshmoe --with-gnustepdir=/home/jshmoe/GNUstep/Applications
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
<p>Then make <samp>/home/jshmoe/bin</samp> be included in your search <code>PATH</code>, add <samp>/home/jshmoe/lib</samp>
|
|
||||||
to your <code>LD_LIBRARY_PATH</code> environment variable and run <code>bin/wmaker.inst</code>
|
|
||||||
</p>
|
|
||||||
<p>Of course, <samp>/home/jshmoe</samp> is supposed to be replaced by your actual home directory path.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Upgrading"></a>
|
|
||||||
<h3 class="section">3.3 Upgrading</h3>
|
|
||||||
|
|
||||||
<p>If you are upgrading from an older version of <small>WINDOW MAKER</small>:
|
|
||||||
</p>
|
|
||||||
<ol>
|
|
||||||
<li> Configure and build <small>WINDOW MAKER</small> as always
|
|
||||||
</li><li> Install <small>WINDOW MAKER</small> (but do not run <code>wmaker.inst</code>)
|
|
||||||
</li><li> Read the <cite>NEWS</cite> file and update your configuration files if necessary.
|
|
||||||
</li></ol>
|
|
||||||
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
<a name="Troubleshooting"></a>
|
|
||||||
<a name="Troubleshooting-1"></a>
|
|
||||||
<h2 class="chapter">4 Troubleshooting</h2>
|
|
||||||
|
|
||||||
<p>When you have some trouble during configuration (while running configure), like not being able to
|
|
||||||
use a graphic format library you think you have installed, look at the <samp>config.log</samp> file for
|
|
||||||
clues of the problem.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Error-with-loading-fonts_002c-even-if-they-exist"></a>
|
|
||||||
<h3 class="section">4.1 Error with loading fonts, even if they exist</h3>
|
|
||||||
|
|
||||||
<p>This is probably a problem with NLS (Native Language Support), you probably want to look at the
|
|
||||||
<a href="wmaker_i18n.html#Troubleshooting">Troubleshooting</a> in <cite><samp>README.i18n</samp></cite>
|
|
||||||
or try rebuilding without NLS support, which is done with:
|
|
||||||
</p><div class="example">
|
|
||||||
<pre class="example">./configure LINGUAS=""
|
|
||||||
</pre></div>
|
|
||||||
|
|
||||||
|
|
||||||
<a name="configure-doesn_0027t-detect-libtiff_002c-or-other-graphic-libraries"></a>
|
|
||||||
<h3 class="section">4.2 configure doesn’t detect <em>libtiff</em>, or other graphic libraries</h3>
|
|
||||||
|
|
||||||
<p>Delete <samp>config.cache</samp>, then rerun configure adding the following options to <code>configure</code>
|
|
||||||
(among the other options you use):
|
|
||||||
</p><div class="example">
|
|
||||||
<pre class="example">--with-libs-from="-L/usr/local/lib"
|
|
||||||
--with-incs-from="-I/usr/local/include -I/usr/local/include/tiff"
|
|
||||||
</pre></div>
|
|
||||||
<p>Put the paths where your graphic libs and their corresponding header files are located.
|
|
||||||
You can put multiple paths in any of these options, as the example of <samp>--with-incs-from</samp> shows.
|
|
||||||
Just put a space between them.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="configure-doesn_0027t-detect-libXpm"></a>
|
|
||||||
<h3 class="section">4.3 configure doesn’t detect <em>libXpm</em></h3>
|
|
||||||
|
|
||||||
<p>Check if you have a symbolic link from <samp>libXpm.so.4.9</samp> to <samp>libXpm.so</samp>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="Segmentation-fault-on-startup"></a>
|
|
||||||
<h3 class="section">4.4 Segmentation fault on startup</h3>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li> Check if the version of <em>libXPM</em> you have is at least 4.7
|
|
||||||
|
|
||||||
</li><li> Check if you have an updated version of <samp>~/GNUstep/Defaults/WindowMaker</samp>
|
|
||||||
</li></ul>
|
|
||||||
|
|
||||||
<p>If you’re not sure, try renaming <samp>~/GNUstep</samp> to <samp>~/GNUtmp</samp>
|
|
||||||
and then run <code>wmaker.inst</code>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="g_t_0022_002e_002e_002e_003a-your-machine-is-misconfigured_002e-gethostname_0028_0029-returned-_0028none_0029_0022"></a>
|
|
||||||
<h3 class="section">4.5 "...: your machine is misconfigured. gethostname() returned (none)"</h3>
|
|
||||||
|
|
||||||
<p>the host name of your machine is set to something invalid, that starts with a parenthesis.
|
|
||||||
Do a <code>man hostname</code> for info about how to set it.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<a name="The-root-menu-contains-only-2-entries_002e-_0028_0022XTerm_0022-and-_0022Exit_002e_002e_002e_0022_0029"></a>
|
|
||||||
<h3 class="section">4.6 The root menu contains only 2 entries. ("XTerm" and "Exit...")</h3>
|
|
||||||
|
|
||||||
<p><small>WINDOW MAKER</small> could not read your menu definition file.
|
|
||||||
You should check the output of <code>wmaker</code> for an error, it may be visible in the console or in the
|
|
||||||
<samp>.xsession-errors</samp> file.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
732
docs/wmaker_install.rst
Normal file
@@ -0,0 +1,732 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
title: Compilation and Installation
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
=========================================
|
||||||
|
Window Maker Compilation and Installation
|
||||||
|
=========================================
|
||||||
|
|
||||||
|
A guide to configure, compile and install WINDOW MAKER from sources.
|
||||||
|
|
||||||
|
.. sectnum::
|
||||||
|
.. contents:: Table of Contents
|
||||||
|
:backlinks: none
|
||||||
|
|
||||||
|
This manual is for Window Maker, version git#next.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
Prerequisites
|
||||||
|
-------------
|
||||||
|
|
||||||
|
Supported Platforms
|
||||||
|
...................
|
||||||
|
|
||||||
|
- Intel GNU/Linux Systems in general, `ix86` and `x86_64` but other
|
||||||
|
architectures should work
|
||||||
|
- BSD systems
|
||||||
|
- Solaris, at least on release 10 and 11
|
||||||
|
|
||||||
|
Patches to make it work on other platforms are welcome.
|
||||||
|
|
||||||
|
Software Dependencies
|
||||||
|
.....................
|
||||||
|
|
||||||
|
The following software is required to use WINDOW MAKER:
|
||||||
|
|
||||||
|
- X11R6.x
|
||||||
|
|
||||||
|
Window Maker can be compiled in older versions of *X*, like
|
||||||
|
*X11R5* (*Solaris*) or *X11R4* (*OpenWindows*) but
|
||||||
|
it will not work 100% correctly. In such servers there will not be
|
||||||
|
application icons and you'll have trouble using the dock. Upgrading the
|
||||||
|
client libraries (*Xlib*, *Xt*, etc.) will help if you
|
||||||
|
can't upgrade the server.
|
||||||
|
|
||||||
|
The following is required to build WINDOW MAKER:
|
||||||
|
|
||||||
|
- Basic obvious stuff
|
||||||
|
- *gcc* (or some other ANSI C compiler, supporting some C99 extensions)
|
||||||
|
- *glibc* development files (usually ``glibc-devel`` in Linux distributions)
|
||||||
|
- *X* development files (``XFree86-devel`` or something similar)
|
||||||
|
|
||||||
|
- *Xft2* and its dependencies
|
||||||
|
|
||||||
|
Dependencies include *freetype2* and *fontconfig*. You will also need the
|
||||||
|
development files for them (``xft2-devel``). Sources are available at:
|
||||||
|
http://www.freedesktop.org/wiki/Software/Xft
|
||||||
|
|
||||||
|
**Note**: WINDOW MAKER is known to compile with *gcc* and *clang*; the code
|
||||||
|
source is mostly ANSI C (also known as C89 and C90) but is uses very few of the
|
||||||
|
C99 novelties; it also uses a few attributes introduced in the C11 standard but
|
||||||
|
those are detected automatically, so most compilers should work.
|
||||||
|
|
||||||
|
Special Dependencies
|
||||||
|
....................
|
||||||
|
|
||||||
|
If you want to compile using the sources from the git repository instead of the
|
||||||
|
distribution package, you will also need:
|
||||||
|
|
||||||
|
- *git*
|
||||||
|
- *autoconf* 2.69
|
||||||
|
- *automake* 1.12
|
||||||
|
- *libtool* 1.4.2
|
||||||
|
|
||||||
|
Optional Dependencies
|
||||||
|
.....................
|
||||||
|
|
||||||
|
These libraries are not required to make <small>WINDOW MAKER</small> work, but
|
||||||
|
they are supported in case you want to use them. Version numbers are indicative,
|
||||||
|
but other versions might work too.
|
||||||
|
|
||||||
|
- *libXPM* 4.7 or newer
|
||||||
|
|
||||||
|
Older versions may not work!
|
||||||
|
|
||||||
|
Available from http://xlibs.freedesktop.org/release
|
||||||
|
|
||||||
|
There is built-in support for <em>XPM</em> files, but it will not load images
|
||||||
|
in some uncommon encodings.
|
||||||
|
|
||||||
|
- *libpng* 0.96 or newer and *zlib*
|
||||||
|
|
||||||
|
For *PNG* image support, http://www.libpng.org/pub/png/libpng.html
|
||||||
|
|
||||||
|
- *libtiff* 3.4 or newer
|
||||||
|
|
||||||
|
For *TIFF* image support, http://www.libtiff.org/
|
||||||
|
|
||||||
|
|
||||||
|
- *libjpeg* 6.0.1 or newer
|
||||||
|
|
||||||
|
For *JPEG* image support, http://www.ijg.org/
|
||||||
|
|
||||||
|
Note that if you don't have it, ``configure`` will issue a big warning in the
|
||||||
|
end, this is because JPEG images are often used in themes and for background
|
||||||
|
images so you probably want this format supported.
|
||||||
|
|
||||||
|
- *libgif* 2.2 or *libungif*
|
||||||
|
|
||||||
|
For *GIF* image support, http://giflib.sourceforge.net/
|
||||||
|
|
||||||
|
- *WebP* 0.4.1 or newer
|
||||||
|
|
||||||
|
The reference library from *Google* for their image format,
|
||||||
|
https://developers.google.com/speed/webp/download
|
||||||
|
|
||||||
|
- *GNU xgettext*
|
||||||
|
|
||||||
|
If you want to use translated messages, you will need *GNU gettext*.
|
||||||
|
Other versions of *gettext* are not compatible and will not work. Get
|
||||||
|
the *GNU* version from http://www.gnu.org/software/gettext/
|
||||||
|
|
||||||
|
- *Pango* 1.36.8 or newer
|
||||||
|
|
||||||
|
This library can be used by the *WINGs* toolkit to improve support for
|
||||||
|
*UTF-8* and for languages written in right-to-left direction, in some
|
||||||
|
widgets. You have to explicitly ask for its support through (see `Configure
|
||||||
|
Options <#configure-options>`__). You can get it from
|
||||||
|
http://www.pango.org/Download
|
||||||
|
|
||||||
|
- *libbsd*
|
||||||
|
|
||||||
|
This library can be used by the *WINGs* utility library to make use of
|
||||||
|
``strlcat`` and ``strlcpy`` instead of using built-in functions if your system
|
||||||
|
does not provide them in its core *libc*. You should let WINDOW MAKER's
|
||||||
|
``configure`` detect this for you. You can get it from
|
||||||
|
http://libbsd.freedesktop.org/wiki/
|
||||||
|
|
||||||
|
- *Inotify*
|
||||||
|
|
||||||
|
If you have Linux's *inotify* support, WINDOW MAKER will use it to check for
|
||||||
|
configuration updates instead of polling regularly the file. The needed header
|
||||||
|
comes with the kernel, typical packages names include:
|
||||||
|
|
||||||
|
- ``kernel-headers`` for *Slackware* and *Fedora*
|
||||||
|
- ``linux-userspace-headers`` for *Mageia*
|
||||||
|
- ``linux-libc-dev`` for *Debian* and *Ubuntu*
|
||||||
|
- ``linux-glibc-devel`` for *OpenSuSE*
|
||||||
|
|
||||||
|
- *MagickWand* 6.8.9-9 or newer
|
||||||
|
|
||||||
|
If found, then the library *WRaster* can use the *ImageMagick* library to let
|
||||||
|
WINDOW MAKER support more image formats, like *SVG*, *BMP*, *TGA*, ... You
|
||||||
|
can get it from http://www.imagemagick.org/
|
||||||
|
|
||||||
|
- *Boehm GC*
|
||||||
|
|
||||||
|
This library can be used by the *WINGs* utility toolkit to use a
|
||||||
|
*Boehm-Demers-Weiser Garbage Collector* instead of the traditional
|
||||||
|
``malloc``/``free`` functions from the *libc*. You have to explicitly ask for
|
||||||
|
its support though (see `Configure Options <#configure-options>`__). You can
|
||||||
|
get it from http://www.hboehm.info/gc/
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
Building WINDOW MAKER
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
Getting the Sources
|
||||||
|
...................
|
||||||
|
|
||||||
|
The latest version of WINDOW MAKER (``-crm``) can be downloaded from
|
||||||
|
http://www.windowmaker.org/
|
||||||
|
|
||||||
|
Alternatively, the development branch, called ``#next`` is in the *git*
|
||||||
|
repository at http://repo.or.cz/w/wmaker-crm.git
|
||||||
|
|
||||||
|
If you want to use the *git* versions, you can get it with:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
git clone -b next git://repo.or.cz/wmaker-crm.git
|
||||||
|
|
||||||
|
then, assuming you have the dependencies listed in `Special Dependencies
|
||||||
|
<#special-dependencies>`__, you have to type:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./autogen.sh
|
||||||
|
|
||||||
|
to generate the configuration script.
|
||||||
|
|
||||||
|
|
||||||
|
Build and Install
|
||||||
|
|
||||||
|
For a quick start, type the following in your shell prompt:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./configure
|
||||||
|
make
|
||||||
|
|
||||||
|
then, login as *root* and type:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
make install
|
||||||
|
ldconfig
|
||||||
|
|
||||||
|
or if you want to strip the debugging symbols from the binaries to make them
|
||||||
|
smaller, you can type instead:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
make install-strip
|
||||||
|
ldconfig
|
||||||
|
|
||||||
|
This will build and install WINDOW MAKER with default parameters.
|
||||||
|
|
||||||
|
If you want to customise some compile-time options, you can do the following:
|
||||||
|
|
||||||
|
1. (optional) Look at the `Configure Options <#configure-options>`__, for the
|
||||||
|
options available. Also run:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./configure --help
|
||||||
|
|
||||||
|
to get a complete list of options that are available.
|
||||||
|
|
||||||
|
|
||||||
|
1. Run configure with the options you want. For example, if you want to use the
|
||||||
|
``--enable-modelock`` option, type:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./configure --enable-modelock
|
||||||
|
|
||||||
|
1. (optional) Edit ``src/wconfig.h`` with your favourite text editor and browse
|
||||||
|
through it for some options you might want to change.
|
||||||
|
|
||||||
|
1. Compile. Just type:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
make
|
||||||
|
|
||||||
|
1. Login as root (if you can't do that, read the [I don't have the
|
||||||
|
*root*](#No-Root-Password)) and install WINDOW MAKER in your system:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
su root
|
||||||
|
make install
|
||||||
|
|
||||||
|
User specific configuration
|
||||||
|
...........................
|
||||||
|
|
||||||
|
These instructions do not need to be followed when upgrading WINDOW MAKER
|
||||||
|
from an older version, unless stated differently in the *NEWS* file.
|
||||||
|
|
||||||
|
Every user on your system that wishes to run WINDOW MAKER must do the
|
||||||
|
following:
|
||||||
|
|
||||||
|
1. Install Window Maker configuration files in your home directory. Type:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
|
||||||
|
wmaker.inst
|
||||||
|
|
||||||
|
``wmaker.inst`` will install WINDOW MAKER configuration files and will setup
|
||||||
|
X to automatically launch WINDOW MAKER at startup.
|
||||||
|
|
||||||
|
That's it!
|
||||||
|
|
||||||
|
You can type ``man wmaker`` to get some general help for configuration and
|
||||||
|
other stuff.
|
||||||
|
|
||||||
|
Read the *User Guide* for a more in-depth explanation of WINDOW MAKER.
|
||||||
|
|
||||||
|
You might want to take a look at the *FAQ* too.
|
||||||
|
|
||||||
|
Locales/Internationalisation
|
||||||
|
............................
|
||||||
|
|
||||||
|
WINDOW MAKER has national language support. The procedure to enable national
|
||||||
|
language support is described in the dedicated
|
||||||
|
`Enabling Languages support <wmaker_i18n.html#enabling-languages-support>`__
|
||||||
|
in ``README.i18n``.
|
||||||
|
|
||||||
|
Configure Options
|
||||||
|
.................
|
||||||
|
|
||||||
|
These options can be passed to the configure script to enable/disable some
|
||||||
|
WINDOW MAKER features. Example:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./configure --enable-modelock --disable-gif
|
||||||
|
|
||||||
|
will configure WINDOW MAKER with *modelock* supported and disable *gif* support.
|
||||||
|
Normally, you won't need any of them.
|
||||||
|
|
||||||
|
To get the list of all options, run ``./configure --help``
|
||||||
|
|
||||||
|
Installation Directory
|
||||||
|
''''''''''''''''''''''
|
||||||
|
|
||||||
|
The default installation path will be in the ``/usr/local`` hierarchy; a number of
|
||||||
|
option can customise this:
|
||||||
|
|
||||||
|
|
||||||
|
- ``--prefix=PREFIX``
|
||||||
|
- ``--exec-prefix=EPREFIX``
|
||||||
|
- ``--bindir=DIR``
|
||||||
|
- ``--sysconfdir=DIR``
|
||||||
|
- ``--libdir=DIR``
|
||||||
|
- ``--includedir=DIR``
|
||||||
|
- ``--datarootdir=DIR``
|
||||||
|
- ``--datadir=DIR``
|
||||||
|
- ``--localedir=DIR``
|
||||||
|
- ``--mandir=DIR``
|
||||||
|
Standard options from *autoconf* to define target paths, you probably want to
|
||||||
|
read Installation Names in *`INSTALL`*.
|
||||||
|
|
||||||
|
- ``--sbindir=DIR``
|
||||||
|
- ``--libexecdir=DIR``
|
||||||
|
- ``--sharedstatedir=DIR``
|
||||||
|
- ``--localstatedir=DIR``
|
||||||
|
- ``--oldincludedir=DIR``
|
||||||
|
- ``--infodir=DIR``
|
||||||
|
- ``--docdir=DIR``
|
||||||
|
- ``--htmldir=DIR``
|
||||||
|
- ``--dvidir=DIR``
|
||||||
|
- ``--pdfdir=DIR``
|
||||||
|
- ``--psdir=DIR``
|
||||||
|
More standard options from *autoconf*, today these are not used by WINDOW
|
||||||
|
MAKER; they are provided automatically by *autoconf* for consistency.
|
||||||
|
|
||||||
|
- ``--with-gnustepdir=PATH``
|
||||||
|
Specific to WINDOW MAKER, defines the directory where WPrefs.app will be
|
||||||
|
installed, if you want to install it like a *GNUstep* applications. If not
|
||||||
|
specified, it will be installed like usual programs.
|
||||||
|
|
||||||
|
- ``--with-pixmapdir=DIR``
|
||||||
|
Specific to WINDOW MAKER, this option defines an additional path where
|
||||||
|
*pixmaps* will be searched. Nothing will be installed there; the default
|
||||||
|
path taken is ``DATADIR/pixmaps``, where ``ATADIR` is the path defined from
|
||||||
|
``--datadir``.
|
||||||
|
|
||||||
|
- ``--with-defsdatadir=DIR``
|
||||||
|
Specific to WINDOW MAKER, defines the directory where system configuration
|
||||||
|
files, e.g., ``WindowMaker``, ``WMRootMenu``, etc., are installed. The
|
||||||
|
default value is ``SYSCONFDIR/WindowMaker``, where ``SYSCONFDIR`` is the
|
||||||
|
path defined from ``--sysconfdir``.
|
||||||
|
|
||||||
|
|
||||||
|
External Libraries
|
||||||
|
''''''''''''''''''
|
||||||
|
|
||||||
|
Unless specifically written, ``configure`` will try to detect automatically for
|
||||||
|
the libraries; if you explicitly provide ``--enable-FEATURE`` then it will
|
||||||
|
break with an error message if the library cannot be linked; if you specify
|
||||||
|
``--disable-FEATURE`` then it will not try to search for the library. You can
|
||||||
|
find more information about the libraries in the `Optional Dependencies
|
||||||
|
<#Optional-Dependencies>`__
|
||||||
|
|
||||||
|
|
||||||
|
``--enable-boehm-gc``
|
||||||
|
|
||||||
|
Never enabled by default, use Boehm GC instead of the default *libc*
|
||||||
|
``malloc()``
|
||||||
|
|
||||||
|
``--disable-gif``
|
||||||
|
|
||||||
|
Disable GIF support in *WRaster* library; when enabled use ``libgif`` or
|
||||||
|
``libungif``.
|
||||||
|
|
||||||
|
``--disable-jpeg``
|
||||||
|
|
||||||
|
Disable JPEG support in *WRaster* library; when enabled use ``libjpeg``.
|
||||||
|
|
||||||
|
``--without-libbsd``
|
||||||
|
|
||||||
|
Refuse use of the ``libbsd`` compatibility library in *WINGs* utility
|
||||||
|
library, even if your system provides it.
|
||||||
|
|
||||||
|
``--disable-magick``
|
||||||
|
|
||||||
|
Disable *ImageMagick's MagickWand* support in *WRaster*, used to support for
|
||||||
|
image formats.
|
||||||
|
|
||||||
|
``--enable-pango``
|
||||||
|
|
||||||
|
Disabled by default, enable *Pango* text layout support in *WINGs*.
|
||||||
|
|
||||||
|
``--disable-png``
|
||||||
|
|
||||||
|
Disable PNG support in *WRaster*; when enabled use ``libpng``.
|
||||||
|
|
||||||
|
``--disable-tiff``
|
||||||
|
|
||||||
|
Disable TIFF support in *WRaster*. when enabled use ``libtiff``.
|
||||||
|
|
||||||
|
``--disable-webp``
|
||||||
|
|
||||||
|
Disable WEBP support in *WRaster*. when enabled use ``libwebp``.
|
||||||
|
|
||||||
|
``--disable-xpm``
|
||||||
|
|
||||||
|
Disable use of ``libXpm`` for XPM support in *WRaster*, use internal code
|
||||||
|
instead.
|
||||||
|
|
||||||
|
The following options can be used to tell ``configure`` about extra paths that
|
||||||
|
needs to be used when compiling against libraries:
|
||||||
|
|
||||||
|
``--with-libs-from``
|
||||||
|
|
||||||
|
specify additional paths for libraries to be searched. The ``-L`` flag must
|
||||||
|
precede each path, like:
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
--with-libs-from="-L/opt/libs -L/usr/local/lib"
|
||||||
|
|
||||||
|
``--with-incs-from``
|
||||||
|
|
||||||
|
specify additional paths for header files to be searched. The ``-I`` flag
|
||||||
|
must precede each paths, like:
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
--with-incs-from="-I/opt/headers -I/usr/local/include"
|
||||||
|
|
||||||
|
X11 and Extensions
|
||||||
|
''''''''''''''''''
|
||||||
|
|
||||||
|
``configure`` will try to detect automatically the compilation paths for X11
|
||||||
|
headers and libraries, and which X Extensions support can be enabled. if you
|
||||||
|
explicitly provide ``--enable-FEATURE`` then it will break with an error
|
||||||
|
message if the extension cannot be used; if you specify ``--disable-FEATURE``
|
||||||
|
then it will not check for the extension.
|
||||||
|
|
||||||
|
- ``--x-includes=DIR``
|
||||||
|
- ``--x-libraries=DIR``
|
||||||
|
|
||||||
|
*Autoconf*'s option to specify search paths for *X11*, for the case were it
|
||||||
|
would not have been able to detect it automatically.
|
||||||
|
|
||||||
|
``--disable-xlocale``
|
||||||
|
|
||||||
|
If you activated support for Native Languages, then *X11* may use a hack to
|
||||||
|
also configure its locale support when the program configure the locale for
|
||||||
|
itself. The ``configure`` script detects if the *Xlib* supports this or
|
||||||
|
not; this options explicitly disable this initialisation mechanism.
|
||||||
|
|
||||||
|
``--enable-modelock``
|
||||||
|
|
||||||
|
XKB language status lock support. If you don't know what it is you probably
|
||||||
|
don't need it. The default is to not enable it.
|
||||||
|
|
||||||
|
``--disable-shm``
|
||||||
|
|
||||||
|
Disable use of the *MIT shared memory* extension. This will slow down
|
||||||
|
texture generation a little bit, but in some cases it seems to be necessary
|
||||||
|
due to a bug that manifests as messed icons and textures.
|
||||||
|
|
||||||
|
``--disable-shape``
|
||||||
|
|
||||||
|
Disables support for *shaped* windows (for ``oclock``, ``xeyes``, etc.).
|
||||||
|
|
||||||
|
``--enable-xinerama``
|
||||||
|
|
||||||
|
The *Xinerama* extension provides information about the different screens
|
||||||
|
connected when running a multi-head setting (if you plug more than one
|
||||||
|
monitor).
|
||||||
|
|
||||||
|
``--enable-randr``
|
||||||
|
|
||||||
|
The *RandR* extension provides feedback when changing the multiple-monitor
|
||||||
|
configuration in X11 and allows to re-configure how screens are organised.
|
||||||
|
|
||||||
|
At current time, it is not enabled by default because it is NOT recommended
|
||||||
|
(buggy); WINDOW MAKER only restart itself when the configuration change, to
|
||||||
|
take into account the new screen size.
|
||||||
|
|
||||||
|
Feature Selection
|
||||||
|
'''''''''''''''''
|
||||||
|
|
||||||
|
|
||||||
|
``--disable-animations``
|
||||||
|
|
||||||
|
Disable animations permanently, by not compiling the corresponding code into
|
||||||
|
WINDOW MAKER. When enabled (the default), you still have a run-time
|
||||||
|
configuration option in *WPrefs*.
|
||||||
|
|
||||||
|
``--disable-mwm-hints``
|
||||||
|
|
||||||
|
Disable support for Motif's MWM Window Manager hints. These attributes were
|
||||||
|
introduced by the Motif toolkit to ask for special window appearance
|
||||||
|
requests. Nowadays this is covered by the NetWM/EWMH specification, but
|
||||||
|
there are still applications that rely on MWM Hints.
|
||||||
|
|
||||||
|
``--enable-wmreplace``
|
||||||
|
|
||||||
|
Add support for the *ICCCM* protocol for cooperative window manager
|
||||||
|
replacement. This feature is disabled by default because you probably don't
|
||||||
|
need to switch seamlessly the window manager; if you are making a package
|
||||||
|
for a distribution you'd probably want to enable this because it allows
|
||||||
|
users to give a try to different window managers without restarting
|
||||||
|
everything for an extra cost that is not really big.
|
||||||
|
|
||||||
|
``--disable-xdnd``
|
||||||
|
|
||||||
|
Disable support for dragging and dropping files on the dock, which launches
|
||||||
|
a user-specified command with that file. Starting from version 0.65.6 this
|
||||||
|
feature is enabled by default.
|
||||||
|
|
||||||
|
``--enable-ld-version-script``
|
||||||
|
|
||||||
|
This feature is auto-detected, and you should not use this option. When
|
||||||
|
compiling a library (``wrlib``, ...), *gcc* has the possibility to filter
|
||||||
|
the list of functions that will be visible, to keep only the public API,
|
||||||
|
because it helps running programs faster.
|
||||||
|
|
||||||
|
The ``configure`` script checks if this feature is available; if you specify
|
||||||
|
this option it will not check anymore and blindly trust you that it is
|
||||||
|
supposed to work, which is not a good idea as you may encounter problems
|
||||||
|
later when compiling.
|
||||||
|
|
||||||
|
``--enable-usermenu``
|
||||||
|
|
||||||
|
This feature, disabled by default, allows to add a user-defined custom menu
|
||||||
|
to applications; when choosing an entry of the menu it will send the key
|
||||||
|
combination defined by the user to that application. See <a
|
||||||
|
href="http://repo.or.cz/wmaker-crm.git/blob/HEAD:/NEWS">Application User
|
||||||
|
Menu</a> in *NEWS* for more information.
|
||||||
|
|
||||||
|
``--with-menu-textdomain=DOMAIN``
|
||||||
|
|
||||||
|
Selection of the domain used for translation of the menus; see `Translations
|
||||||
|
for Menus <wmaker_i18n.html#Translations-for-Menus>`__ in *README.i18n*.
|
||||||
|
|
||||||
|
|
||||||
|
Developer Stuff
|
||||||
|
'''''''''''''''
|
||||||
|
|
||||||
|
These options are disabled by default:
|
||||||
|
|
||||||
|
``--config-cache``
|
||||||
|
|
||||||
|
If you intend to re-run the ``configure`` script often, you probably want to
|
||||||
|
include this option, so it will save and re-use the status of what have been
|
||||||
|
detected in the file ``config.cache``.
|
||||||
|
|
||||||
|
|
||||||
|
``--enable-debug``
|
||||||
|
|
||||||
|
Enable debugging features (debug symbol, some extra verbosity and checks)
|
||||||
|
and add a number of check flags (warnings) for the compiler (in *gcc*
|
||||||
|
fashion).
|
||||||
|
|
||||||
|
``--enable-lcov=DIRECTORY``
|
||||||
|
|
||||||
|
Enable generation of code coverage and profiling data; if the ``DIRECTORY``
|
||||||
|
is not specified, use ``coverage-report``.
|
||||||
|
|
||||||
|
This option was meant to be use with *gcc*; it was not used recently so it
|
||||||
|
is probable that is does not work anymore; the ``configure`` script will not
|
||||||
|
even check that your compiling environment has the appropriate requirements
|
||||||
|
and works with this. Despite all this, if you think there's a use for it
|
||||||
|
and feel in the mood to help, do not hesitate to discuss on the mailing list
|
||||||
|
`wmaker-dev@lists.windowmaker.org
|
||||||
|
<mailto:wmaker-dev@lists.windowmaker.org>`__ to get it working.
|
||||||
|
|
||||||
|
Miscellaneous
|
||||||
|
-------------
|
||||||
|
|
||||||
|
Platform Specific Notes
|
||||||
|
.......................
|
||||||
|
|
||||||
|
- *GNU/Linux* in general
|
||||||
|
|
||||||
|
Make sure you have ``/usr/local/lib`` in ``/etc/ld.so.conf`` and that you run
|
||||||
|
``ldconfig`` after installing. Uninstall any packaged version of WINDOW MAKER
|
||||||
|
before installing a new version.
|
||||||
|
|
||||||
|
- *RedHat GNU/Linux*
|
||||||
|
|
||||||
|
*RedHat* systems have several annoying problems. If you use it, be sure to
|
||||||
|
follow the steps below or WINDOW MAKER will not work:
|
||||||
|
|
||||||
|
|
||||||
|
- if you installed the WINDOW MAKER that comes with *RedHat*, uninstall it
|
||||||
|
before upgrading;
|
||||||
|
|
||||||
|
- make sure you have ``/usr/local/bin`` in your ``PATH`` environment variable;
|
||||||
|
|
||||||
|
- make sure you have ``/usr/local/lib`` in ``/etc/ld.so.conf`` before running ``ldconfig``;
|
||||||
|
|
||||||
|
- *PowerPC MkLinux*
|
||||||
|
|
||||||
|
You will need to have the latest version of *Xpmac*. Older versions seem to
|
||||||
|
have bugs that cause the system to hang.
|
||||||
|
|
||||||
|
- *Debian GNU/Linux*
|
||||||
|
|
||||||
|
If you want *JPEG* and *TIFF* support, make sure you have ``libtiff-dev``
|
||||||
|
and ``libjpeg-dev`` installed.
|
||||||
|
|
||||||
|
- *SuSE GNU/Linux*
|
||||||
|
|
||||||
|
If you installed the WINDOW MAKER package from *SuSE*, uninstall it before
|
||||||
|
trying to compile *Window Maker* or you might have problems.
|
||||||
|
|
||||||
|
- *MetroX* (unknown version)
|
||||||
|
|
||||||
|
*MetroX* has a bug that corrupts pixmaps that are set as window backgrounds.
|
||||||
|
If you use *MetroX* and have weird problems with textures, do not use
|
||||||
|
textures in title bars. Or use a different X server.
|
||||||
|
|
||||||
|
I don't have the *root* password :(
|
||||||
|
...................................
|
||||||
|
|
||||||
|
If you can't get superuser privileges (can't be *root*) you can install *Window
|
||||||
|
Maker* in your own home directory. For that, supply the ``--prefix`` option
|
||||||
|
when running configure in step 2 of building WINDOW MAKER. You will also need
|
||||||
|
to supply the ``--with-gnustepdir`` option, to specify the path for
|
||||||
|
``WPrefs.app``.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./configure --prefix=/home/jshmoe --with-gnustepdir=/home/jshmoe/GNUstep/Applications
|
||||||
|
|
||||||
|
Then make ``/home/jshmoe/bin`` be included in your search ``PATH``, add
|
||||||
|
``/home/jshmoe/lib`` to your ``LD_LIBRARY_PATH`` environment variable and run
|
||||||
|
``bin/wmaker.inst``
|
||||||
|
|
||||||
|
Of course, ``/home/jshmoe`` is supposed to be replaced by your actual home
|
||||||
|
directory path.
|
||||||
|
|
||||||
|
|
||||||
|
Upgrading
|
||||||
|
.........
|
||||||
|
|
||||||
|
If you are upgrading from an older version of WINDOW MAKER:
|
||||||
|
|
||||||
|
#. Configure and build WINDOW MAKER as always
|
||||||
|
#. Install WINDOW MAKER (but do not run ``wmaker.inst``)
|
||||||
|
#. Read the *NEWS* file and update your configuration files if necessary.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
Troubleshooting
|
||||||
|
---------------
|
||||||
|
|
||||||
|
When you have some trouble during configuration (while running configure), like
|
||||||
|
not being able to use a graphic format library you think you have installed,
|
||||||
|
look at the ``config.log`` file for clues of the problem.
|
||||||
|
|
||||||
|
Error with loading fonts, even if they exist
|
||||||
|
............................................
|
||||||
|
|
||||||
|
This is probably a problem with NLS (Native Language Support), you probably
|
||||||
|
want to look at the `Troubleshooting <wmaker_i18n.html#Troubleshooting>`__ in
|
||||||
|
*README.i18n* or try rebuilding without NLS support, which is done with:
|
||||||
|
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
./configure LINGUAS=""
|
||||||
|
|
||||||
|
configure doesn't detect *libtiff*, or other graphic libraries
|
||||||
|
..............................................................
|
||||||
|
|
||||||
|
Delete ``config.cache``, then rerun configure adding the following options to
|
||||||
|
``configure`` (among the other options you use):
|
||||||
|
|
||||||
|
.. code:: console
|
||||||
|
:class: highlight
|
||||||
|
|
||||||
|
--with-libs-from="-L/usr/local/lib"
|
||||||
|
--with-incs-from="-I/usr/local/include -I/usr/local/include/tiff"
|
||||||
|
|
||||||
|
Put the paths where your graphic libs and their corresponding header files are
|
||||||
|
located. You can put multiple paths in any of these options, as the example of
|
||||||
|
``--with-incs-from`` shows. Just put a space between them.
|
||||||
|
|
||||||
|
configure doesn't detect *libXpm*
|
||||||
|
.................................
|
||||||
|
|
||||||
|
Check if you have a symbolic link from ``libXpm.so.4.9`` to ``libXpm.so``
|
||||||
|
|
||||||
|
Segmentation fault on startup
|
||||||
|
|
||||||
|
- Check if the version of *libXPM* you have is at least 4.7
|
||||||
|
- Check if you have an updated version of ``~/GNUstep/Defaults/WindowMaker``
|
||||||
|
|
||||||
|
If you're not sure, try renaming ``~/GNUstep`` to ``~/GNUtmp`` and then run
|
||||||
|
``wmaker.inst``
|
||||||
|
|
||||||
|
"...: your machine is misconfigured. gethostname() returned (none)"
|
||||||
|
...................................................................
|
||||||
|
|
||||||
|
the host name of your machine is set to something invalid, that starts with a parenthesis.
|
||||||
|
Do a ``man hostname`` for info about how to set it.
|
||||||
|
|
||||||
|
|
||||||
|
The root menu contains only 2 entries. ("XTerm" and "Exit...")
|
||||||
|
..............................................................
|
||||||
|
|
||||||
|
WINDOW MAKER could not read your menu definition file. You should check the
|
||||||
|
output of ``wmaker`` for an error, it may be visible in the console or in the
|
||||||
|
``.xsession-errors`` file.
|
||||||
BIN
screenshots/GoldUtop.png
Normal file
|
After Width: | Height: | Size: 1.0 MiB |
BIN
screenshots/GoldUtop_thumb.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
@@ -37,4 +37,7 @@ screenshots.
|
|||||||
[](gryf-clearloks.png)
|
[](gryf-clearloks.png)
|
||||||
{:.gallery}
|
{:.gallery}
|
||||||
|
|
||||||
|
[](GoldUtop.png)
|
||||||
|
{:.gallery}
|
||||||
|
|
||||||
<div class="clear"></div>
|
<div class="clear"></div>
|
||||||
|
|||||||
29
style.css
@@ -38,7 +38,9 @@ pre {
|
|||||||
margin-bottom: 3em;
|
margin-bottom: 3em;
|
||||||
}
|
}
|
||||||
|
|
||||||
p.center {text-align: center}
|
.caption {text-align: center}
|
||||||
|
|
||||||
|
.center:not(.section), .center>h1, .center>h2{ text-align: center }
|
||||||
|
|
||||||
p.screenshot a img {
|
p.screenshot a img {
|
||||||
border: 1px solid black;
|
border: 1px solid black;
|
||||||
@@ -50,6 +52,15 @@ p.screenshot a img {
|
|||||||
margin: auto;
|
margin: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* guided tour */
|
||||||
|
|
||||||
|
#window-maker h1.title { text-align: center }
|
||||||
|
#window-maker #guided-tour img {
|
||||||
|
display:block;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
/* gallery */
|
/* gallery */
|
||||||
|
|
||||||
p.gallery {
|
p.gallery {
|
||||||
@@ -77,6 +88,17 @@ div.gallery img {
|
|||||||
clear: left;
|
clear: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
div.figure img {
|
||||||
|
display: block;
|
||||||
|
border: 1px solid black;
|
||||||
|
box-shadow: 3px 7px 7px #606060;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.figure.borderless img {
|
||||||
|
border: 0
|
||||||
|
}
|
||||||
|
|
||||||
/* logo */
|
/* logo */
|
||||||
header h1 a {
|
header h1 a {
|
||||||
font-family: "DejaVu Sans", sans-serif;
|
font-family: "DejaVu Sans", sans-serif;
|
||||||
@@ -195,6 +217,11 @@ header h1 a span.first {color: black}
|
|||||||
border-right: 1px solid #555555;
|
border-right: 1px solid #555555;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* TOC */
|
||||||
|
.contents p {
|
||||||
|
margin: 0.2em;
|
||||||
|
}
|
||||||
|
|
||||||
/* pre/code highlighted theme - taken from wombat256grf vim colorscheme */
|
/* pre/code highlighted theme - taken from wombat256grf vim colorscheme */
|
||||||
.highlight { background-color: #242424 }
|
.highlight { background-color: #242424 }
|
||||||
.highlight .c { color: #99968b; font-style: italic} /* Comment */
|
.highlight .c { color: #99968b; font-style: italic} /* Comment */
|
||||||
|
|||||||