Je viens de publier une nouvelle version d'autojump. Pour mémoire, c'est un petit logiciel que j'ai écrit pour faciliter la navigation dans le système de fichiers en ligne de commande. C'est une commande "cd" intelligente, qui apprend en fonction de votre usage de la ligne de commande, et qui permet de sauter d'un point à l'autre du système de fichiers en ne saisissant qu'une partie du nom du répertoire où l'on veut aller.
Cette nouvelle version propose en particulier la compatibilité avec python 3.x, et un certain nombre de corrections de bugs. J'ai aussi fait un petit tutorial vidéo pour les linuxiens pressés: http://www.youtube.com/watch?v=tnNyoMGnbKg
Pour installer autojump, vous pouvez utiliser votre gestionnaires de paquets préféré, ou télécharger directement la dernière version sur le github: https://github.com/joelthelion/autojump/wiki
# Trop cool ce bout de code !
Posté par marahi . Évalué à 6.
Que dire de plus ? Merci :)
[^] # Re: Trop cool ce bout de code !
Posté par thamieu . Évalué à 3.
Fini les alias sur la commande cd en tout cas.
J'ai découvert ce logiciel à l'occasion d'un précédent journal, il m'a fallu quelques jours avant de l'essayer. Depuis, j'attendais un journal sur la prochaine version d'autojump pour dire un truc comme ça :
Un grand merci à Joël pour ce programme simple et efficace, et merci à Tanguy pour le paquet Debian que j'utilise au boulot sur ma Ubuntu ;-)
[^] # Re: Trop cool ce bout de code !
Posté par marahi . Évalué à 2.
Bienvenue au club mon gars :-(
# La vidéo
Posté par dest . Évalué à 4.
[^] # Re: La vidéo
Posté par fabien . Évalué à 2.
pas mal l'idée de la video, c'est bien fait.
j'aime bien la ptite pause à 2min05, on imagine bien la scene (ref pub free):
- à taaaable
- naaan ! pas maintenant..
[^] # Re: La vidéo
Posté par JoeltheLion (site web personnel) . Évalué à 3.
# Paquet Debian…
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 4.
Pour info donc, autojump est disponible en paquet pour Debian unstable. Il ne sera pas dans Lenny, mais ce n'est pas grave vu qu'il dépend seulement de Python : même sur une stable ou une testing, le paquet d'unstable fonctionnera sans problème. Après la sortie de Squeeze je préparerai un rétroportage (backport).
[^] # Re: Paquet Debian…
Posté par JoeltheLion (site web personnel) . Évalué à 2.
En tous cas, un grand merci d'avoir packagé autojump pour Debian!
[^] # Re: Paquet Debian…
Posté par JoeltheLion (site web personnel) . Évalué à 2.
[^] # Re: Paquet Fedora…
Posté par TNorth . Évalué à 2.
http://tnorth.fedorapeople.org/autojump-14-1.fc14.noarch.rpm
http://tnorth.fedorapeople.org/autojump-zsh-14-1.fc14.noarch(...)
Et un SRPM ici:
http://tnorth.fedorapeople.org/autojump-14-1.fc14.src.rpm
Ça doit passer aussi bien pour F12 et F13 normalement.
Merci pour ce petit logiciel bien pratique ! (j'ai 15% de commande 'cd' dans mon historique...)
[^] # Re: Paquet Fedora…
Posté par JoeltheLion (site web personnel) . Évalué à 2.
[^] # Re: Paquet Fedora…
Posté par TNorth . Évalué à 3.
Volontiers pour les liens. Pour l'intégration ça ne devrait pas être un problème, j'attendais juste que tu confirmes que c'était bon (j'ai envoyé un mail à ton adresse @laposte.net) avant de lancer le "review request".
# Commentaire supprimé
Posté par Anonyme . Évalué à 3.
Ce commentaire a été supprimé par l’équipe de modération.
[^] # Re: A quoi sert l'applet ?
Posté par JoeltheLion (site web personnel) . Évalué à 2.
# La base de donnée ne se remplit pas
Posté par dave . Évalué à 2.
après quelques commandes cd, sous archlinux, la command jumpstat affiche toujours
Total key weight: 0. Number of stored paths: 0
J'ai bien sourcé /etc/profile dans ~/.bashrc, mais ça n'a pas changé grand chose. D'autre part, je ne vois pas de trace de autojump dans /etc/profile...
Qu'en pensez vous ?
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: La base de donnée ne se remplit pas
Posté par JoeltheLion (site web personnel) . Évalué à 2.
# Oui, avec pacman,
Posté par dave . Évalué à 1.
Évidemment, je pense que .bashrc est lu à chaque fois que le shell démarre, mais je peux me tromper.
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
echo $PROMPT_COMMAND
[^] # Re: Oui, avec pacman,
Posté par dave . Évalué à 2.
laptop:~$ echo $PROMPT_COMMAND
echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007"
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
[^] # Re: Oui, avec pacman,
Posté par dave . Évalué à 2.
env : http://pastebin.com/SRctSFT9
Si ça peut vous aider à comprendre. En tous cas, à la vue de PROMPT_COMMAND, j'ai abandonnée. Bon courage.
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
[^] # Re: Oui, avec pacman,
Posté par dave . Évalué à 2.
Le résultat est qu'aucun appel à cd n'est enregistré...
À propos, est-ce que l'utilisation de la commande history n'est pas suffisante pour répertorier les appels à cd ?
Merci beaucoup pour ton aide.
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
Si tu veux un peu chercher, c'est assez simple, il faut trouver quel script modifie la "PROMPT_COMMAND": c'est une variable d’environnement qui définit ce qui se passe à chaque fois que le prompt s'affiche, et c'est le hook que j'utilise pour alimenter la base de données d'autojump. Si cette variable est écrasée, c'est normal qu'autojump ne fonctionne pas.
[^] # Re: Oui, avec pacman,
Posté par dave . Évalué à 2.
par exemple, à chaque fois que je tape quelque chose, comment elle est stockée ? Comment le répertoire dans lequel on tape la commande est-il connu ?
(À propos, pour ce qui est du shell, cette [http://linuxfr.org/forums/47/29483.html] entrée du forum parle un peu de portabilité shell. Ne serait-ce pas une bonne idée de réécrire autojump pour le rendre portable ? Bon ça ne va pas résoudre mon problème, mais pourquoi pas ?)
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
man bash :)
En fait, j'ai vu que le problème subsiste sur un autre PC. Donc ça doit être un bug d'intégration.
Je pense que c'est un conflit avec un autre programme... Dur à débusquer!
(À propos, pour ce qui est du shell, cette [http://linuxfr.org/forums/47/29483.html] entrée du forum parle un peu de portabilité shell. Ne serait-ce pas une bonne idée de réécrire autojump pour le rendre portable ? Bon ça ne va pas résoudre mon problème, mais pourquoi pas ?)
J'utilise des fonctionnalités qui ne sont de toutes façons pas portables, comme la complétion, donc ça n'apporterait rien de mon point de vue. D'autre part, la partie portable d'autojump est écrite en python.
[^] # Re: Oui, avec pacman,
Posté par dave . Évalué à 2.
NB, il s'agit de la version 13, donc Ça n'a peut être rien à voir avec la version actuelle.
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: Oui, avec pacman,
Posté par dave . Évalué à 2.
etc]$ su -c 'grep -R PROMPT_COMMAND *
> '
Mot de passe :
bash.bashrc:# - Prompt defaults (PS[1-4], PROMPT_COMMAND)
bash.bashrc: PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007"'
bash.bashrc: export PROMPT_COMMAND
profile.d/autojump.bash:if ! $PROMPT_COMMAND =~ autojump ; then
profile.d/autojump.bash: export PROMPT_COMMAND="${PROMPT_COMMAND:-:} ; $AUTOJUMP"
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
[^] # Re: Oui, avec pacman,
Posté par dave . Évalué à 2.
#
# /etc/bash.bashrc
#
# This file is the systemwide bashrc file. While most of the
# environment is preserved when running an interactive shell
# the PS[1-4] variables, aliases and functions are reset.
#
# When running a non-login shell, apply the following settings:
# - Prompt defaults (PS[1-4], PROMPT_COMMAND)
# - bash_completion if it exists
# - source /etc/bash.bashrc.local
PS1='[\u@\h \W]\$ '
PS2='> '
PS3='> '
PS4='+ '
export PS1 PS2 PS3 PS4
if test "$TERM" = "xterm" -o \
"$TERM" = "xterm-color" -o \
"$TERM" = "xterm-256color" -o \
"$TERM" = "rxvt" -o \
"$TERM" = "rxvt-unicode" -o \
"$TERM" = "xterm-xfree86" \
; then
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007"'
export PROMPT_COMMAND
fi
[ -r /etc/bash_completion ] && . /etc/bash_completion
[ -r /etc/bash.bashrc.local ] && . /etc/bash.bashrc.local
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
J'essaierai de comprendre ce soir pourquoi ça marche chez moi et pas chez toi.
[^] # Re: Oui, avec pacman,
Posté par dave . Évalué à 3.
Systemd, the bright side of linux, toward a better user experience and on the road to massive adoption of linux for the desktop.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
[^] # Re: Oui, avec pacman,
Posté par JoeltheLion (site web personnel) . Évalué à 2.
# Good job
Posté par barmic . Évalué à 3.
J'avoue que pour moi il n'a pas révolutionné mon shell, mais je m'en sert en complément à pushd/popd, autocd, les noms en /u/b (à la place de /usr/bin) et des dossiers que j'ai déclaré dans mon zsh pour pouvoir y accéder en ~machin.
Bref ça complète mon arsenal et c'est vraiment cool (ça m'amuse toujours quand quelqu'un tente de comprendre ce que je fais en shell et qu'il est incapable de me suivre ^^...
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Good job
Posté par JoeltheLion (site web personnel) . Évalué à 3.
En tous cas pour perdre les gens qui te regardent, il n'y a pas mieux!! (bonus si tu utilise une partie du nom du répertoire qui n'est pas au début du nom, par ex. "od" pour "code")
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.