On Mon, Jan 30, 2012 at 05:49:17PM -0500, Chris Siebenmann wrote:
> | On 30 January 2012 21:28, Chris Siebenmann <c...@cs.toronto.edu> wrote:
> | > €Does anyone know if there exists a good command line tool for
> | > listing either the window IDs or the window names of all windows
> | > of a specific class (or better yet, set of classes)? Or is this
> | > something that's better done with an fvwm module written in Perl
> | > with fvwm-perllib[*]?
> | 
> | xwininfo
> | xprop
> | 
> | But why not get FVWM to do it?   No need for a module, just a
> | conditional command.
> | 
> | All (SomeCondition, ClassName, OtherCondition) Echo "$[w.id]: $[w.class]"
> 
>  Is there a way to write the output of All to a pipe or the like?

Not before dumping it to a temporary file as in:

All (...) PipeRead `echo $[w.class] >> /some/file`

And then processing /some/file, but note that there's the potential for
race-conditions here.

>  At this point it might be useful to explain my overall motivation: I
> want to put together something that lets me select xterm windows from
> the keyboard based on their name, with name completion. My current plan
> is to use dmenu for the window name completion (and a script around it
> to then act on the window). But for this I need to feed the window names
> into dmenu[*].

Yes, your other thread on this which you started is no different to this --
except that now you no longer have the requirement of unique entries.  You
stated before that unique entries were permissible.

> (A recent display reorganization has moved things so that even the best
> position for my usual FvwmIconMan is a bit far from things.)
> 
>  It's possible that there's a better way to achieve this overall goal,
> but I think the time that I asked about the overall goal this was the
> best way in the current fvwm.

So something like this:

All (SomeWindowClass, OtherConditions) PipeRead \
        `echo "FvwmCommand 'WindowId $[w.id] Focus'" >> /tmp/foo`

I do not care one way how to hook dmenu in to this, but that's how I would
do it above.  Getting dmenu to understand what's in /tmp/foo, including any
bells and whistles, is completely down to you.

-- Thomas Adam

Reply via email to