[compiz] Extension languages and Compiz.

Mike Dransfield mike at blueroot.co.uk
Thu Apr 26 05:09:58 PDT 2007

Robert Carr wrote:
> On 4/26/07, Mike Dransfield <mike at blueroot.co.uk> wrote:
>> Robert Carr wrote:
>> > My recent work on Compiz-scheme has brought to my attention several
>> > problems preventing a real compiz extension language.
>> >
>> > Note that when I refer to an extension language, I am not referring to
>> > the ability to add plugins in some other languages, but more of
>> > something in the vein of emacs lisp.
>> >
>> > The major problem right now is extension languages are locked in to
>> > one plugin and what core exposes. What I mean by this is it's easy to
>> > add support for something like:
>> > (window-rule (make-rule (set-opacity-when (window-is tooltipp) 0.5)))
>> > However it's impossible to add support for something like:
>> > (scale-window-when (window-is negativep)).
>> I am not sure what your ultimate goals are, but this particular
>> example would be easy if you added a custom match handler to
>> the neg plugin.
>> AFAIK scale includes a scale_match action which you could pass
>> 'neg=1' and that would only scale neg'd windows.
> This isn't quite the problem. Even if that were done, how would scale
> expose a function to scale windows to the interpreter?

Through the option actions, its fairly easy to do in C so you should
be able to replicate that in a function.  The initiate and terminate
functions take a list of options which can be used to control it.

See the dbus plugin for how the scale initiate function can be exposed
and be sent parameters, I think the scale example was a specific one that
David gave when announcing the match options.

More information about the compiz mailing list