# User Defaults Summary for GNUstep Backend

$Revision: 34984 $
$Date: 2012-03-23 01:13:09 +0100 (Fri, 23 Mar 2012) $
2005 Free Software Foundation, Inc.
Defaults Summary

This document contains a summary of available user default values that one can set to control the operation of the GNUstep backend.

Backend Defaults

Below is a list of defaults used to control the x11-based backend. These defaults generally control system specific display and user interaction options which may not be available on all systems.

NSDefaultVisual

An integer that specifies the X-Windows visual class to use in the application. For instance one could display the application using the PsuedoColor visual class by setting the value to the id of this class. The default is the X-Windows default visual class.

NSColorsPerChannel

An integer which limits the maximum number of colors to display, per channel. For a psuedo-color display, this would limit the total number of colors that the application could use (normally 256). For a true-color display, this would limit the range of red, green, and blue values that could be used.

GSAppOwnsMiniwindow

GSAppOwnsMiniwindow is for miniwindows (not app icons). If it's YES or absent, GNUstep handles miniaturization itself and doesn't let the window manager do it. If it's NO, the window manager is allowed to do its own iconification. This does not affect app icons at all.

GSFontAntiAlias

With the xlib backend, this is a boolean value which defaults to `YES`. If set to `YES` and X Windows system has the XFT extension, then the application will use anti-aliased fonts as provided by XFT. If set to `NO` anti-aliased fonts will not be used even when available.

With the art backend, A boolean value which defaults to YES. If YES, text is anti-aliased at small sizes (9-16 pixels). The value is advisory (specific fonts can override this setting).

GSFontMask

[Xlib backend only] A string value which defaults to `"*"`. It defines the pattern used to get the installed fonts from the X-Server. A value of `"*-iso8859-1"` would only include fonts available with ISO Western encoding. This feature might be helpfull if the font_cacher program is having problem with the X-Server.

GSBackHandlesWindowDecorations

A boolean value, which indicates if the backend should let the window-manager/native-window-system handle window decorations. When set to `NO`, GNUstep-GUI will handle the window decorations, which is particularly useful if you aren't running any window manager.

GSUseWMTaskBar

[W32 backend only] A string value which defaults to `YES`. If enabled, the backend assumes that miniwindows are displayed in a task bar. In this case, the app icon is not shown and the main menu behavior is changed so it is not ordered out, but minimized, so clicking on the minimized menu will activate the application.

GSXEnableFontSet

A string value which defaults to `NO`. If set to `YES`, then the backend font classes will support full multi-byte/unicode characters. This is useful for using many East Asian languages. However, the respose of the GUI is somwhat slower when this is enabled.

GSXIMInputMethodStyle

A string value used to specify the XIM input method for entering characters. Valid values are `RootWindow`, `OffTheSpot`, or `OverTheSpot`.

GraphicCompositing

[Xlib backend only] A boolean value which defaults to `YES`. If set to `YES`, then the application uses various tricks to get alpha colors to work when compositing images. This may slow down drawing of images, but it is generally recommended anyway, particularly on fast systems.

Fast Drawing on 8-bit Displays

[X11-based backends only] This is not a user default, but if you are using an 8-bit display and you define the standard X11 `BEST` colormap (via `xstdcmap -best`), then GNUstep will use this colormap and enable faster drawing onto 8-bit displays.

Keyboard Modifiers

The OPENstep specification requires three main different keyboard modifiers: `CONTROL`, `COMMAND` and `ALTERNATE` as well as the `HELP` modifier for context help. Some systems may not have these set up correctly. You can changed the defaults with the default keys.

GSFirstControlKey
GSSecondControlKey
GSFirstCommandKey
GSSecondCommandKey
GSFirstAlternateKey
GSSecondAlternateKey
GSFirstHelpKey
GSSecondHelpKey

Default values are respectively:

Control_L
Control_R
Alt_L
NoSymbol
Alt_R
NoSymbol
Help
Super_L

These strings correspond to "keysyms" on X11 systems. On X11, physical keys on the keyboard are equivalent to keycodes. A single keysym may be associated to more than one keycode, and can even be associated to a shifted key.

This is described more completely in the GUI documentation on keyboard setup.

GSModifiersAreNotKeys

On some keyboards, the default X11 mapping includes keycodes that are mapped to one or another modifier keysym depending on whether 'shift' (or in some cases, another key) is pressed. This is the case on some Apple USB keyboards for example: one key to the left of the spacebar maps to "Option" without shift pressed, and "Alt" with shift pressed. Such keyboard mappings are often useful in non-English contexts to access accents or non-Roman characters. However if such a key is used as a modifier in GNUstep problems can occur when trying to use the modifier in conjunction with a shifted character. In particular, you will need to hit and release the modifier and the shift key in a particular order, or else things will not work as expected, and the modifier may become "stuck".

Previously this default was called `GSModifiersAreKeys`, and Shift+Alt key equivalents only worked if Shift and Alt were pressed in the right order, unless the default was set to `YES`. That is now the default; to get back the previous default behaviour, set `GSModifiersAreNotKeys` to `YES`.

UseWindowMakerIcons

UseWindowMakerIcons is for app icons, and has no effect when the window manager isn't Window Maker. It displays the application's icon window in the window Window Maker provides instead of creating one controlled by the app. This allows the icon to be docked. It is a boolean value which defaults to `YES`.

XGPS-Shm

A boolean value which defaults to `YES` (as long as shared memory is available). If set to `NO`, shared memory is not used for various display specific operations.

GSOldClipboard

[X backends only] A boolean value which defaults to `NO`. If set to YES the old GNUstep way of X clipboard interaction will be used. That is PRIMARY as the general pasteboard and CLIPBOARD for the selection. Whereas the new X standard is the other way around. This setting may be needed for interaction in an old X enviornment.