J'ai publié cet article il y a longtemps sur mon ancien blog consacré à Xfce , en me basant sur un autre article publié sur le blog Xubuntu , et je le partage à nouveau ici.
Nous allons créer un outil de recherche de fichiers pour Thunar à l'aide de Zenity . La première étape consiste à installer Zenity :
$ sudo aptitude install zenity
Ensuite, nous ouvrons un terminal et mettons:
$ mkdir ~/.bash-scripts/
Cela crée un répertoire qui contiendra le script exécutant l'action. Nous créons ensuite un fichier nommé search-for-files à 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>
Il faut maintenant ouvrir Thunar » Édition » Configurer les actions personnalisées et en créer une nouvelle. Ensuite, il faut remplir 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:
Dans Thunar, lorsque l'on ouvre le menu par un 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:
Un double-clic sur le résultat ouvrira une fenêtre Thunar affichant le dossier contenant le fichier. Cela améliore considérablement les performances de notre environnement de bureau Xfce.