Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sat 30 Aug 2014, 10:35
All times are UTC - 4
 Forum index » House Training » Users ( For the regulars ) » Pour les francophones
Conversion d'un menu icewm en menu pekwm
Moderators: Béèm, darkerror05
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
Page 1 of 1 Posts_count  
Author Message
musher0


Joined: 04 Jan 2009
Posts: 4231
Location: Gatineau (Qc), Canada

PostPosted: Sun 14 Oct 2012, 02:37    Post_subject:  Conversion d'un menu icewm en menu pekwm
Sub_title: Script commode pour "verser" dans pekwm un menu icewm personnalisé
 

Bonsoir, m'sieurs-dames !

C'est tout simple, une fois qu'on sait comment faire ! Razz Il suffisait d'y penser ! Very Happy

La conversion se fait très rapidement, vu que les menus d'icewm et de pekwm sont grosso modo au format texte.

J'ai beaucoup commenté mon script. S.v.p lisez-en les commentaires Il est inutile que je me répète dans le corps du message.

Note: 2e mouture, améliorée, 14 oct. 2012.

Code:
#!/bin/sh
# Emplacement et nom du script :
# ~/my-applications/bin/ice2pek.sh
#
# Dépendance : replaceit
# But : composer un menu pekwm à partir d'un menu icewm
#   déjà personalisé, pour s'éviter de recommencer de zéro.
# Suggestion :  Si vous n'avez pas personnalisé votre menu icewm, le
#   mettre à jour en tapant "fixmenus" avant de lancer le présent script.
# musher0, 13 oct. 2012
####

## variable initiale
R="replaceit --input=GrandBout.txt"

# cd ~/.icewm # OU
cd ~/.lxp-icewm # selon la variante d'icewm que vous avez.

## Pour ne pas altérer le menu d'icewm ou de lxp-icewm.
cp -f toolbar.moi GrandBout.txt # OU
# cp -f toolbar GrandBout.txt # OU
# cp -f menu GrandBout.txt
## À vous de choisir quel menu doit être converti.

## Effacer les lignes "wine" trop complexes et les lignes de remarques.
$R --wholeline WINEPREFIX " "
$R --wholeline "#" " "

# Traitement de tout le reste
$R "\" " "\" \""
$R .xpm .xpm\"
$R .png .png\"
$R .jpg .jpg\"
$R .jpeg .jpg\"
# $R .ico .ico\" # Petit "en-cas".
$R " \{" "\" \{"
$R "app " "app\" " # Pour ne pas toucher à "my-applications"
# $R folder folder\" # Non. Changer la "syntaxe" de cet icône associé aux
# sous-menus de icewm fausse l'interprétation des lignes marquées "menu".
$R "\" " "\";"
$R " \"" ";\""
$R ";;" ;
$R "\" " "\";"
cut -d\; -f1,2,4 GrandBout.txt > GrandBout.nvo

## La sous-routine qui suit prévient le problème de l'ajout de
## caractères en fin de ligne dans le menu pekwm.

echo > GrandBout.mod # crée un autre fichier de travail
while read line ; do
   echo "$line -fin" >> GrandBout.mod
done < GrandBout.nvo

## 2e variable
unset R
R="replaceit --input=GrandBout.mod"
$R "prog;" "Entry = "
$R "\";" "\" { Actions = \"Exec "
$R "-fin" "&\" }"

# On a marqué plus haut la fin de ligne EOL, mais il faut
# remettre la valeur originale des lignes "menu",
$R "\" &\" }" "\" {"
$R "{ Actions = \"Exec { &\" }" {

# et des "accolades fermantes" de fin de sous-menu.
$R "} &\" }" }
$R " &\" }" " " "-Entry"

# Puis reconvertir les lignes "menu"...
$R "menu;" "Submenu = "

# ... et les lignes de séparation au format du menu pekwm.
$R separator "Separator {}"
$R "separator &\" }" "Separator {}" # au cas où
$R "separator}" "Separator {}" # (bis) :-)

echo >> GrandBout.mod # Ligne vide pour clore.

### cat GrandBout.mod >> ~/.pekwm/menu
# Une fois la conversion terminée, rabouter ce "GrandBout.mod"
# au menu pekwm existant. Si vous voulez l'avoir à cet
# endroit, enlever les dièzes à la ligne 78.

# Cela dit, une conversion de menu automatisée est rarement parfaite. Je
# vous suggère plutôt de faire la concaténation dans un 2e temps, à la
# main, avec votre éditeur, et de corriger à mesure que vous mettez le
# menu résultant à l'essai dans pekwm.

rm GrandBout.nvo # On nettoie les fichiers de travail.
### rm GrandBout.mod # Attention ! Effacez seulement si
### vous l'avez concaténé au menu pekwm !

# cp -f GrandBout.cdr GrandBout.txt
# Réactive copie de réserve. Pour édition du script.


La "dépendance" replaceit est jointe.

Dans notre forum, à propos de pekwm :
http://murga-linux.com/puppy/viewtopic.php?search_id=1319560485&t=14919
http://murga-linux.com/puppy/viewtopic.php?search_id=1895465000&t=81062
http://murga-linux.com/puppy/viewtopic.php?search_id=1895465000&t=80137

À propos de lxp-icewm :
http://murga-linux.com/puppy/viewtopic.php?search_id=1895465000&t=77595

Sites externes :
https://www.pekwm.org/projects/pekwm
http://www.icewm.org/
http://lxp.sourceforge.net/

Meilleures salutations.
replaceit.tar.gz
Description 
gz

 Download 
Filename  replaceit.tar.gz 
Filesize  3.62 KB 
Downloaded  356 Time(s) 

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send_private_message Visit_website 
Pelo


Joined: 10 Sep 2011
Posts: 3036
Location: Mer méditerrannée (1 kms°)

PostPosted: Fri 23 Nov 2012, 22:24    Post_subject: Je suis perdu
Sub_title: je suis sur fluxbox528 niteflux
 

Bonjour Musher0. Désolé pour t'avoir Appelé Médor (qui ne mords pas toujours)
Bon, la fusée n'a pas décollé.
Serveur X xwin pekwm : rien de rien.
targz jwm vers pekwm script mis dans my applications
En console j'ai tapé pfixmenus. ça a bidouillé quelquechose.
J'ai restarté x en mettant xwin pekwm, je retourne sur JWM apparamment.
Ne bouges pas pour l'instant, je vais relire tes instructions. Là j'arrête.
Bonne journée.
Back to top
View user's profile Send_private_message YIM 
musher0


Joined: 04 Jan 2009
Posts: 4231
Location: Gatineau (Qc), Canada

PostPosted: Sat 24 Nov 2012, 01:15    Post_subject:  

Bonsoir, pelo !

Attention, c'est un script qui convertit de icewm à pekwm, pas de jwm à pekwm. Ensuite, si t'as un menu icewm normal, c.-à-d. non modifié, c'est pas la peine d'utiliser le script ci-dessus, ça ne t'apportera rien. T'es mieux d'utiliser le "générateur" ordinaire du menu pekwm décrit sur le fil pekwm.

A+

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send_private_message Visit_website 
Display_posts:   Sort by:   
Page 1 of 1 Posts_count  
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
 Forum index » House Training » Users ( For the regulars ) » Pour les francophones
Jump to:  

Rules_post_cannot
Rules_reply_cannot
Rules_edit_cannot
Rules_delete_cannot
Rules_vote_cannot
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0593s ][ Queries: 13 (0.0055s) ][ GZIP on ]