Mes Nautilus-scripts

Il s'agit du programme gmplayer installé par le paquet mplayer-gui :

  • Allez dans le dossier des scripts nautilus
  • Créez-y le fichier gmplayerit ou mplayerit, au choix
  • Rendez le exécutable, pour ne pas avoir à le faire après
  • Éditez-le et copiez-collez-y le code suivant
#!/bin/bash
# gmplayer == reglages independants de mplayer et de gnome-player
# gmplayer donne un volume zero par defaut : modifier le fichier skin de configuration pour l'option hpotmeter de 0 à 100
gmplayer "$@"
Comme dit dans le commentaire du script, il faut modifier le fichier skin de configuration en ne laissant aucune ligne desactivée ou commentée

Exemple de configuration avec la skin Clearplayer

  • Installez si besoin le paquet mplayer-skins
  • Copiez dans votre dossier personnel la skin Clearplayer
cp -R /usr/share/mplayer/skins/clearplayer $HOME/.mplayer/skins/

La skin de configuration Clearplayer se présente ainsi :

section = movieplayer

 window = main

  decoration = enable
  base       = main, 0, 0

  button     = button_prev,      2,  48, 39,  42, evPrev
  button     = button_rewind,   38,  48, 39,  42, evBackward10sec
  button     = button_pause,    74,  48, 39,  42, evPause
  button     = button_play,    110,  48, 39,  42, evPlay
  button     = button_stop,    146,  48, 39,  42, evStop
  button     = button_forward, 182,  48, 39,  42, evForward10sec
  button     = button_next,    218,  48, 39,  42, evNext
  button     = button_load,    254,  48, 39,  42, evLoad

  button     = mute,           304,  62, 10,  17, evMute

  potmeter   = waves, 11,  0,  315,  63,  6,  14, evSetVolume

  hpotmeter  = pos,   27, 15, NULL, 100,  0,  40, 30, 336, 15, evSetMoviePosition
  hpotmeter  = vol,   18, 14, NULL, 100,  0, 331, 64,  45, 14, evSetVolume

  font       = font, font

  dlabel     = 6, 10, 367, 0, font, "$o "
  dlabel     = 6, 31,  40, 0, font, "Time:"
  dlabel     = 6, 98, 152, 0, font, "$1 / $6"

 end

 window      = sub

  base       = sub,  -1,  -1
  background = 246, 246, 246

 end

end

Les lignes à modifier :

  • supprimer absolument potmeter = waves, 11, 0, 315, 63, 6, 14, evSetVolume.
  • modifier la valeur 0 dans la ligne hpotmeter = vol, 18, 14, NULL, 100, 0, 331, 64, 45, 14, evSetVolume , c'est une valeur en pourcentage, donnez-lui un incrément de 10, 20, 30 … 100.
  • modifier absolument la ligne window = sub en window = video

La skin de configuration correcte :

section = movieplayer

 window = main

  decoration = enable
  base       = main, 0, 0

  button     = button_prev,      2,  48, 39,  42, evPrev
  button     = button_rewind,   38,  48, 39,  42, evBackward10sec
  button     = button_pause,    74,  48, 39,  42, evPause
  button     = button_play,    110,  48, 39,  42, evPlay
  button     = button_stop,    146,  48, 39,  42, evStop
  button     = button_forward, 182,  48, 39,  42, evForward10sec
  button     = button_next,    218,  48, 39,  42, evNext
  button     = button_load,    254,  48, 39,  42, evLoad

  button     = mute,           304,  62, 10,  17, evMute

  hpotmeter  = pos,   27, 15, NULL, 100,  0,  40, 30, 336, 15, evSetMoviePosition
  hpotmeter  = vol,   18, 14, NULL, 100,  90, 331, 64,  45, 14, evSetVolume

  font       = font, font

  dlabel     = 6, 10, 367, 0, font, "$o "
  dlabel     = 6, 31,  40, 0, font, "Time:"
  dlabel     = 6, 98, 152, 0, font, "$1 / $6"

 end

 window      = video

  base       = sub,  -1,  -1
  background = 246, 246, 246

 end

end
Sélectionnez la skin Clearplayer dans le skin-browser de mplayer si vous ne l'avez pas déja fait.

→ Plus d'infos chez Ask Ubuntu Default audio volume with gmplayer

  • Installez le paquet pyrenamer
  • Allez dans le dossier des scripts nautilus
  • Créez-y le fichier pyrenamit ou pyrenamall, au choix
  • Rendez le exécutable, pour ne pas avoir à le faire après
  • Éditez-le et copiez-collez-y le code suivant
