View previous topic :: View next topic |
Author |
Message |
Darkael Veteran
Joined: 10 Aug 2004 Posts: 1321 Location: France
|
Posted: Mon Apr 17, 2006 3:55 pm Post subject: |
|
|
leptitlutin, j'avais fait une petit erreur dans le petit bout de code que tu cites, il faut mettre un Pixmap avant chaque $fvwm_pager_machin
efyx, tu veux enlever les ombres pour toutes les fenêtres ou seulement certaines en particulier? Pour le deuxième cas il fallait en effet utiliser xprop il me semble, mais je sais plus trop comment exactement.... |
|
Back to top |
|
|
leptitlutin n00b
Joined: 25 Jan 2005 Posts: 41
|
Posted: Mon Apr 17, 2006 7:25 pm Post subject: |
|
|
Oui pardon j'ai mi en cote le mauvais exemple mais j'ai bien Pixmap dans mes lignes.
Mais cela ne marche pas du tout. |
|
Back to top |
|
|
DidgeriDude Guru
Joined: 30 Jan 2005 Posts: 349
|
Posted: Mon Apr 17, 2006 8:35 pm Post subject: |
|
|
Personnellement, j'utilise le script suivant pour changer de wallpaper lorsque je clique sur celui que je veux dans mon menu déroulant. Si ça t'intéresse...
Code: | #!/bin/sh
## Définition des variables
#--------------------------
CURRENT_DESK=$1
WALLPAPER=$2
PAGER_WP=$pager_dir/$CURRENT_DESK.png
PAGER_WP_ACTIVE=$pager_dir/$CURRENT_DESK"-active".png
COLOR=10$1
COLOR_ACTIVE=11$1
## Activation du fond d'écran
-----------------------------
fbsetbg -f $WALLPAPER
## Création des mini-images pour le Pager
#----------------------------------------
convert -scale 80x60 -quality 0 $WALLPAPER $PAGER_WP
convert -scale 80x60 -quality 0 -fill "#ffffff" -colorize 60 $WALLPAPER $PAGER_WP_ACTIVE
## Mise à jour des colorsets pour le Pager
------------------------------------------
FvwmCommand 'Colorset '$COLOR' Pixmap '$PAGER_WP''
FvwmCommand 'Colorset '$COLOR_ACTIVE' Pixmap '$PAGER_WP_ACTIVE''
cp -f $WALLPAPER $wallpapers_dir/desk-$CURRENT_DESK.jpg
|
Ce script est appelé dans la fonction de Taviso qui m'affiche mes wallpapers (et que je devrais réécrire à l'aide d'un autre script basé sur imlib2, si c'est possible, afin d'accélérer la création des miniatures...) :
Code: | DestroyFunc WallpaperBrowser
AddToFunc WallpaperBrowser
+ I PipeRead 'test ! -d "$0/.thumbs" && mkdir "$0/.thumbs"; \
for i in "$0/"*; do \
test -f "$0/.thumbs/${i##*/}" \
-a "${i}" -ot "$0/.thumbs/${i##*/}" || { \
convert -quality 0 -scale 24 "${i}" "png:$0/.thumbs/${i##*/}" 2>/dev/null \
|| continue; \
}; \
done; \
fvwm-menu-directory --icon-title "$[icons_dir]"/dossier_images.png --icon-file __PIXMAP__ \
--icon-dir "$[icons_dir]"/dossier_images.png --dir $0 --exec-file "^$[scripts_dir]/wallpapers.sh $[desk.n]" \
--exec-t="^gqview $0" | sed -e "s#FuncFvwmMenuDirectory#WallpaperBrowser#g" \
-e "s#__PIXMAP__\\(.*\\)\\"\\(.*/\\)\\(.*\\)\\"#\\2.thumbs/\\3\\1\\2\\3#g"'
|
Pour info, j'ai 5 bureaux, et donc mes colorsets vont de 100 à 104 pour les miniatures dans le pager, correspondant aux fichiers 0.png à 4.png, et de 110 à 114 pour les miniatures actives (le bureau actuel, dont la miniature est éclaircie), correspondant aux fichiers 0-active.png à 4-active.png.
Si cela peut t'aider... |
|
Back to top |
|
|
Darkael Veteran
Joined: 10 Aug 2004 Posts: 1321 Location: France
|
Posted: Mon Apr 17, 2006 8:42 pm Post subject: |
|
|
leptitlutin wrote: | Oui pardon j'ai mi en cote le mauvais exemple mais j'ai bien Pixmap dans mes lignes.
Mais cela ne marche pas du tout. |
Est-ce que les miniatures sont bien créées dans le répertoire correspondant à $fvwm_pager_path? Sinon, vu que la commande FvwmCommand est lancée, il faut avoir lancé au préalable le module FvwmCommandS (+ I Module FvwmCommandS dans StartFunction par exemple)
A part ça je vois pas... |
|
Back to top |
|
|
leptitlutin n00b
Joined: 25 Jan 2005 Posts: 41
|
Posted: Mon Apr 17, 2006 9:24 pm Post subject: |
|
|
Merci à vous deux
Très propre tes scripts DidgeriDude !!!!
Quant à toi KarnEvil tu es trop fort
Le bouletausore que je suis, avait effectivement oublié de charger le module FvwmComandS
Merci Merci Merci
J'adore Fvwm et ce Thread |
|
Back to top |
|
|
FunzZy n00b
Joined: 15 May 2006 Posts: 21
|
Posted: Wed May 31, 2006 9:45 am Post subject: |
|
|
Salut tout le monde, j'ai suivi vos infos pour fvwm et je commence a avoir une config qui est pas trop trop mal meme si c'est loin d'etre fini.
Par contre, avant j'utilisai fluxbox et le fait de double cliquer sur une fenetre pour garder que la barre de titre me manque sous fvwm.
Bien sur je peux le faire avec la molette mais je prefere le double clique sur la barre de titre pour réduire/agrandir.
Y'a t'il un quelconque moyen de faire cela ?
Merci. |
|
Back to top |
|
|
truc Advocate
Joined: 25 Jul 2005 Posts: 3199
|
Posted: Wed May 31, 2006 10:39 am Post subject: |
|
|
salut, je ne peux pas te dire la syntax exacte mais, il faut que tu te créés une fonction du style
Code: | FvwmMaximMinim
+C Nop
+D FonctionFvwmPourMaximiserOuMinimiser
|
ensuite tu dois pouvoir ajouter quelque chose comme ça:
Code: |
mouse 1 T N FvwmMaximMinim
|
et voilà, comme tu sais le faire avec la molette je suppose que tu connais la fonction...
quelqu'un à peut-être plus simple. |
|
Back to top |
|
|
FunzZy n00b
Joined: 15 May 2006 Posts: 21
|
Posted: Wed May 31, 2006 12:26 pm Post subject: |
|
|
Merci, mais ca ne m'aide pas beaucoup car pour le moment y'a:
MOUSE 4 T N WindowShade True
MOUSE 5 T N WindowShade False
MOUSE 4 TW M WindowShade True
MOUSE 5 TW M WindowShade False
Comment je fais pour savoir avec le double click si je dois faire un WindowShade True ou False.
Je m'embrouille peut etre mais ce fichier de conf est décidemment pas simple ! |
|
Back to top |
|
|
Darkael Veteran
Joined: 10 Aug 2004 Posts: 1321 Location: France
|
Posted: Wed May 31, 2006 12:47 pm Post subject: |
|
|
FunzZy wrote: | Merci, mais ca ne m'aide pas beaucoup car pour le moment y'a:
MOUSE 4 T N WindowShade True
MOUSE 5 T N WindowShade False
MOUSE 4 TW M WindowShade True
MOUSE 5 TW M WindowShade False
Comment je fais pour savoir avec le double click si je dois faire un WindowShade True ou False.
Je m'embrouille peut etre mais ce fichier de conf est décidemment pas simple ! |
Tu fais comme t'as dit truc:
Code: |
AddToFunc FvwmTitlebarClick
+ C Nop
+ M Move
+ D WindowShade
Mouse 1 T N FvwmTitlebarClick
|
"C": simple clic, "M": mouvement, "D": double-clic, cf. la section de la man page sur AddToFunc pour plus d'infos
Et quand tu mets pas d'arguments à WindowShade, ça fait toggle (ça masque ou demasque selon l'état de la fenêtre) |
|
Back to top |
|
|
FunzZy n00b
Joined: 15 May 2006 Posts: 21
|
Posted: Wed May 31, 2006 1:04 pm Post subject: |
|
|
Merci beaucoup pour cette réponse !! C'est parfait ! |
|
Back to top |
|
|
FunzZy n00b
Joined: 15 May 2006 Posts: 21
|
Posted: Thu Jun 01, 2006 2:43 pm Post subject: |
|
|
Sinon maintenant j'aimerai que la fenetre se mette en premier plan quand je clique 1 fois sur la titlebar, comment faire ?
Désolé si la question est un peu bête mais je trouve pas. Je pense c'est dans cette fonction qu'il faut que je rajoute quelque chose mais je trouve pas.
Merci d'avance. |
|
Back to top |
|
|
Darkael Veteran
Joined: 10 Aug 2004 Posts: 1321 Location: France
|
Posted: Thu Jun 01, 2006 3:14 pm Post subject: |
|
|
FunzZy wrote: | Sinon maintenant j'aimerai que la fenetre se mette en premier plan quand je clique 1 fois sur la titlebar, comment faire ?
Désolé si la question est un peu bête mais je trouve pas. Je pense c'est dans cette fonction qu'il faut que je rajoute quelque chose mais je trouve pas.
Merci d'avance. |
faut juste que dans le code dessus à la place de "C Nop" tu mettes "C Raise". |
|
Back to top |
|
|
DidgeriDude Guru
Joined: 30 Jan 2005 Posts: 349
|
Posted: Thu Jun 08, 2006 10:59 pm Post subject: |
|
|
Salut à tous.
Je suis en train de modifier mes scripts de navigation dans mon arborescence et je cherche un moyen pour n'afficher que les fichiers vidéos, musicaux ou images, le tout basé sur une reconnaissance des extensions (à partir d'une liste, par exemple...) en utilisant sed ou, peut-être, awk.
Comme vous pouvez le voir sur ce screenshot, j'aimerais ne pas voir afficher le fichier .jpg dans le menu, d'où mon idée ci-dessus.
Voici mon petit bout de config :
Code: | DestroyFunc FuncFvwmMenuDirectory
AddToFunc FuncFvwmMenuDirectory
+ I PipeRead "$[scripts_dir]/navigateurs.sh \"$0\" $[desk.n]" |
et mon script :
Code: | #/bin/sh
####
#
# Arborescence du dossier "Musique" :
# Style -> Artiste (Prénom Nom) -> Année - Nom de l'album
#
# Chaque dossier album contient un fichier .jaquette.png qui
# est une miniature de la jaquette de l'album qui s'affiche
# comme icône de titre.
#
# La commande 'sed' enlève les " item +100 c" à la fin des lignes
# dans le menu, ainsi que l'année de chaque album (ceux-ci se
# retrouvent donc classés par ordre chronologique, sans les dates).
#
#
# Arborescence du dossier "Vidéos" :
# Rien de particulier, à voir pour des icônes de jaquettes de films...
#
# La commande 'sed' enlève les " item +100 c" à la fin des lignes
# dans le menu.
#
#
# Arborescence du dossier "Wallpapers" :
# Dans ce dossier, ainsi que dans chaque sous-répertoire, un dossier
# ".thumbs" contient les miniatures des fichiers images (Merci à
# Taviso pour son script que j'ai remanié pour mes besoins).
# ".thumbs" est créé s'il n'existe pas, et mis à jour automatiquement,
# si nécessaire, à chaque navigation par le menu.
#
# La commande 'sed' enlève les " item +100 c" à la fin des lignes
# dans le menu (encore que cela n'est pas nécessaire s'il n'y a que
# des fichiers images dans le dossier, enfin je ne l'ai remarqué que
# pour des .png et .jpg).
# De plus, 'fvwm-menu-directory' ignore l'option '--icon-file' pour
# les fichiers images, et met automatiquement comme icône le nom du
# fichier (avec le chemin complet), donc la seconde commande 'sed'
# rajoute le "/.thumbs" pour afficher la miniature !
#
# Idée : ne pas créer de dossier ".thumbs", mais tout mettre dans un
# unique dossier "Thumbs", dans lequel recréer une arborescence ne
# contenant que les miniatures de fichiers situés un peu partout !
#
####
case "$1" in
"$audio_dir"*)
programme="$audio_pgm"
icone_fichier="$icons_dir/musique.png"
icone_dossier="$icons_dir/dossier_musiques.png"
test -f "$1/.jaquette.png" && icone_titre="$1/.jaquette.png" || icone_titre="$icons_dir/dossier_musiques.png"
fvwm-menu-directory --icon-title "${icone_titre}" \
--title '%d' \
--icon-file ${icone_fichier} \
--icon-dir ${icone_dossier} \
--dir "$1" \
--links \
--exec-t="^${programme} *" \
--exec-file "^${programme}" \
| sed -e 's/ item.*$//g' \
-e 's/%[0-9][0-9][0-9][0-9] - /%/';;
"$video_dir"*)
programme="$video_pgm"
icone_fichier="$icons_dir/video.png"
icone_dossier="$icons_dir/dossier_videos.png"
icone_titre="$icons_dir/dossier_videos.png"
fvwm-menu-directory --icon-title "${icone_titre}" \
--title '%d' \
--icon-file ${icone_fichier} \
--icon-dir ${icone_dossier} \
--dir "$1" \
--links \
--exec-t="^${programme} *" \
--exec-file "^${programme}" \
| sed -e 's/ item.*$//g';;
"$wallpapers_all_dir"*)
programme="$scripts_dir/wallpapers.sh $2"
icone_fichier="$icons_dir/fichier.png"
icone_dossier="$icons_dir/dossier_images.png"
icone_titre="$icons_dir/dossier_images.png"
test ! -d "$1/.thumbs" && mkdir "$1/.thumbs"
for i in "$1/"*
do
test -f "$1/.thumbs/${i##*/}" -a "${i}" -ot "$1/.thumbs/${i##*/}" || convert -quality 50 -sample 42 "${i}" "png:$1/.thumbs/${i##*/}" 2>/dev/null || continue
done
fvwm-menu-directory --icon-title "${icone_titre}" \
--title '%d' \
--icon-file ${icone_fichier} \
--icon-dir "${icone_dossier}" \
--dir "$1" \
--links \
--exec-t="^gqview $1" \
--exec-file "^${programme}" \
| sed -e 's/ item.*$//g' \
-e "s~\(%$1\)\(.*\)~\1/.thumbs\2~g";;
esac |
Le script wallpapers.sh dans la partie "$wallpapers_all_dir"*) est affiché un peu plus haut sur cette page...
J'aimerais aussi accélérer la création des miniatures en utilisant un programme basé sur imlib2 mais je sèche un peu... Si vous avez des idées...
Quant à mon idée de dossier unique pour toutes les miniatures (en arborescence), qu'en pensez-vous ? Certains ont-ils testé ? |
|
Back to top |
|
|
Darkael Veteran
Joined: 10 Aug 2004 Posts: 1321 Location: France
|
Posted: Fri Jun 09, 2006 2:38 pm Post subject: |
|
|
Pour filtrer les extensions, faut rajouter aux sed un truc comme ça:
Code: |
sed -e '/^+ ".*\(mp3\|ogg\|wma\|flac\)"/!d'
|
la clé étant ici le \(mp3\|ogg\|wma\|flac\) où tu as la liste des extensions autorisées. Si tu veux un truc plus user-friendly, tu peux essayer un truc comme ça:
Code: |
audio_extensions="mp3 ogg wma flac"
audio_extensions_regex=`echo $audio_extensions | sed 's/\s\+/\\\|'`
...
-e '/^+ ".*\('$audio_extensions_regex'\)"/!d'
|
(note: je suis pas chez moi, donc tout ça est à prendre avec des pincettes, je vérifierais ça ce soir)
Quote: |
J'aimerais aussi accélérer la création des miniatures en utilisant un programme basé sur imlib2 mais je sèche un peu... Si vous avez des idées...
|
Si c'est juste pour redimensionner, ça devrait pas être trop difficile d'écrire un petit programme en C, je verrais ça ce soir.... |
|
Back to top |
|
|
DidgeriDude Guru
Joined: 30 Jan 2005 Posts: 349
|
Posted: Fri Jun 09, 2006 8:33 pm Post subject: |
|
|
Merci KarnEvil pour tes idées avec sed (plus j'utilise ce programme, plus il me bluffe ! )
[OFF mode]
Le truc que je préfère car je m'étais pris la tête dessus :
Code: | sed -e 's/\(\<[a-zA-Z]\)\([a-zA-Z]*\>\)/\u\1\L\2/g' | qui écrit chaque mot avec une première lettre majuscule et le reste en minuscule comme, par exemple, les tritres de chansons en anglais...
[/OFF mode]
Pour imlib2, j'ai un peu potassé la doc (notamment afin de modifier le programme de miniaturisation rapide pour afficher les icônes sur le bureau), mais concernant ce que je veux faire, c'est un peu flou...
Question qui n'a rien à voir : comment utiliser opera -remote "openURL($url,new-window)" où $url est un chemin sur mon disque qui contient des espaces, des accents ou d'autres trucs bizarres ? |
|
Back to top |
|
|
truc Advocate
Joined: 25 Jul 2005 Posts: 3199
|
Posted: Fri Jun 09, 2006 9:08 pm Post subject: |
|
|
DidgeriDude wrote: | Question qui n'a rien à voir : comment utiliser opera -remote "openURL($url,new-window)" où $url est un chemin sur mon disque qui contient des espaces, des accents ou d'autres trucs bizarres ? |
j'pense que tu vas avoir le plaisir de jouer avec sed encore.. pour remplacer ces accents espaces et autres par leur equivalent en html (c'est quoi d'ailleurs de l'ascii?) bref regarde par exemple en utilisant simplement les fonctionnnalités de bash qui me font penser que sed peut faire ce que tu veux..
Code: | $ url=/home/sam/tmp/test\ qsfd/bookmarks.html
$
$ echo $url
/home/truc/tmp/test qsfd/bookmarks.html
$
$ opera -remote "openURL(file://localhost${url// /%20},new-window)"
$
|
Certes là je ne remplace que les espaces, mais bon.. c'est pour le principe.. (y'a 2 '/' pour dire qu'on remplace toutes les occurences de ' ' dans la chaine $url)
voili-voilou, any comments?
EDIT: par contre ça ne marche qu'avec des chemin absolu.. mais si c'est pour une utilisation avec rox ou un truc du style alors c'est tout bon;) |
|
Back to top |
|
|
DidgeriDude Guru
Joined: 30 Jan 2005 Posts: 349
|
Posted: Fri Jun 09, 2006 9:22 pm Post subject: |
|
|
@truc : En fait c'est pour le fichier qui gère les associations d'extensions de Midnight Commander, mais bon merci beaucoup, je vais tester...
EDIT : J'ai testé -> pas marché ; puis adapté et hop ça a marché !!!!!! Merci encore !
J'avais pas mal regardé le manuel de bash et j'avais vu des trucs dans le genre, mais bon, je m'étais dit que ce serait pour plus tard. Je crois que le moment est venu de m'y remettre !
@KarnEvil : tu as écrit :
Quote: | sed -e '/^+ ".*\(mp3\|ogg\|wma\|flac\)"/!d' | Ce qui me paraît bizarre, c'est que je pensais que les \( et \) délimitaient des groupes pour les réutiliser avec \1, \2, etc. tels des registres...
Last edited by DidgeriDude on Sat Jun 10, 2006 10:49 am; edited 1 time in total |
|
Back to top |
|
|
Darkael Veteran
Joined: 10 Aug 2004 Posts: 1321 Location: France
|
Posted: Fri Jun 09, 2006 10:18 pm Post subject: |
|
|
DidgeriDude wrote: | @truc : En fait c'est pour le fichier qui gère les associations d'extensions de Midnight Commander, mais bon merci beaucoup, je vais tester...
@KarnEvil : tu as écrit :
Quote: | sed -e '/^+ ".*\(mp3\|ogg\|wma\|flac\)"/!d' | Ce qui me paraît bizarre, c'est que je pensais que les \( et \) délimitaient des groupes pour les réutiliser avec \1, \2, etc. tels des registres... |
A ma connaissance c'est le seul moyen d'avoir une liste comme ça quand il y a d'autres éléments dans le pattern à chercher... |
|
Back to top |
|
|
DidgeriDude Guru
Joined: 30 Jan 2005 Posts: 349
|
Posted: Mon Jun 12, 2006 1:43 pm Post subject: |
|
|
Encore une petite question de scripting :
J'ai, dans mon arborescence, des noms de dossiers comportant des esperluètes (&) ou des pourcents (%).
J'ai lu dans le man qu'il fallait les doubler (&&) et (%%) afin de les considérer comme des caractères.
Mon problème est donc, dans mon script, de ne changer que les & et % dans les titres affichés mais pas dans les chemins (nécessaires pour lancer les programmes)
En fait, je n'ai remarqué ce problème que dans mes titres de menus (pas dans chaque item), j'ai donc utilisé un sed de la forme (en attendant de trouver mieux) :
Code: | sed -e '/audacious -p -e \*/s/&/&&/g' | car le titre est le seul contenant la commande audacious -p -e *, étant donné (voir mes posts plus haut) que ma variable $audio_pgm contient "audacious -p -e".
Mon problème est que la commande 'g' de sed effectue toutes les transformations sur la ligne alors que j'aimerais que cela ne se fasse que dans le titre qui est affiché. Le problème est donc de trouver un modèle s'appliquant à un nombre quelconque de caractères spéciaux présents dans l'arborescence !!!
Heu, comment dire... Des idées ??? (Enfin si vous avez compris ce que je veux dire !!!) |
|
Back to top |
|
|
Darkael Veteran
Joined: 10 Aug 2004 Posts: 1321 Location: France
|
Posted: Mon Jun 12, 2006 3:07 pm Post subject: |
|
|
Je vois ce que tu veux dire, c'est une question assez difficile, mais c'est apparement possible:
http://doc.novsu.ac.ru/oreilly/unix/sedawk/ch06_03.htm
Regarde la partie 6.3.1, il y a un exemple qui touche à ce que tu veux faire (faire un replace sur une partie seulement d'une ligne) et qui utilise les hold buffers. J'ai pas accès à ma box (et donc fvwm) là tout de suite donc je peux pas te proposer une adaptation à ton cas... mais ça doit être faisable.
Ou sinon au pire tu peux utiliser perl ou autre... |
|
Back to top |
|
|
DidgeriDude Guru
Joined: 30 Jan 2005 Posts: 349
|
Posted: Mon Jun 12, 2006 7:29 pm Post subject: |
|
|
Merci KarnEvil, ce lien est absolument terrible !
Je vais voir ce que je peux faire avec, étant donné que j'utilise sed avec un pipe ! Mais, à vue de nez, c'est très utilisable avec la partie comprise entre le + I et le "Exec".
Par contre, je ne peux pas utiliser d'autre language là tout de suite maintenant car, à par le bash que je commence à maîtriser, le pascal que je maîtrise assez bien et mes notions de C, tout autre language m'est inconnu ! Bon, c'est vrai que je me suis un peu penché sur le perl dont la syntaxe me semble assez simple mais de là à pondre un script pour FVWM, faut pas pousser mémé quand même !!
[EDIT] Ça marche, voici mon bout de script, à mettre au propre bien sûr, et à adapter à d'autres caractères spéciaux... (et à commenter, car c'est opaque !!!)
Code: | fvwm-menu-directory --icon-title "${icone_titre}" \
--title '%d' \
--icon-file ${icone_fichier} \
--icon-dir ${icone_dossier} \
--dir "$1" \
--links \
--exec-t="^${programme} *" \
--exec-file "^${programme}" \
| sed -e "/audacious -p -e \*/{
h
s/^\(.*\) *Exec.*\$/\1/
s/&/&&/g
G
s/\(.*\)\n.*\( *Exec.*\)/\1\2/}" \
-e "s/%[0-9][0-9][0-9][0-9] - /%/" \
-e "s/ item.*\$//g";; |
Merci encore KarnEvil ! |
|
Back to top |
|
|
DidgeriDude Guru
Joined: 30 Jan 2005 Posts: 349
|
Posted: Wed Jun 14, 2006 5:35 pm Post subject: |
|
|
Bon je continue mes pérégrinations sur mon script de navigation dans mes dossiers...
En gros, voici le test : Afficher correctement (et n'avoir aucun problème à lancer les programmes attachés sur les fichiers des sous-dossiers, ici audacious) le dossier dont le nom est (une fois les caractères barbares rajoutés) :
"1994 - ^In# $&My% ~&[African]% ^[Dream]#*truc!!|<>"
Dans un premier temps, j'ai renommé mes fichiers avec les mêmes caractères et aucun problème à l'affichage ! En effet, fvwm-menu-directory change lui-même les &, $, * et % en &&, $$, ** et %%.
Par contre, rien concernant les titres des menus !
Comme vous avez pu le voir plus haut, je me suis bien pris la tête avec sed pour effectuer les modifications adéquates sur la sortie de fvwm-menu-directory. C'est alors que je me suis dit :
Pourquoi ne pas utiliser l'option --title de fvwm-menu-directory, vu que je ne lui demande pas de les formater de manière spéciale ?
Et voici donc le résultat (pour le dossier Musique) :
Code: | nom_dossier=$(echo ${1##*/} | sed -e "s/&/&&/g" -e "s/%/%%/g" -e "s/\*/**/g")
case "$1" in
"$audio_dir"*)
programme="$audio_pgm"
icone_fichier="$icons_dir/musique.png"
icone_dossier="$icons_dir/dossier_musiques.png"
test -f "$1/.jaquette.png" && icone_titre="$1/.jaquette.png" || icone_titre="$icons_dir/dossier_musiques.png"
fvwm-menu-directory --icon-title "${icone_titre}" \
--title "${nom_dossier}" \
--icon-file ${icone_fichier} \
--icon-dir ${icone_dossier} \
--dir "$1" \
--links \
--exec-t="^${programme} *" \
--exec-file "^${programme}" \
| sed -e "s/%[0-9][0-9][0-9][0-9] - /%/" \
-e "s/ item.*\$//g";; |
C'est donc un code plus léger.
La première ligne effectue simplement les remplacements nécessaires (les '$' s'affichent correctement sans être doublés !) sur le nom du dossier en cours (récupéré à partir du chemin complet).
Il ne me reste donc plus qu'à filtrer les bons fichiers à afficher, et faire en sorte que ceux-ci soient les seuls à être affectés par l'action globale du titre !
Et puis aussi, mon histoire de programme de resize basé sur imlib2.
J'avance... lentement mais sûrement ! (C'est nul d'être perfectionniste !!)
[EDIT (06-01-2007)] Une version plus complète ici
Last edited by DidgeriDude on Sat Jan 06, 2007 10:02 pm; edited 1 time in total |
|
Back to top |
|
|
DidgeriDude Guru
Joined: 30 Jan 2005 Posts: 349
|
Posted: Sat Sep 09, 2006 6:26 pm Post subject: |
|
|
Je déterre ce post du fin fond des limbes de ce forum simplement pour vous (re)parler de Metisse pour lequel j'ai refais un tutoriel afin de pouvoir l'installer à partir des sources CVS.
Voilà c'est tout !
++ |
|
Back to top |
|
|
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Sat Sep 09, 2006 7:33 pm Post subject: |
|
|
Ça a l'air sympa metisse, ptêt que j'essair un jour
Et merci pour le lien vers mon ebuild CVS dans ton Howto
Ça me fait penser qu'il faut que je termine ma 2e config de Fvwm et que je la poste |
|
Back to top |
|
|
Dominique_71 Veteran
Joined: 17 Aug 2005 Posts: 1878 Location: Switzerland (Romandie)
|
Posted: Fri Sep 15, 2006 11:28 am Post subject: |
|
|
Salut,
Après des années sur d'autres wm, je suis en train de me remettre à ffwm. Beaucoup de choses ont changé et de plus j'ai tout oublié. J'ai vu beaucoup de choses sur les styles mais presque rien sur les menus. Or je suis justement en train de rajouter des programmes dans le menu. Le seul problème que j'ai est que je n'arrive pas à lancer des programmes sous le compte root depuis le menu. J'ai essayé pas mal de choses, mais rien n'y a fait. Par exemple: Code: | exec FvwmCommand 'su -c "porthole"' | et rien ne se passe. J'ai essayé aussi avec sudo. Je préferrerais su que sudo car cela marche sans que j'aie à rajouter les commandes dans la config de sudo.
Une autre question qui elle est une question de style: Est-il possible d'avoit non seulement les titres de fenètre transparents, mais aussi les décorations des programmes. Par décorations j'entend les barres de menu barres de défilements et ce genre de choses comme la barre de navigation de firefox. Idéalement, je ne voudrais que le fond de ces barres en transparent, mais ni le texte ni les bouttons ou autres icones. _________________ "Confirm You are a robot." - the singularity |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|