A complete list of possible properties to set is in the [http://git.icculus.org/?p=mikachu/openbox.git;a=blob_plain;f=data/rc.xml;hb=master default rc.xml file], which you can find in <code>/etc/xdg/openbox/rc.xml</code>.

A complete list of possible properties to set is in the [http://git.icculus.org/?p=mikachu/openbox.git;a=blob_plain;f=data/rc.xml;hb=master default rc.xml file], which you can find in <code>/etc/xdg/openbox/rc.xml</code>.

−

== Finding the class, name and role parameters ==

+

== Finding the class, name, role, title and type parameters ==

−

Per-application settings let you match on what we call class, name, role, and type. These can all be determined with the <code>obxprop</code> utility. Run <code>obxprop | grep "^_OB_APP"</code> to see the value of these four properties.The output will look like

+

Per-application settings let you match on what we call class, name, role, title and type. These can all be determined with the <code>obxprop</code> utility. Run <code>obxprop | grep "^_OB_APP"</code> to see the value of these five properties. The output will look like

<code><pre>_OB_APP_TYPE(UTF8_STRING) = "normal"

<code><pre>_OB_APP_TYPE(UTF8_STRING) = "normal"

_OB_APP_CLASS(UTF8_STRING) = "Google-chrome"

_OB_APP_CLASS(UTF8_STRING) = "Google-chrome"

_OB_APP_NAME(UTF8_STRING) = "google-chrome"

_OB_APP_NAME(UTF8_STRING) = "google-chrome"

_OB_APP_ROLE(UTF8_STRING) =

_OB_APP_ROLE(UTF8_STRING) =

+

_OB_APP_TITLE(UTF8_STRING) = "Google Chrome"

</pre></code>

</pre></code>

−

You have to specify at least one of class and name. Optionally, you may specify more than one, in which case they must all match for the rule to be applied. You may also optionally specify roll and type. Note also that name isn't the title of the window.

+

You have to specify at least one of class and name. Optionally, you may specify more than one, in which case they must all match for the rule to be applied. You may also optionally specify roll and type. Note that the title matched is the one when the window was mapped. Many programs set the title just after mapping the window which means the value Openbox sees as it is determining which rules to apply is sometimes empty or something like "Untitled". The _OB_APP_TITLE property will show the value that Openbox used, not the current title.

Per-application settings let you match on what we call class, name, role, title and type. These can all be determined with the obxprop utility. Run obxprop | grep "^_OB_APP" to see the value of these five properties. The output will look like

You have to specify at least one of class and name. Optionally, you may specify more than one, in which case they must all match for the rule to be applied. You may also optionally specify roll and type. Note that the title matched is the one when the window was mapped. Many programs set the title just after mapping the window which means the value Openbox sees as it is determining which rules to apply is sometimes empty or something like "Untitled". The _OB_APP_TITLE property will show the value that Openbox used, not the current title.

When specifying the name, class, or role for a rule, you can use simple wildcard matching with the "*" and "?" characters. A "*" matches any number of characters and a "?" matches any single character.

As well, multiple rules can be applied to the same window. This lets you do more with less writing. For instance you could write one rule to match against all windows and then later rules could further change things for more specific windows. The rules are matched in the order they appear in your configuration file, so later rules will override previous rules if they both specify the same setting for a window.

OBApps is a GUI tool for creating and editing per-application settings. It allows you to click on a window to create a matching rule and to easily set all the properties documented in the example configuration