Eu instalo o autojump pelo brew, executo o comando
$ brew install autojump
Mas, há algum problema comigo. Primeiro, só posso executar o comando autojump
, o j
não é encontrado quando o executo. Então, eu executo autojump -a ~/code
, mensagem de erro de retorno:
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
/ Usuários / eward é meu diretório inicial. Acho que o problema é que o arquivo tmp não é gravável, então crio o dir ~/.local/share/autojump
para autojump. Agora, o autojump --add está ok, mas j não está disponível.
Então, a partir da edição nº 178, descobri que meu .zshrc deve incluir o arquivo etc. do autojump, e eu o adiciono ao meu arquivo .zshrc
source $HOME/homebrew/Cellar/autojump/21.1.2/etc/autojump.zsh
Final, autojump é trabalho, mas, não sei, se tanto problema é por causa de quê. Pode ser, há um bug ou alguém pode ter o mesmo problema comigo. Espero que isso possa ser útil.
O zsh é seu shell padrão? Tive um problema em que o autojump não funcionava corretamente porque bash era meu shell padrão, mas estava usando zsh. O que você ganha quando executa echo $SHELL
?
sim, zsh é o shell padrão.
$ echo $SHELL
/bin/zsh
Tente adicionar isso ao seu .zshrc:
[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh
Tendo o mesmo problema. Estranhamente, mudei meu shell padrão usando chsh -s /bin/zsh
que me loga com sucesso em uma nova sessão zsh quando eu abro o Terminal, mas quando eu executo echo $SHELL
ele mostra /bin/bash
.
A fórmula do Homebrew foi atualizada recentemente, vocês podem reinstalar e ver se estão tendo os mesmos problemas?
Reinstalar está bem, sem problemas, obrigado.
Na verdade, também estou tendo esse problema ... zsh é o padrão, 'autojump' funciona, enquanto 'j' não é encontrado. Apenas atualizado e instalado sem sucesso. .zshrc add-in resulta em:
autojump: diretório '' não encontrado
Experimente autojump --help
para obter mais informações.
Tenho o mesmo problema com maxwerr.
/bin/zsh
e adiciono isso ao meu .zshrc:
[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh
quando ligar j:
autojump: directory '' not found
Try `autojump --help` for more information.
Eu tive autojump por um longo tempo e sempre funcionou bem. Acabei de fazer uma grande atualização de todas as coisas do homebrew e quebrou da maneira que está sendo descrita acima. Eu cavei no \
brew --prefix /etc/
para descobrir que em vez de um executável genérico ( autojump
), agora existem executáveis para cada tipo de shell ( autojump.sh
, autojump.zsh
, autojump.fish
, autojump.bash
). Depois de atualizar a linha de configuração em meu arquivo .zshrc (como outros mencionaram acima), funcionou muito bem:
[[ -s `brew --prefix`/etc/autojump.zsh ]] && . `brew --prefix`/etc/autojump.zsh
O truque era usar o zsh, pois estou usando o zsh como meu shell padrão. Sei que este problema está resolvido, mas espero que isso ajude quem se depara com este problema.
Só para esclarecer, sempre houve vários arquivos de shell de invólucro ( autojump.bash
, autojump.zsh
, etc). No entanto, autojump.sh
deve descobrir de forma inteligente qual shell você está realmente usando e carregar o arquivo correto.
@jbranchaud : O comportamento de autojump.sh
mudou relativamente recentemente. Se você não consegue carregar corretamente com autojump.sh
, você poderia abrir um tíquete com a versão do autojump que está usando?
Tente adicionar isso ao seu .zshrc:
[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh
este resolveu para mim. Mojave, zsh 5.3, autojump 22.5.3
Comentários muito úteis
Tente adicionar isso ao seu .zshrc: