PipeRead work but issue a warning [solved]

With Fvwm-2.6.5, I am rewriting Fvwm-Crystal mixer functionality using infostore, and I get a deprecated warning:

infoStore.SoundCard=n [amixer card number]
infostore.VolControl=[PCM|MASTER]
infostore.SnddB=[number: if !0 then dB control else absolute values]
infostore.Mixer=amixer (in this case)
info

[code]DestroyFunc Mixer-Volume-dB
AddToFunc Mixer-Volume-dB

  • I Exec exec amixer -c $[infostore.SoundCard] – set ‘$[infostore.VolControl]’ $0 > /dev/null

DestroyFunc Mixer-Volume
AddToFunc Mixer-Volume
PipeRead “if [[ $[infostore.Mixer] == amixer ]] ; then echo + I Exec exec amixer -c $[infostore.SoundCard] set ‘$[infostore.VolControl]’ $0 > /dev/null ; fi”

DestroyMenu /Mixer
AddToMenu /Mixer

  • ‘$[gt.Show main mixer]’ Mixer-GUI
  • ‘%22x22/fvwm-crystal/multimedia-volume-control.png%$[gt.Audio mixer]’ Popup /Preferences/Mixer
    PipeRead ‘for i in 0 -3 -6 -9 -12 -15 -18 -24 -30 -36 -42 -48 -54 -60 -100 ; \
    do if [[ $[infostore.SnddB] != 0 ]] ; \
    then echo “+ \”${i} dB\" Mixer-Volume-dB ${i}dB" ; \
    else case $i in \
    0) vol=100;; \
    -3) vol=95;; \
    -6) vol=91;; \
    -9) vol=86;; \
    -12) vol=81;; \
    -15) vol=76;; \
    -18) vol=72;; \
    -24) vol=62;; \
    -30) vol=53;; \
    -36) vol=43;; \
    -42) vol=34;; \
    -48) vol=24;; \
    -54) vol=15;; \
    -60) vol=6;; \
    -100) vol=0;; \
    *) vol=50;; \
    esac; \
    echo “+ \”${i}\" Mixer-Volume $vol" ; \
    fi ; done’
    [/code]

This work fine, but I get

[fvwm][expand_vars]: <<DEPRECATED>> Use $[version.line] instead of $v

If I comment out the PipeRead, I get an incomplete menu but no warning. When I replace the variables by their values and run the PipeRead into a console, it work without warning.

So, what is wrong?
And what can I do to remove this warning?

Edit: Forget it, I put $vol instead of ${vol} in the echo.

Anyway, I keep this post. We have a nice piperead for menu generation here.