Autojump: La saisie semi-automatique dans zsh (avec oh-my-zsh) ne fonctionne pas

Créé le 18 févr. 2015  ·  20Commentaires  ·  Source: wting/autojump

Désolé, s'il me manque quelque chose d'évident, mais j'espère que vous pourrez me dire ce que c'est.

J'ai installé autojump avec brew dans ma configuration de zsh (version 5.0.7) et oh-my-zsh mais je ne semble pas pouvoir utiliser l'onglet autocompletion, à la place, je reçois simplement les fichiers et dossiers du répertoire actuel.

J'ai ajouté la ligne [[ -s $(brew --prefix)/etc/profile.d/autojump.sh ]] && . $(brew --prefix)/etc/profile.d/autojump.sh à mon .zshrc et j'ai également essayé d'activer le plugin autojump fourni avec oh-my-zsh (devrais-je ?). Dans tous les cas, je n'ai pas réussi à faire fonctionner l'achèvement des onglets. Tout le reste fonctionne bien.

Qu'est-ce que je rate? Merci!

Tous les 20 commentaires

Pour moi aussi. TABbing dans le saut automatique ne fait rien ...

La tabulation dans le saut automatique ne fait toujours rien.

+1, je reçois également les fichiers et dossiers du répertoire actuel. Pourquoi ??? J'ai installé autojump avec brew, mais ça ne marche pas

Sous mac, cela ne fonctionne pas ; mais sous ubuntu c'est OK

Ma solution à ce problème est -
1) Exécutez d'abord le zshrc dans le bash, puis changez le SHELL, dites -
$~/.zshrc
$ZSH

À condition que vous ayez suivi les étapes d'installation indiquées ici - https://github.com/robbyrussell/oh-my-zsh/blob/master/README.markdown

PS : Cela a fonctionné sur mac pour moi

FWIW, je suis aussi sur Mac (avec zsh). J'ai eu ce problème il y a un moment, mais il a été résolu pendant un certain temps pour moi.

J'ai le même problème :

image

Pareil ici. Les mises à jour?

Avec oh-my-zsh, la complétion du saut automatique fonctionne.
Sans oh-my-zsh, la complétion ne fonctionne pas.

J'ai installé autojump via homebrew. Je me suis assuré
[ -f /usr/local/etc/profile.d/autojump.sh ] && . /usr/local/etc/profile.d/autojump.sh
est dans mon ~/.zshrc

saut automatique v22.5.3
zsh 5.7.1 (x86_64-apple-darwin19.0)

Je pense avoir trouvé la solution en lisant Moving to zsh
Sans on-my-zsh, j'ai besoin de courir
autoload -Uz compinit && compinit
J'ai également trouvé une commande similaire dans ~/.oh-my-zsh/oh-my-zsh.sh
autoload -U compaudit compinit
Je suppose que l'élément clé est le compinit .

(Si ma solution fonctionne aussi pour vous, veuillez me donner un pouce vers le haut. 😃)

@boyoungzheng votre solution a fonctionné pour moi, sauf qu'elle ajoute un double trait de soulignement ennuyeux ("__") après le texte tapé :

alors:
$ j tmp<tab><tab>

se transforme en:

$ j tmp__

tmp__1__/bla/tmp-something
tmp__2__/bla/another-tmp
...

il y a aussi quelques suggestions identiques, qui ressemblent à un bogue.
mais assez bien pour moi :)

@boyoungzheng votre solution a fonctionné pour moi, sauf qu'elle ajoute un double trait de soulignement ennuyeux ("__") après le texte tapé :

alors:
$ j tmp<tab><tab>

se transforme en:

$ j tmp__

tmp__1__/bla/tmp-something
tmp__2__/bla/another-tmp
...

il y a aussi quelques suggestions identiques, qui ressemblent à un bogue.
mais assez bien pour moi :)

Avez-vous réussi à résoudre ce problème ? J'ai le même problème. La saisie semi-automatique fonctionne mais ne montre que deux traits de soulignement.

@MauritsDescamps non, je n'ai pas réussi à le résoudre.

Quelqu'un a-t-il déjà trouvé une solution à ce problème ? Je suis également coincé avec le problème de Maurits .

Eh bien apparemment c'est une fonctionnalité :

Achèvement de l'onglet ZSH corrigé.

Le comportement de ZSH correspond désormais au comportement de Bash. Cependant, il nécessite le chargement du module compinit. Ajoutez la ligne suivante à ~/.zshrc :

autoload -U compinit ; compini

Pour utiliser le type :

j

Un menu affichant les principales entrées de la base de données s'affiche. Tapez n'importe quel nombre suivi de pour terminer l'entrée.

@shaungrady Intéressant. Ok, j'ai exécuté cela et j'ai reçu quelques avertissements initiaux concernant les répertoires non sécurisés. Cela a été facile à résoudre en exécutant compaudit et en corrigeant les autorisations des répertoires répertoriés.

Le balisage de ce fichier n'est pas correct, j'ai donc dû lire le formulaire RAW du README pour voir ce qu'il disait. Il a dit de taper j suivi de space suivi de 2 tab et d'entrer le numéro auquel vous voulez accéder, mais cela ne fait apparaître que deux traits de soulignement pour moi. Cependant, je peux faire j xTABTAB pour étendre à x__1_foo x__2_bar et entrer 2 pour sauter à bar .

Si c'est le meilleur, il fonctionne bien, mais quelque chose me semble encore un peu bizarre. Merci.

Salut, j'ajoute le plugin autojump un fichier .zshrc, et ça marche.
Mac OS Catalina V10.15.7
saut automatique v22.5.3

plugins=(git autojump)

Salut, j'ajoute le plugin autojump un fichier .zshrc, et ça marche.
Mac OS Catalina V10.15.7
saut automatique v22.5.3

plugins=(git autojump)

Et déplacez la ligne source $ZSH/oh-my-zsh.sh de .zshrc à la fin du même fichier.

Je pense vraiment que @shaungrady a résolu ce problème en disant d'ajouter autoload -U compinit; compinit pour que l'achèvement fonctionne. ( man zshcontrib ). La chose plugins=(autojump) n'est nécessaire que si vous utilisez oh-my-zsh mais ce plugin n'est qu'un script (autojump.plugin.zsh) qui source le script de profil autojump.

Si vous n'utilisez pas oh-my-zsh, comme moi, vous devez toujours sourcer le script (qui se trouvera à un emplacement différent selon le système d'exploitation et/ou la manière dont vous l'avez installé, par exemple, pour moi sur MacOS installant autojump avec Homebrew, c'est dans /usr/local/etc/profile.d/autojump.sh).

En résumé, les étapes que vous utilisiez oh-my-zsh ou zsh standard sont :
1) Dans .zshrc, sourcez le script de profil de saut automatique (ou si vous utilisez oh-my-zsh, ayez simplement plugins=(autojump) sourcez-le pour vous.
2) Dans .zshrc, faites fonctionner l'achèvement en ajoutant autoload -U compinit; compinit -y
3) Commencez à compléter les choses en tapant j foo[tab][tab] et lorsque le menu apparaît, entrez le numéro de répertoire et entrez.

@rkulla J'ai rencontré le même problème sur Ubuntu 18.04, oh-my-zsh .

J'ai ajouté le autoload -U compinit; compinit -y dans mon zshrc comme suggéré et j'ai fait fonctionner l'achèvement des onglets maintenant ! Merci !

Cette page vous a été utile?
0 / 5 - 0 notes