Hi,
That's an old one that have bothered me from years, and I finally get a
simple test case. With the following function:
DestroyFunc FuncFvwmMenuMovieDirectory
AddToFunc FuncFvwmMenuMovieDirectory
+ I PipeRead 'case \"$0\" in \
"/home/alian/Vídeos"*) myexec="mplayer";; \
esac; \
fvwm-menu-directory --icon-title
"${mytitle:-22x22/categories/directory.png}" \ --icon-file
"${mypng:-22x22/categories/Audio-Video.png}" \
--func="FuncFvwmMenuMovieDirectory" \ --exec-file "^${myexec}" --dir
\"$0\" --exec-title="ls \"$0\""'
It generate:
DestroyMenu recreate "/home/alian/Vídeos"
AddToMenu "/home/alian/Vídeos"
+ DynamicPopDownAction DestroyMenu "/home/alian/Vídeos"
+ MissingSubmenuFunction FuncFvwmMenuMovieDirectory
+ "%22x22/categories/directory.png%/home/alian/Vídeos" Exec cd
"/home/alian/Vídeos"; ls /home/alian/Vídeos
+ "" Nop
+ "Musique" Popup "/home/alian/Vídeos/Musique" item +100 c
This is called by:
DestroyMenu /Music/LoadMovie
AddToMenu /Music/LoadMovie
+ MissingSubmenuFunction FuncFvwmMenuMovieDirectory
+ '%22x22/categories/video_movies_view.png%$[gt.Browse Medias]'
Popup /home/alian/Vídeos
Popup /Music/LoadMovie
The menu pop up, the 4 subdirs are here:
# ls -R /home/alian/Vídeos/Musique
/home/alian/Vídeos/Musique:
Français Madonna Paco de Lucia Santana
/home/alian/Vídeos/Musique/Français:
Plume Latraverse _ Belle et Bum.avi
/home/alian/Vídeos/Musique/Madonna:
05 _ Madonna _ Re_Invention Tour _ June 16 2004 _ American Life.avi
Madonna _ American Life _Version 1 _ withdrawn__HQ no logo_.vob
Madonna._.American.Life.vob
Madonna._._American.Life_.MV._Uncensured_.vob
/home/alian/Vídeos/Musique/Paco de Lucia:
Paco De Lucia _ Concierto De Aranjuez _Spanish Kvcd_ By Waydansar.mpg
Video _ Paco de Lucia _ Rumba.mpg
/home/alian/Vídeos/Musique/Santana:
Carlos Santana _ Live In Mexico
_Concerto Video Sacred Fire.mpg
Carlos Santana _ Soul Sacrifice _Live in Woodstock_.mpg
Jeff Beck_ Carlos Santana_ Steve Lukather et Jan Hammer _ Karuizawa
Live.mpg
With it, I can play all the files in 3 of the subdirs, but
for /home/alian/Vídeos/Musique/Paco de Lucia, I get no submenu and
cannot navigate and load the files.
If I change the first function into into
DestroyFunc FuncFvwmMenuMovieDirectory
AddToFunc FuncFvwmMenuMovieDirectory
+ I PipeRead 'case \"$0\" in \
"/home/alian/Vídeos"*) myexec="mplayer";; \
esac; \
fvwm-menu-directory \
--func="FuncFvwmMenuMovieDirectory" \
--exec-file "^${myexec}" --dir \"$0\"'DestroyFunc
FuncFvwmMenuMovieDirectory
AddToFunc FuncFvwmMenuMovieDirectory
+ I PipeRead 'case \"$0\" in \
"/home/alian/Vídeos"*) myexec="mplayer";; \
esac; \
fvwm-menu-directory \
--func="FuncFvwmMenuMovieDirectory" \
--exec-file "^${myexec}" --dir \"$0\"'
I get no icon into the menu, and no function on the directory names,
but the 4 submenus are here with all the files, and they all are playing
fine.
I try to run the fvwm-menu-directory commands at the console, and the
output look correct to me, so the issue must be how fvwm interpret them.
As we can see, it is nothing special with the file names I use in that
case here, and it just doesn't work well as soon I want some icon or an
exec-title command. The only difference I can see is the space into the
directory name: "/home/alian/Vídeos/Musique/Paco de Lucia", but it
should work in all cases.
locale
LANG=fr_CH.utf8
LC_CTYPE="fr_CH.utf8"
LC_NUMERIC="fr_CH.utf8"
LC_TIME="fr_CH.utf8"
LC_COLLATE=C
LC_MONETARY="fr_CH.utf8"
LC_MESSAGES="fr_CH.utf8"
LC_PAPER="fr_CH.utf8"
LC_NAME="fr_CH.utf8"
LC_ADDRESS="fr_CH.utf8"
LC_TELEPHONE="fr_CH.utf8"
LC_MEASUREMENT="fr_CH.utf8"
LC_IDENTIFICATION="fr_CH.utf8"
LC_ALL=
fvwm --version
fvwm 2.6.6 (from cvs) compiled on Jul 18 2014 at 15:52:14 with support
for: ReadLine, RPlay, Stroke, XPM, PNG, SVG, Shape, XShm, SM, Bidi
text, Xinerama, XRender, XCursor, XFT, NLS
Cheers,
Dominique