L'application gedit
est définie comme application par défaut pour les fichiers texte. Supposons que j'ai un script avec des droits d'exécution dans /usr/bin
, comment puis-je configurer ce script pour qu'il soit exécuté lorsque j'ouvre un fichier texte à l'aide de Nautilus ou xdg-open
?
/usr/bin/foo
:
echo "Works!"
gedit $*
Si je fais foo my_text_file
, alors le message Works!
apparaîtra et gedit
s'exécutera. Comment définir ce script foo
pour qu'il soit exécuté comme application par défaut?
La méthode la plus simple consiste à créer un fichier .desktop
pour votre script, puis à en faire l'éditeur de texte par défaut.
Créez un fichier appelé /usr/share/applications/foo.desktop
avec le contenu suivant:
[Desktop Entry]
Name=foo
Exec=/usr/bin/foo.sh %U
Terminal=false
Type=Application
MimeType=text/plain;
Faites-en le programme par défaut pour le type text/plain
:
xdg-mime default foo.desktop "text/plain"
En tant que sale bidouille, vous pouvez également simplement appeler votre script gedit
:
Sudo mv /usr/bin/gedit /usr/bin/gedit.orig
Sudo mv /path/to/yourscript.sh /usr/bin/gedit
Ensuite, faites que votre script appelle l'original:
echo "Works!"
/usr/bin/gedit.original "$@"