scriptable desktop UI, is it possible?

Xiong Jiang linuster at
Sat Feb 7 09:34:12 CET 2009

XFCE is my top desktop UI choice and it may be the best candidate for
the following idea, which is my wish, not to be considered as feature requests.

I am tired of tweaking my desktop UI: whatever I tried, I want to try
something new, and unable to save what I have tried except for saving
a screen shot, and unable to easily use it again. So I am wondering if
anyone would or have bothered to create a programmable UI through
perl/python/ruby/java/bash/whatever script.

By using such script, you can save your UI setup easily, and pick it
up again any time in future. You can set up your customization on a
new installation easily, just by running the script, and you can
create a menu to switch between different setup by just one click.

Sounds cool enough? And more, you can design your own desktop UI and
your own experience by just writing some script.

Well, I actually want to try some desktop UI like this, let me name it
as # desktop environment, or #DE, if name matters:

The goal is to access and switch between opened or favorite
applications or documents, and the desktop root window, quickly.

- Desktop screen is divided to 3x3 blocks, numbered 1-9, as the layout
of the numpad on PC-104 keyboard.

- Each block contains icons that serve as represent either
applications or documents shortcuts. To stay organized, user can put
shortcuts belongs to similar category or task in same block.

- When an application is launched, the window manager saves
information about which block it is launched from.

- Hot keys, such as numpad keys can be used to switch between opened
windows, for example:

 Press 1 and switch to the window that was launched from block 1. If
there are multiple such windows, press 1 again will bring the next
window in the list to top.
 Press numpad 0 to "expose" the desktop window, showing all the icons
and thumbnails in each block.

 The other keys on numpad are also very useful. + - * / on numpad
could be used to maxmize / minimize / dock-to-right / dock-to-left the
current top window.
. can pop up a menu.

- If user doesn't like numpad keys, other hotkeys such as ALT-1..9 can
be used instead.

- Mice operation is somehow so limited, but mid-button can be used to
"expose" all windows,

Well the whole story is that if the UI is programmable through
scripts, the above is just one of the many interesting things for
experiment, and we can make much better improved / customized UI
design very quickly. Linux distros can pick up some popular or typical
ones as the default desktop setup. Is it fun!

More information about the Xfce mailing list