Customise Window Layout with Ardour and Openbox
Posted: Wed Jul 24, 2019 1:15 pm
My goal is to have Catia on Desktop 8, the Ardour editor on Desktop 9, the Ardour mixer on Desktop 10 and plug-ins on Desktop 11.
To control window placement in Openbox edit ~/.config/openbox/rc.xml. Window layout is managed in the 'applications' section, the last section in the file.
Windows are identified by _OB_APP properties. To find the _OB_APP properties for a window type this into a terminal :
The mouse pointer turns into a cross.
Click on the window you want to identify. Using Catia as an example :
I want a unique identifier, so I chose title = "Catia". Now add this to rc.xml to put Catia on Desktop 8 maximised :
Now I find out the properties of the Ardour editor :
To make sure it's a unique identifier I chose name = "ardour_ardour" and title = "Ardour" adding this to rc.xml :
The mixer produces this obxprop output :
The unique identifier is title, and that includes the name of the project so I use a wildcard "*" to match all mixers :
Now to have plug-ins on Desktop 11 I'll use DrumGizmo as an example :
To put all plug-ins on Desktop 11 add this to rc.xml :
A lot more could be done with plug-ins, putting specific plug-ins on specific desktops, or types of plug-ins (instruments, insert effects, send effects) on specific desktops.
Now here is the whole config. You can copy and paste this as a starting point for your own customisations :
To control window placement in Openbox edit ~/.config/openbox/rc.xml. Window layout is managed in the 'applications' section, the last section in the file.
Code: Select all
<applications>
<application>
YOUR CONFIG
</application>
</applications>
Code: Select all
$ obxprop | grep "^_OB_APP"
Click on the window you want to identify. Using Catia as an example :
Code: Select all
$ obxprop|grep "^_OB_APP"
_OB_APP_TYPE(UTF8_STRING) = "normal"
_OB_APP_TITLE(UTF8_STRING) = "Catia"
_OB_APP_GROUP_CLASS(UTF8_STRING) =
_OB_APP_GROUP_NAME(UTF8_STRING) =
_OB_APP_CLASS(UTF8_STRING) = "Catia"
_OB_APP_NAME(UTF8_STRING) = "catia.py"
_OB_APP_ROLE(UTF8_STRING) =
Code: Select all
<application title="Catia">
<desktop>8</desktop>
<maximized>yes</maximized>
</application>
Code: Select all
$ obxprop|grep "^_OB_APP"
_OB_APP_TYPE(UTF8_STRING) = "normal"
_OB_APP_TITLE(UTF8_STRING) = "Ardour"
_OB_APP_GROUP_CLASS(UTF8_STRING) = "Ardour-5.12.0"
_OB_APP_GROUP_NAME(UTF8_STRING) = "ardour-5.12.0"
_OB_APP_CLASS(UTF8_STRING) = "Ardour"
_OB_APP_NAME(UTF8_STRING) = "ardour_ardour"
_OB_APP_ROLE(UTF8_STRING) =
Code: Select all
<application name="ardour_ardour"
title="Ardour">
<desktop>9</desktop>
<maximized>yes</maximized>
</application>
Code: Select all
$ obxprop|grep "^_OB_APP"
_OB_APP_TYPE(UTF8_STRING) = "normal"
_OB_APP_TITLE(UTF8_STRING) = "Drivin' - Mixer - Ardour"
_OB_APP_GROUP_CLASS(UTF8_STRING) = "Ardour-5.12.0"
_OB_APP_GROUP_NAME(UTF8_STRING) = "ardour-5.12.0"
_OB_APP_CLASS(UTF8_STRING) = "Ardour"
_OB_APP_NAME(UTF8_STRING) = "ardour_ardour"
_OB_APP_ROLE(UTF8_STRING) =
Code: Select all
<application name="ardour_ardour"
title="* - Mixer - Ardour">
<desktop>10</desktop>
<maximized>yes</maximized>
</application>
Code: Select all
$ obxprop|grep "^_OB_APP"
_OB_APP_TYPE(UTF8_STRING) = "dialog"
_OB_APP_TITLE(UTF8_STRING) = "MIDI: DrumGizmo (by DrumGizmo Team)"
_OB_APP_GROUP_CLASS(UTF8_STRING) = "Ardour-5.12.0"
_OB_APP_GROUP_NAME(UTF8_STRING) = "ardour-5.12.0"
_OB_APP_CLASS(UTF8_STRING) = "Ardour-5.12.0"
_OB_APP_NAME(UTF8_STRING) = "ardour-5.12.0"
_OB_APP_ROLE(UTF8_STRING) = "plugin_ui"
Code: Select all
<application name="ardour-5.12.0"
role="plugin_ui">
<desktop>11</desktop>
<layer>normal</layer>
</application>
Now here is the whole config. You can copy and paste this as a starting point for your own customisations :
Code: Select all
<application title="Catia">
<desktop>8</desktop>
<maximised>yes</maximised>
</application>
<application name="ardour_ardour"
title="Ardour">
<desktop>9</desktop>
<maximized>yes</maximized>
</application>
<application name="ardour_ardour"
title="* - Mixer - Ardour">
<desktop>10</desktop>
<maximized>yes</maximized>
</application>
<application name="ardour-5.12.0"
role="plugin_ui">
<desktop>11</desktop>
<layer>normal</layer>
</application>