Créer un navigateur de fichiers pour Thunar avec Zenity

Cet article a été publié il y a longtemps dans mon ancien blog sur Xfce, basé sur un autre article publié dans le Blog Xubuntu et je les laisse encore ici.

Ce que nous allons faire, c'est créer une recherche de fichiers pour Thunar à l'aide Zenité. La première chose à faire est d'installer zenity:

$ sudo aptitude install zenity

Ensuite, nous ouvrons un terminal et mettons:

$ mkdir ~/.bash-scripts/

De cette façon, nous créons un répertoire qui contiendra le script qui exécutera l'action elle-même. Maintenant, nous créons un fichier appelé recherche de fichiers à l'intérieur comme suit:

mousepad ~/.bash-scripts/search-for-files

et nous collons ceci à l'intérieur:

#! / bin / bash # search-for-files # changez ce chiffre pour vous convenir - je trouve que zenity meurt à partir d'environ 1000 résultats mais YMMV maxresults = 500 # encore une fois, changez le chemin de l'icône en fonction de vous-même. Mais qui n'aime pas le tango? window_icon = "/ usr / share / icons / Tango / scalable / actions / search.svg" # ce script fonctionnera pour n'importe quel environnement qui a bash et zenity, donc le gestionnaire de fichiers est entièrement à vous! vous pouvez ajouter des arguments supplémentaires à la chaîne tant que le dernier argument est le chemin du dossier que vous ouvrez filemanager = "thunar" window_title = "Search for Files" srcPath = "$ *" if! [-d "$ srcPath"]; then cd ~ / srcPath = `zenity --file-selection --directory --title =" $ window_title - Regardez dans le dossier "--window-icon =" $ window_icon "` fi if [-d "$ srcPath"] ; then fragment = `zenity --entry --title =" $ window_title - Le nom contient: "--window-icon =" $ window_icon "--text =" Les chaînes de recherche de moins de 2 caractères sont ignorées "` if! [$ {# fragment} -lt 2]; then (echo 10 O = $ IFS IFS = $ '\ n' files = (`find" $ srcPath "-iname" * $ fragment * "-printf \"% Y \ "\ \"% f \ "\ \" % k \ KB \ "\ \"% t \ "\ \"% h \ "\\\ n | head -n $ maxresults`) IFS = $ O echo 100 selected =` eval zenity --list --title = \ "$ {# files [@]} Fichiers trouvés - $ window_title \" --window-icon = "$ window_icon" --width = "600" --height = "400" --text = \ "Résultats de la recherche : \ "--print-column = 5 --column \" Type \ "--column \" Name \ "--column \" Size \ "--column \" Date de modification \ "--column \" Path \ "$ {files [@]}` if [-e "$ selected"]; then "$ filemanager" "$ selected"; fi) | zenity --progress --auto-close --pulsate --title = "Recherche ..." --window-icon = "$ window_icon" --text = "Recherche de \" $ fragment \ "" fi fi exit

et nous lui donnons des autorisations d'exécution:

chmod a+x ~/.bash-scripts/search-for-files

Maintenant, nous faisons une sauvegarde du fichier uca.xml:

$ sudo cp /etc/xdg/Thunar/uca.xml /etc/xdg/Thunar/uca.xml.old

auquel nous mettrons à la fin ceci:

<action>
<icon>/usr/share/icons/Tango/scalable/actions/search.svg</icon>
<name>Search for Files</name>
<command>bash ~/.bash-scripts/search-for-files %f</command>
<description>Search this folder for files</description>
<patterns>*</patterns>
<directories/>
</action>

Maintenant, il ne nous reste plus qu'à ouvrir Thunar » Éditer » Configurer des actions personnalisées et nous en créons un nouveau. Et nous remplissons les champs suivants:

Cliquez sur l'onglet Basique:
Nom: Rechercher
Description: Rechercher
Commande: bash ~ / .bash-scripts / recherche-de-fichiers% f
Icône: nous sélectionnons celui que nous aimons le plus.

Restant de cette manière:

Maintenant dans l'onglet Conditions apparence les champs suivants:
Modèle de fichier: *
Apparaît si la sélection contient: Annuaire.

Et ça ressemble à ça:

maintenant Thunar lorsque nous ouvrons le menu avec le clic droit, l'option de recherche n'apparaît pas:

Et si nous cliquons dessus, une fenêtre apparaîtra où nous pourrons insérer les critères de recherche:

Lorsque nous commencerons la recherche, nous verrons quelque chose comme ceci:

et enfin le résultat:

Si nous double-cliquons sur le résultat, une fenêtre de Thunar avec le dossier où se trouve le fichier. De cette façon, nous donnons à notre bureau beaucoup plus de puissance Xfce.