web-dev-qa-db-fra.com

Exécuter le script depuis la configuration i3

J'utilise i3-wm et Mod3 fonctionne comme raccourci clavier. J'ai le texte suivant dans './config/i3/config':

#This command works
  bindsym Mod3+f exec "firefox" 

#This doesn't work nor do my other scripts
  bindsym Mod3+w exec "openBrowser" 

Ces deux commandes fonctionnent correctement lorsque je les lance à partir de bash mais seule la commande 'firefox' est exécutée avec le raccourci clavier.

openBrowser est un script dans/opt/bin/qui se trouve sur mon chemin. Aussi essayé de faire exec "/opt/bin/openBrowser"

Remarque: j'ai également remarqué que lorsque je suis en mode bash si je fais Mod3 +, mon curseur clignote, où, comme si je fais Mod3 + [toute touche non définie], la touche écrit sa valeur à l'écran. Il semble donc que le système essaie au moins d’exécuter la fonction.

2
Philip Kirkbride

Apparemment, i3 utilise sh pour lancer des commandes et ne source pas $PATH à partir de ~/.bashrc:

cat ~/.xsession-errors
(...)
/bin/sh: 1: mycommand: not found

Donc, créez simplement un fichier ~/.xsessionrc et mettez-y quelque chose comme ceci:

if [ -d "/opt/bin" ] ; then
    PATH="/opt/bin:$PATH"
fi

Puis déconnectez-vous et revenez dans; Cela devrait fonctionner maintenant.

2
yPhil