J'ai trouvé un nautilus script que je voudrais utiliser. Comment puis-je l'installer ?
Réponse
Trop de publicités?Disons que vous voulez installer le script suivant que vous avez trouvé en naviguant sur Ask Ubuntu :
#!/bin/bash
## Sample Script 0.1
## Dependencies: notify-osd
notify-send "Sample nautilus script" "You Selected $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"
Dépendances
La première chose que vous remarquerez est que de nombreux scripts ne s'exécutent pas d'emblée. Parfois, ils dépendent d'autres paquets que vous pourriez ou non avoir installés. Dans ce cas, notre scripts dépend de notify-osd
qui est livré par défaut avec Ubuntu.
Sur d'autres distros, cela peut ne pas être le cas et vous devrez installer les dépendances avant d'utiliser le script. Si la dépendance fait partie des dépôts officiels, vous pouvez facilement l'installer avec apt-get
par exemple :
sudo apt-get install notify-osd
Mise en place du script
Maintenant que nous avons satisfait à toutes les dépendances, nous pouvons passer à autre chose et copier le script sur notre système. Pour ce faire, nous créons d'abord un nouveau document dans notre dossier script, à savoir ~/.gnome2/nautilus-scripts
または ~/.local/share/nautilus/scripts/
sur Ubuntu 13.04 et plus. Il s'agit d'un dossier caché. Pour y accéder, vous devez ouvrir votre gestionnaire de fichiers, appuyer sur CTRL + L et collez le chemin du répertoire dans la barre d'emplacement.
Ensuite, nous allons créer un nouveau document vide en faisant un clic droit et en sélectionnant Créer un nouveau document Document vide . Donnez-lui le nom que vous voulez, mais faites attention : Le titre que vous choisissez est la façon dont l'entrée script apparaîtra plus tard dans le menu contextuel de nautilus. Il vaut donc mieux choisir un nom descriptif pour le document :
Ouvrez le nouveau document dans un éditeur de texte de votre choix et copiez et collez-y le contenu de la zone de code ci-dessus. Sauvegardez-le et quittez l'éditeur de texte.
Le rendre exécutable
A ce stade, votre script est configuré correctement mais ne fonctionnera toujours pas car le système ne le reconnaît pas encore comme un fichier exécutable. Pour le rendre exécutable, faites un clic droit sur votre fichier et allez à Propriétés Permissions . Cochez la case à Autoriser l'exécution en tant que programme et fermer le dialogue :
Utilisation
Vous devriez maintenant être en mesure d'accéder au script à partir du menu contextuel de votre nautilus. Il suffit de cliquer avec le bouton droit de la souris sur un fichier de votre choix et de vous rendre à l'adresse suivante scripts --> script (ici : Exemple de script ). Cliquez sur l'entrée pour exécuter le script sur les fichiers que vous avez sélectionnés :
Attribution d'un raccourci clavier au script.
Les raccourcis clavier pour Nautilus scripts peuvent être assignés en éditant le fichier d'accélérateur de clavier de Nautilus. Sur Ubuntu 12.04 et inférieur, ce fichier peut être trouvé sous ~/.gnome2/accels/nautilus
. Sur les versions plus récentes, ce fichier a été déplacé vers ~/.config/nautilus/accels
. Veuillez noter que votre script n'apparaîtra dans le fichier accélérateur qu'après avoir redémarré Nautilus (exécuter nautilus -q
puis relancez Nautilus en cliquant sur son lanceur).
La syntaxe du fichier accélérateur peut sembler un peu compliquée au premier abord, mais elle est en fait assez simple. Jetez un coup d'œil à cet extrait, par exemple :
; (gtk_accel_path "<Actions>/ShellActions/ZoomInAccel2" "<Primary>KP_Add")
; (gtk_accel_path "<Actions>/ShellActions/TabsNext" "<Primary>Page_Down")
; (gtk_accel_path "<Actions>/ScriptsGroup/script_file:\\s\\s\\shome\\sglutanimate\\s.gnome2\\snautilus-scripts\\sSample%20script" "")
; (gtk_accel_path "<Actions>/ShellActions/Search" "<Primary>f")
; (gtk_accel_path "<Actions>/ShellActions/Forward" "<Alt>Right")
Chaque ligne représente une seule affectation de touche. Le premier segment entre guillemets désigne l'action, le second la combinaison de touches attribuée. Les lignes commençant par un point-virgule sont commentées et actuellement inactives.
Afin d'attribuer un raccourci à votre script, vous devrez rechercher dans ce fichier le nom du script et décommenter la ligne correspondante en supprimant le point-virgule. Procédez ensuite à la saisie du raccourci clavier que vous souhaitez attribuer.
Voici les modificateurs disponibles et leurs codes clés correspondants :
-
CTRL =
<Primary>
-
ALT =
<Alt>
-
SHIFT =
<Shift>
Vous pouvez trouver des codes clés valides pour toutes les autres clés en en utilisant xev .
Voici comment vous devriez modifier la section ci-dessus pour assigner votre exemple de script à ALT + SHIFT + S :
; (gtk_accel_path "<Actions>/ShellActions/ZoomInAccel2" "<Primary>KP_Add")
; (gtk_accel_path "<Actions>/ShellActions/TabsNext" "<Primary>Page_Down")
(gtk_accel_path "<Actions>/ScriptsGroup/script_file:\\s\\s\\shome\\sglutanimate\\s.gnome2\\snautilus-scripts\\sSample%20script" "<Alt><Shift>s")
; (gtk_accel_path "<Actions>/ShellActions/Search" "<Primary>f")
; (gtk_accel_path "<Actions>/ShellActions/Forward" "<Alt>Right")
Sous Ubuntu 12.04 (et peut-être aussi les versions ultérieures), Nautilus écrase parfois le fichier de l'accélérateur avant que vous puissiez effectuer des modifications. C'est donc une bonne idée d'effectuer tous les changements que vous faites pendant que Nautilus n'est pas en cours d'exécution ( nautilus -q
). Dans tous les cas, vous sera doivent redémarrer Nautilus pour voir les changements.
Automatisation de l'installation
Ce Nautilus script installera automatiquement Nautilus script pour vous. Jetez un coup d'œil aux commentaires pour voir ce qui se passe en coulisses :
#!/bin/bash
# AUTHOR: Glutanimate (https://askubuntu.com/users/81372/)
# LICENSE: GNU GPLv3 (http://www.gnu.de/documents/gpl-3.0.en.html)
# NAME: Nautilus Scripts Installer
#
# DESCRIPTION: This script will install Nautilus scripts on Ubuntu 12.04 and above.
# Note: scripts of the same name in the destination folder will be
# overwritten without warning
# general purpose notification function
gui_notify(){
notify-send -i gnome-app-install "Nautilus Scripts Installer" "$1"
}
# check if any files selected
if [[ -z "$@" ]]
then
gui_notify "Error: No files selected."
exit 1
fi
RELEASE="$(lsb_release -r | cut -f2)" # detect Ubuntu release
if [[ "$RELEASE" = "12.04" ]] # set script folder accordingly
then
ScriptFolder="$HOME/.gnome2/nautilus-scripts"
else
ScriptFolder="$HOME/.local/share/nautilus/scripts/"
fi
for Script in "$@"; do
ScriptFilename="${Script##*/}" # get filename via bash string manipulation
cp "$Script" "$ScriptFolder/" # Move script to destination
chmod u+x "$ScriptFolder/$ScriptFilename" # Make it executable for the user
done
gui_notify "The following scripts have been installed: $@"
En passant : Voici le nautilus script J'avais l'habitude d'enregistrer les screencasts de cette réponse.