#!/bin/bash
#
# Lance l'application Pyrenamer
# dans le dossier selectionné
# ou dans le dossier du fichier selectionné.
#
# Nautilus Script "Renommer en masse" #
#
# **************************************************************
# NB :
# Il semble qu'il y ait un bug entre bash, gtk, python
# depuis Ubuntu Xenial :
# - si le script lance directement la commande "pyrenamer"
# - le passage de l'argument $wdir ne se fait pas.
# Résolu temporairement avec la commande "bash -c"
#
# # après une certaine mise à jour proche
# #  d'un nouveau noyau, le passage d'argument
# #  à pyrenamer fonctionne de nouveau sans utiliser
# # la commande : bash -c → pyrenamer "$wdir"
# *******************************************************************
#
# Debut de programme
#
# Si l'argument $1 est vide :
# - le clic droit ne sélectionne ni dossier ni fichier
# - comportement plus valide avec xenial
# - pyrenamer s'ouvre par défaut dans $HOME
# - on fait ouvrir pyrenamer dans le dossier courant du clic "vide"
#
if [ "$1" = "" ];then
    wdir=${NAUTILUS_SCRIPT_CURRENT_URI#file://}
    else
#
# L'argument $1 n'est pas vide :
# - le clic droit sélectione un dossier ou un fichier
# - la variable filetype enregistre le type de l'argument
# - avec seulement la note "directory" ou "file"
#
    filetype=$(file "$1")
    filetype=${filetype##*: }
#
# La variable filetype enregistre le type "directory" :
# - le chemin de l'argument sélectionné est reconstitué
# - avec la localisation complète et courante du dossier sélectionné
# - et de son nom, débarrassé de la notation shell "file://"
#
    if [ "$filetype" = "directory" ];then
#  #wdir="${NAUTILUS_SCRIPT_CURRENT_URI#file://}/$1"
## je me suis rendu compte que puisque $1 etait un dossier,
## on pouvait directementl'utiliser comme argument
    wdir="$1"
    else
#
# La variable filetype enregistre le type "file" :
# - le chemin de l'argument sélectionné est reconstitué
# - avec seulement la localisation complète et courante du fichier sélectiionné
# - débarrassé de la notation shell "file://"
#
##  #wdir=${NAUTILUS_SCRIPT_CURRENT_URI#file://}
##
##  je me suis rendu compte que c'était la variable de zenity
##  qui n'encodait pas les caractères accentués.
##  la commande : pwd permet d'associer le chemin directement
    wdir=$(pwd "$1")
    fi
fi
#
# Pour tout contenu de localisation complète
# pour le dossier de travail ou d'exécution (wdir = working directory)
# la variable $wdir est  débarrassée de la notation shell du symbole "espace"
# tous les échappements shell %20 deviennent des espaces " "
#
##wdir=${wdir//%20/ }
## comme le passage d'argument n'utilise plus aucune variable zenity,
## la problematique de non encodage des espaces et des caractères accentués
## disparaît !
#
# Le contenu de la variable $wdir
# avec ses espaces et ses caractères accentués
# est protégé par des guillemets
#
# Pour parer au bug de passage des arguments,
# le script lance "pyrenamer" en console avec bash :
# bash est lancé et exécute pyrenamer avec l'argument $wdir
# entre guillemets.
#
# Insérer cette ligne de code zenity,
# pour montrer que l'argument $wdir
# sera utilisé correctement avec espaces
# et caractères accentués.
# zenity --info --text="pyrenamer '$wdir'"
##bash -c "pyrenamer '$wdir'"
## comme rajouté dans les commentaires
## du début de script, le passage d'argument
## fonctionne en appelant directement le
## programme.
pyrenamer "$wdir"

Explications de code

  • le script vérifie le chemin d'execution du script pyrenamit
  • le chemin est vide, le script lui assigne le dossier courant d'execution …
  • le chemin n'est pas vide, le script vérifie si c'est un fichier ou un dossier
  • si c'est un dossier, le script lancera pyrenamer avec le nom du dossier selectionné et son chemin complet
  • si c'est un fichier, le script lancera pyrenamer avec le dossier contenant le fichier selectionné
  • le script prend en compte les espaces et les caracteres accentués

Lire les commentaires du code

  • utilisateurs/j5012/brouillons/mes_nautilus_scripts.txt
  • Dernière modification: Le 10/03/2021, 13:20
  • par J5012