Problèmes et questions concernant l'édition XFCE.
Répondre

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#1Messageil y a 6 ans

Tutomaniaque que je suis, je continue sur ma lancée!
Celui-là, je viens de le concevoir. Il permet d'un clic droit sur un fichier.png de l'alléger selon les exigences de Google Page Speed: https://developers.google.com/speed/pag ... hts/?hl=fr donc idéal si vous êtes webmaster.

1. Installer optipng s'il ne l'est pas déjà

$ sudo yaourt -S optipng

2. Action personnalisée (ou Custom Action en Anglais):

Dans Thunar, Edition > Configurer les actions personnalisée

. Nom: "Optimiser ce fichier PNG"
. Commande:

optipng %f -o5 -strip all %f.jpg

. Conditions d'apparition: cocher "fichiers image" et ajouter dans "motif de fichier": *.png;*.PNG
. Valider

Note: le paramètre "-o5" (c'est un "o", pas un zéro) détermine la qualité. "5" est une bonne moyenne.

Si vous préférez faire une sauvegarde de votre fichier d'origine (optipng a paraît-il parfois des ratés), utilisez plutôt cette commande qui va créer d'abord une sauvegarde en *.bak puis l'optimiser:

sh -c "cp -a %f %f.bak && optipng %f -o5 -strip all %f.png"

[EDIT] ATTENTION! Il y a un problème avec ce code alors que ça fonctionne "nickel" avec l'action "optimiser JPG" (la sauvegarde se fait mais pas l'optimisation). Je continue à chercher pourquoi.

Il suffira maintenant de faire un clic droit sur un fichier PNG pour l'optimiser. C'est parfois assez long. Il est cependant conseillé de le sauvegarder avant si c'est une image importante.

Il existe certainement une possibilité pour le faire pour un dossier en entier. J'y penserai.

Image
Dernière modification par Nettlebayil y a 6 ans, modifié au total 4 fois.

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#2Messageil y a 6 ans

Enoorme ! Super merci !

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#3Messageil y a 6 ans

Après test chez moi, j'ai bien le .bak, mais que ce soit en .png ou .jpg, les fichiers ne changent pas de taille.

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#4Messageil y a 6 ans

Oui... Effectivement, il y a un problème incompréhensible pour les PNG. Donc, je n'utilise plus la double commande pour le moment. Par contre pour JPG, ça fonctionne maintenant. Tu devrais refaire ta custom action. Bon, je vérifie quand même, mais j'ai pas trop le temps aujourd'hui.
Confirmé, je viens de vérifier pour JPG, ça fonctionne nickel avec le code corrigé hier. Je vais tout de même recopier le code de ma custom action pour être sûr qu'il n'y a pas d'erreur.

sh -c "cp -b %f %f.bak && jpegoptim %f -m85 --strip-all %f.jpg"

Il faut se méfier, Thunar ne semble pas beaucoup apprécier les commandes avec

sh -c "commande1 && commande2"

...à moins que ça soit moi qui n'ai pas les yeux en face des trous... À surveiller!
Dernière modification par Nettlebayil y a 6 ans, modifié au total 3 fois.

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#5Messageil y a 6 ans

ATTENTION! Il y a un problème... Thunar semble altérer par derrière mon dos la commande multiple :? :

sh -c "cp -b %f %f.bak && jpegoptim %f -m85 --strip-all %f.jpg"

Il n'est donc pas étonnant qu'il y ait des problèmes...
Je vais devoir étudier un script pour arriver à mes fins...

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#6Messageil y a 6 ans

Salut,

As tu essayé sans sh -c ?
J'ai des actions avec deux commandes, mais seulement une utilise %f, pas les deux.

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#7Messageil y a 6 ans

Tu veux dire une autre action personnalisée à double commande? Peux-tu envoyer le code STP?
En principe, si tu lances ta double (ou multiple) commande sans sh -c" ", seule la première commande est effectuée.
C'est pareil avec les lanceurs de "tableau de bord XFCE" (là, c'est certain) et il me semble aussi avec les "tâches planifiées" mais j'en mettrais pas ma main au feu...
Par contre, oui, ça fonctionne bien comme ça dans un terminal (sans sh -c).
Bon, ce serait plus propre de faire un script mais j'ai toujours un peu de difficultés avec ça (mais j'y arrive) et je recule par fainéantise... Je ne suis pas un "barbu linuxien", hein! Donc, les scripts ne sont pas instinctifs chez moi. Mais j'en ai déjà fait plusieurs. Je vais donc m'y atteler dès que j'aurai un peu plus de temps, tout au moins pour alléger les PNG puisque l'autre fonctionne finalement.
Je me demande s'il ne faudrait pas mettre un "sleep" avant la commande pour PNG. Je dis ça comme ça...
Dernière modification par Nettlebayil y a 6 ans, modifié au total 1 fois.

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#8Messageil y a 6 ans

