22
0
Fork 0

HowtoDmenu: ajouter exemples

This commit is contained in:
Alexis Ben Miloud--Josselin 2023-01-17 12:31:31 +01:00
parent 5d23cfce65
commit 71c8d4974f
1 changed files with 25 additions and 10 deletions

View File

@ -23,15 +23,6 @@ Le logiciel se trouve dans le paquet `suckless-tools`
## Utilisation
`dmenu` sera invoqué dans une chaîne de _pipes_ :
~~~
$ commande | dmenu | commande
$ dmenu < fichier | commande
$ commande | dmenu > fichier
$ variable=$(commande | dmenu)
~~~
Pour s'entrainer, on peut utiliser cette commande :
~~~
@ -60,13 +51,19 @@ Options couramments utilisées :
> L'espace après les options `-l` et `-p` est nécessaire.
### Exemple : ouvrir des fichiers
~~~
$ find ~/Documents ~/Musiques | dmenu -i -l 22 | xargs xdg-open
~~~
### Exemple : parcourir une hiérarchie de fichiers
Fonction récursive en [Bash]() pour parcourir une hiérarchie de fichiers.
> `dmenu` peut être embarqué dans une fenêtre avec l'option `-w <window_id>`
~~~ { .bash }
~~~
dmenu_browser() {
sel="$(ls -FL | grep '/$' | dmenu -i -l 11 -p "$(pwd)" -w "${WINDOWID}")"
if [[ -d "${sel}" ]]
@ -79,3 +76,21 @@ dmenu_browser() {
}
~~~
### Exemple : exécuter des commandes prédéfinies
Le fichier texte `~/.my_commands` contient :
~~~
xscreensaver-command -lock
xterm -title 'calculator' -e 'bc -l'
xterm -title 'irc' -e 'ssh -t my.host -- screen -r my_irc_session'
xclip -o -sel clip > ~/clipboard_"$(date -Isec)"
~~~
Choisir une commande à exécuter :
~~~
$ dmenu -i -l 11 -p 'run:' < ~/.my_commands | sh
~~~
> On peut _binder_ cette commande sur un raccourci clavier qui va bien dans son gestionnaire de fenêtre.