J'installe autojump par brew, lance la commande
$ brew install autojump
Mais, il y a un problème avec moi. Premièrement, je ne peux exécuter que la commande autojump
, le j
n'est pas trouvé lorsque je l'exécute. Ensuite, je lance autojump -a ~/code
, renvoie le message d'erreur :
File "/usr/local/bin/autojump", line 176, in save
temp = NamedTemporaryFile(dir = CONFIG_DIR, delete = False)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tempfile.py", line 447, in NamedTemporaryFile
(fd, name) = _mkstemp_inner(dir, prefix, suffix, flags)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tempfile.py", line 228, in _mkstemp_inner
fd = _os.open(file, flags, 0600)
OSError: [Errno 2] No such file or directory: '/Users/eward/.local/share/autojump/tmprYDreK
/Users/eward est mon répertoire d'accueil. Je pense que le problème est que le fichier tmp n'est pas accessible en écriture, donc je crée le répertoire ~/.local/share/autojump
pour autojump. Maintenant, l'autojump --add est ok, mais j n'est pas disponible.
Ensuite, à partir du numéro 178, je découvre que mon .zshrc devrait inclure le fichier etc d'autojump, et je l'ajoute à mon fichier .zshrc
source $HOME/homebrew/Cellar/autojump/21.1.2/etc/autojump.zsh
Enfin, l'autojump c'est du travail, mais, je ne sais pas, si tant d'ennuis sont à cause de quoi. Peut-être qu'il y a un bug ou que quelqu'un rencontre le même problème avec moi. J'espère que cela peut être utile.
zsh est-il votre shell par défaut ? J'ai eu un problème où autojump ne fonctionnait pas correctement car bash était mon shell par défaut mais j'utilisais zsh. Qu'obtenez-vous lorsque vous exécutez echo $SHELL
?
oui, zsh est le shell par défaut.
$ echo $SHELL
/bin/zsh
Essayez d'ajouter ceci à votre .zshrc :
[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh
Avoir le même problème. Étrangement, j'ai modifié mon shell par défaut en utilisant chsh -s /bin/zsh
qui me connecte avec succès à une nouvelle session zsh lorsque j'ouvre Terminal, mais lorsque j'exécute echo $SHELL
il affiche /bin/bash
.
La formule Homebrew a été mise à jour récemment, pouvez-vous réinstaller et voir si vous rencontrez les mêmes problèmes ?
La réinstallation est bonne, pas de problème, merci.
En fait, j'ai aussi ce problème... zsh est la valeur par défaut, 'autojump' fonctionne alors que 'j' n'est pas trouvé. Juste mis à jour et installé en vain. Le complément .zshrc donne :
saut automatique : répertoire '' introuvable
Essayez autojump --help
pour plus d'informations.
J'ai le même problème avec maxwerr.
/bin/zsh
et j'ajoute ceci sur mon .zshrc :
[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh
quand j'appelle :
autojump: directory '' not found
Try `autojump --help` for more information.
J'ai l'autojump depuis longtemps et cela a toujours bien fonctionné. Je viens de faire une énorme mise à jour de tous les trucs homebrew et ça s'est cassé de la manière décrite ci-dessus. J'ai creusé dans le \
brew --prefix /etc/
pour trouver qu'au lieu d'un exécutable générique ( autojump
), il y a maintenant des exécutables pour chaque type de shell ( autojump.sh
, autojump.zsh
, autojump.fish
, autojump.bash
). Une fois que j'ai mis à jour la ligne de configuration dans mon fichier .zshrc (comme d'autres l'ont mentionné ci-dessus), cela a très bien fonctionné :
[[ -s `brew --prefix`/etc/autojump.zsh ]] && . `brew --prefix`/etc/autojump.zsh
L'astuce consistait à utiliser celui de zsh puisque j'utilise zsh comme shell par défaut. Je me rends compte que ce problème est clos, mais j'espère que cela aidera tous ceux qui rencontrent ce problème.
Juste pour clarifier, il y a toujours eu plusieurs fichiers shell wrapper ( autojump.bash
, autojump.zsh
, etc). Cependant, autojump.sh
est censé déterminer intelligemment le shell que vous utilisez réellement et charger le bon fichier.
@jbranchaud : Le comportement de autojump.sh
a changé relativement récemment. Si vous ne parvenez pas à charger correctement avec autojump.sh
, pourriez-vous ouvrir un ticket avec la version d'autojump que vous utilisez ?
Essayez d'ajouter ceci à votre .zshrc :
[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh
celui-ci l'a résolu pour moi. Mojave, zsh 5.3, saut automatique 22.5.3
Commentaire le plus utile
Essayez d'ajouter ceci à votre .zshrc :