Bonjour.
Faire un script est assez simple, il suffit qu'il commence par #! /bin/bash et de le nommer en .sh , ensuite on enchaîne les commandes et on rend le script exécutable par un simple chmod a+x script.sh.
Idéalement, on les place dans un dossier ~/scripts/. Il n'y a plus qu'a pointer ta commande personnalisée dessus. ./scripts/script.sh

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#9Messageil y a 6 ans

Nettlebay a écrit : il y a 6 ans Tu veux dire une autre action personnalisée à double commande? Peux-tu envoyer le code STP?
Ouverture de fichiers .tap avec l'émulateur d'Oric Atmos, pour fonctionner, l'émulateur doit être lancé du répertoire parent :

cd .. && oricutron -m a -t %f
Pour afficher la liste d'une archive .tar.zst, j'envoie la sortie de commande dans un fichier que j'affiche dans une fenêtre zenity :

tar -I 'zstd -d' -t -f  %f > /tmp/list && zenity --text-info --filename=/tmp/list

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#10Messageil y a 6 ans

Oui... mais bon, je ne crois pas que ça puisse m'aider bcp dans le cas présent. Merci de ton aide.

J'ai essayé avec un script ce matin, sans succès:
/home/user/APPLIS-SCRIPTS/backup-optimiser-png.sh

  #!/bin/bash
   cp -a %f %f.bak
   optipng %f -o5 -strip all %f.png    
   exit 0
    
    
Qu'est-ce qui va pas d'après toi? Qu'est ce que j'ai oublié? (les permissions sont OK)
Je peux le lancer comme ça (dans custom action)? Le point est avant ou après le slash?

/.APPLIS-SCRIPTS/backup-optimiser-png.sh %f

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#11Messageil y a 6 ans

Nettlebay a écrit : il y a 6 ans Oui... mais bon, je ne crois pas que ça puisse m'aider bcp dans le cas présent. Merci de ton aide.

J'ai essayé avec un script ce matin, sans succès:
/home/user/APPLIS-SCRIPTS/backup-optimiser-png.sh

  #!/bin/bash
   cp -a %f %f.bak
   optipng %f -o5 -strip all %f.png    
   exit 0
    
    
Qu'est-ce qui va pas d'après toi? Qu'est ce que j'ai oublié? (les permissions sont OK)
Je peux le lancer comme ça (dans custom action)? Le point est avant ou après le slash?

/.APPLIS-SCRIPTS/backup-optimiser-png.sh %f

Je dirais avant ./

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#12Messageil y a 6 ans

Ben, ça marche pas. Il se passe quelque chose quand je le lance en terminal (évidemment avec des erreurs) mais rien depuis Thunar. :saispas:

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#13Messageil y a 6 ans

salut
Normal, avec un script c'est $1 pour récupérer le premier paramètre et mettre obligatoirement entre " " au cas ou existe un espace dans le nom de fichier. %f est un truc thunar pas bash.
soit :

$HOME/nom_dossier_perso/backup-optimiser-png.sh "%f"
dans backup-optimiser-png.sh

...
cp -a "$1" "$1.bak";   optipng "$1" -o5 -strip all "$1.png"  
ps: pas oublier un chmod pour le script

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#14Messageil y a 6 ans

Merci! Je vais étudier ça de près...

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#15Messageil y a 6 ans

As tu essayé en ne mélangeant pas les variables ?

cp -b %f %n.bak && jpegoptim %f -m85 --strip-all %n.jpg

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#16Messageil y a 6 ans

Smurf, t'es en Métropole? Il est au moins 26 h 20 chez toi. Faut te reposer! (bon, j'ai connu ça aussi)
Je vais voir demain si j'ai le temps d'étudier ça.
Demain, je vais faire un vue isométrique de ma défunte cuisine (ouragan Irma) pour en refaire une autre. Dur, car si c'est (un peu) mon ancien boulot, j'ai quand même quelque peu perdu la main. Donc, pas trop de temps demain. Ça va être hard... (+ un enterrement! :desole: ).

TUTO | Action personnalisée de Thunar: Alléger/optimiser un fichier image PNG

#17Messageil y a 6 ans

Tu as mal calculé, c'était vers minuit. :sourire:
Répondre