Je viens de publier la 15e version d’autojump. Pour mémoire, il s’agit d’un petit outil qui apprend quels sont vos endroits préférés, et vous y amène rapidement, évitant ainsi de nombreuses commandes « cd »
. L’outil est écrit en Python et proposé sous licence GPLv3. Il fonctionne sous la plupart des OS avec Bash et ZSH.
Cette version n’amène rien d’extraordinaire, mais l’accumulation des petits progrès me semblait la justifier :
- la correction d’un bogue sérieux, rendant le logiciel inutilisable après avoir été lancé avec «
sudo
» dans certaines distributions - un reformatage du code pour le rendre plus lisible et respecter la fameuse PEP-8, qui propose un standard de code pour le langage Python ;
- plein d’autres petites améliorations.
Vous pouvez dès à présent le récupérer via git ou sous forme d’archive sur GitHub. Vous pouvez également attendre la mise à jour automatique de votre distribution (autojump est maintenant disponible en standard dans la plupart des distributions importantes).
Aller plus loin
- Le site du projet (694 clics)
- La page des téléchargements (92 clics)
# Cool
Posté par littlebreizhman . Évalué à 4.
Merci pour cet utilitaire très pratique.
Je l'avais testé en étant assez dubitatif (j'utilisais déjà autocd avec zsh) mais j'ai vite été convaincu.
C'est vraiment pratique de changer de dossier en tapant 2-3 lettres (surtout quand on a plein de sous dossiers à parcourir.
[^] # Re: Cool
Posté par Bapt (site web personnel) . Évalué à 1.
As tu essayé cdr (dispo en zsh 4.3.11)? (man zshcontrib pour plus d'infos).
Si oui un retour d'expérience de autojump vs cdr?
[^] # Re: Cool
Posté par littlebreizhman . Évalué à 4.
Non, je ne connaissais pas cdr.
Après avoir lu la page du manuel zshcontrib (que je parcourrai plus attentivement plus tard), j'ai cru comprendre que cdr retient les N derniers dossiers utilisés.
Si c'est correct, dans ce cas, je crois autojump fait mieux car il y a une pondération sur la fréquence d'usage des dossiers (que Joël me corrige si je me trompe).
Ainsi si j'ai deux dossiers web_dev et web_prod
"j web" m'enverra directement dans web_dev car c'est celui où je travaille le plus souvent, même si le dernier dossier que j'ai utilisé était web_prod.
Après c'est juste un comportement semble-t-il différent. Les deux outils ont visiblement la même philosophie.
Joël, connaissais-tu cdr avant de développer autojump ? (à condition d’utiliser zsh à ce moment là).
[^] # Re: Cool
Posté par JoeltheLion (site web personnel) . Évalué à 3.
Effectivement, c'est ça. L'objectif est d'essayer dans la mesure du possible de deviner l'intention de l'utilisateur quand il y a plusieurs possibilités.
Non, je ne connaissais pratiquement aucun des concurrents d'autojump. Mais finalement autojump reste celui que je préfère ;-)
# Adopté à l'essai
Posté par gasche . Évalué à 2.
Le descriptif est un peu tentant, alors j'ai décidé de l'essayer. Pour l'instant il ne sert à rien (pas de base), mais il n'est pas du tout intrusif.
Je regrette l'utilisation de github, hébergeur propriétaire, comme plateforme principale du projet, alors qu'il existe des forges libres ou gitorious qui sont aussi de bonne qualité.
[^] # Re: Adopté à l'essai
Posté par JoeltheLion (site web personnel) . Évalué à 5.
L'essentiel, c'est d'utiliser git, non? Du moment que je reste propriétaire de mes données, je ne vois pas quel est le problème. Si demain github change ses termes et qu'ils ne me conviennent plus, je peux changer dans la minute. Ça me suffit.
[^] # Re: Adopté à l'essai
Posté par JGO . Évalué à 2.
Et donc, troll à part, comment as-tu fait ton choix parmi les forges git existantes ? githib offre plus de fonctionnalités ou de réactivité ?
[^] # Re: Adopté à l'essai
Posté par JoeltheLion (site web personnel) . Évalué à 5.
En fait il y en avait assez peu quand j'ai commencé autojump. J'avoue ne pas avoir réfléchi énormément: si c'était à refaire, je prendrais sans doute une forge libre, ne serait-ce que pour éviter de me faire reprocher mon choix :)
[^] # Re: Adopté à l'essai
Posté par gasche . Évalué à 7.
Oui et non :
En publiant publiquement un lien qui pointe directement vers github pour ton projet, tu soutiens implicitement la plateforme et encourage les gens à s'en servir. C'est comme de la pub, plus on voit github mieux on s'en souvient et incline à le choisir soi-même, sauf qu'en plus ce n'est pas une pub commerciale, c'est de la diffusion par des collègues techniciens, donc dignes de confiance sur leurs choix d'outils. Ces plateformes jouant sur l'effet de réseau, si l'année prochaine tu te rends compte que github ne te convient plus, tu pourras migrer ton projet mais inciteras-tu les dix autres projets que tu as inspirés à migrer avec toi ?
Github ce n'est pas une simple URL d'un repo git, c'est une panoplie d'outils et de documents annexes. Quand dans 3 ans tu seras habitué à leur interface, tu auras toute ta doc dans leurs wiki et des dizaines de billets dans le "Issue Tracker"¹, le coût d'une migration sera beaucoup plus élevé et tu seras un utilisateur captif.
Si comme tu le dis il n'y a aucune différence et tu peux migrer quand tu veux, pourquoi ne pas le faire dès maintenant ? Comme Git est décentralisé, tu peux même conserver un repo github et le synchroniser avec les autres régulièrement. La question est plus de choisir quelle page tu soutiens comme "page principale du projet", et quel outil d'hébergement tu promeus auprès de tes utilisateurs.
¹: si les gens mettent leurs données dans ce wiki et cet issue tracker, c'est aussi parce que ce sont de bons outils. Personne ne le nie, github est une plateforme agréable dont les développeurs font du bon travail (ils rétribuent même une partie de leur développement au libre, d'ailleurs). Ça reste une plateforme propriétaire et je pense que le choix (qui pourrait légitimement être justifié par des raisons techniques) devrait être décidé plus rigoureusement que "boarf j'ai choisi ça au hasard".
[^] # Re: Adopté à l'essai
Posté par gasche . Évalué à 8.
PS: je ne comprends pas comment les informaticiens libristes peuvent être si insensibles aux conditions de licence de la plateforme d'hébergement de leur logiciel. On fait tout un drame si le visualisateur de photographies n'est pas libre, par contre l'outil d'hébergement de code source, pourtant crucial pendant le processus de développement de logiciel libre, on s'en moque.
Par exemple on qualifie de "troll" et on moinsse mon message qui se contente de dire de façon tout à fait objective et posée "je regrette l'usage d'un outil propriétaire". À croire que vraiment, c'est une remarque outrancière et illégitime (alors qu'on n'hésite pas d'un autre côté à encourager les gens à migrer de SVN à git/hg/darcs par exemple).
[^] # Re: Adopté à l'essai
Posté par Juke (site web personnel) . Évalué à 2.
D'ailleurs savez vous si il existe un equivalent libre à gist.
Une sorte de pastebin qui permet de creer un depot git à partir du contenu ?
https://gist.github.com/
[^] # Re: Adopté à l'essai
Posté par FlashCode (site web personnel, Mastodon) . Évalué à 2.
Gitorious est peut-être basé sur du code libre, mais bon il suffit de regarder les conditions d'utilisation, on peut y lire ça :
Personnellement, je préfère Savannah, c'est 100% libre et sans pub.
WeeChat, the extensible chat client
[^] # Re: Adopté à l'essai
Posté par gasche . Évalué à 3.
Pour moi c'est du blabla légal que les avocats de sites webs ont l'habitude de mettre à chaque fois, et ça n'indique rien de potentielles intentions malicieuses des gestionnaires du site. La plupart des sites anglophones ont ça de nos jours.
Pour chaque clause de cet extrait je vois un ou plusieurs usages désirables pour lequel on pourrait leur coller un procès s'ils n'ont pas demandé ces trucs dès le départ. Par exemple "... license to publish the Content" bah oui, normal, on le met sur leur site il faut qu'ils aient le droit de le publier. ".. license to reproduce the Content" bah oui, c'est normal, une fonctionnalité clé de ces sites est de pouvoir forker commodément un projet qui s'y trouve, il faut qu'ils puissent reproduire le repo...
Pareil l'avertissement sur la suppression me semble être du bon sens. Aujourd'hui si un site te dit "promis juré vous cliquez sur 'delete' et on ne trouvera plus jamais cette information sur le web" il te ment, car il y a toujours des caches, des archives etc. Ici on te prévient, je vois pas ce que ça a de scandaleux.
Bref, la formulation est peut-être un peu extrême, mais à mon avis ça veut juste dire qu'ils ont reproduit le charabia habituel sans se prendre la tête, et je ne pense pas que ça nuise à la liberté de leur plateforme. Après, si ça te gêne tu es libre de choisir autre chose (mais pourquoi ne pas leur envoyer un mail pour demander clarification d'abord ?), et Savannah est aussi une bonne plateforme.
[^] # Re: Adopté à l'essai
Posté par barmic . Évalué à 2.
Savannah, je connais vite fais. Mais est ce que je peux m'en servir pour héberger des document textuels à moi qui n'ont pas vocation à améliorer l'univers du logiciel libre par exemple ? Il propose quoi comme dépôt (git, svn, hg, bzr,...) ? Il y a quoi comme outils annexe (wiki, report bug, forum,...) ?
Je n'arrive pas à voir les pages des projets depuis mon boulot, mais dans la liste des projets en bas il est fais mention de projets privés, je suis extrêmement surpris qu'ils autorisent la création de projet privés.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
# Voir aussi wcd
Posté par JGO . Évalué à 4.
Dans le même genre, « WCD - Wherever Change Directory »
http://www.xs4all.nl/~waterlan/#WCD_ANCHOR
# z-jump
Posté par Olivier (site web personnel) . Évalué à 2.
Je suis fan-absolu d’autojump, Joel, tu pourrais nous parler de j2 et z-jump que je viens de découvrir en faisant un « yaourt autojump » ? Ce sont des fork ? Je n’ai pas bien compris leur intérêt…
https://github.com/rupa/z#readme
https://github.com/rupa/j#readme
[^] # Re: z-jump
Posté par JoeltheLion (site web personnel) . Évalué à 3.
En fait, quand j'ai publié autojump la première fois, ce type l'a réécrit en shell. Je n'ai pas bien compris l'intérêt, d'autant qu'il aurait été le bienvenu pour contribuer à mon projet...
Bref, c'est à peu près la même chose, dans un langage différent.
[^] # Re: z-jump
Posté par barmic . Évalué à 2.
Je ne sais pas comment c'est implémenté, mais peut être qu'il a voulu éviter de lancer un processus séparer et implémenté ça dans une fonction shell.
Personnellement je me suis enfin mis à utiliser autojump il y a quelques mois, je l'utilise pas de manière systématique, mais il fait partis de ma batterie d'outils pour changer de dossier.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: z-jump
Posté par JoeltheLion (site web personnel) . Évalué à 3.
A la place, il lance awk...
# Bashmarks
Posté par Philippe Ivaldi (site web personnel) . Évalué à 1.
J'aime bien Bashmarks
# Debian
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 8.
Voilà, c'est empaqueté pour Debian, d'ici un jour ou deux vous l'aurez dans unstable.
[^] # Re: Debian
Posté par JoeltheLion (site web personnel) . Évalué à 1.
Merci!
[^] # Fedora
Posté par TNorth . Évalué à 3.
C'est mis à jour également dans Fedora (rawhide), et ça sera dispo pour F13/F14 lorsque la màj aura fait son petit bout de chemin.
[^] # Re: Debian
Posté par Juke (site web personnel) . Évalué à 5.
Merci car c'est souvent ce genre de petit logiciel qui ne sont pas empaquetés, et dont on ne suit pas les mises à jours.
[^] # Re: Debian
Posté par Samuel Verschelde (site web personnel) . Évalué à 1.
Même chose pour Mageia, dans quelques heures disponible dans la version de développement Cauldron.
# Makefile ?
Posté par rpointel . Évalué à 1.
Salut,
je me demandais à tout hasard pourquoi tu n'avais pas fait un simple "Makefile" plutôt qu'un script d'install ?
Simple curiosité. Merci d'avance de ta réponse.
[^] # Re: Makefile ?
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 1.
Make est fait pour les compilations. L'utiliser pour installer des fichiers, c'est déjà un détournement de sa fonction, alors à partir de là, ça ou un script, c'est kif-kif, je dirais.
[^] # Re: Makefile ?
Posté par Michaël (site web personnel) . Évalué à 6.
Je ne suis pas tout à fait d'accord avec l'idée de ``détournement''. C'est peut-être une utilisation inattendue, si on a commencé par apprendre que Make sert à compiler des programmes. Mais finalement, la différence conceptuelle entre décrire une tâche dans le langage de Make et dans le langage du shell réside dans l'organisation du programme. Au lieu de l'approche découpant la tâche à accomplir en procédures et sous-procédures, etc., Make impose de penser en terme d'étapes et de transitions et se débrouille pour combiner entre eux ces éléments de description de la tâche pour arriver au résultat escompté, si celui-ci peut-être atteint. Un des intérêts de ce cette approche est qu'on peut enrichir une liste d'étapes et de transitions, ce qui du point de vue procédural du shell revient à éditer le cœur d'une procédure.
Par exemple, si notre procédure d'installation générique ressemble à
on l'adapte à nos besoins particuliers, dans le monde de
Make
en ajoutant des dépendance aux étapesdo-preinstall
do-install
etdo-postinstall
là où le shell nous obligerait à trouver, copier et modifier le code des procéduredo-preinstall
etc.En clair, par rapport au shell, l'approche de Make montre sa force dans la facilité qu'elle confère aux solutions générales à s'adapter aux cas particuliers. (On peut certes utiliser la méthodologies objet avec le shell, mais je ne connais pas de proof of concept à part quelques exemples que j'ai écrits pour m'amuser.)
Ceci dit, comme méthode d'installation, un script est très bien!
[^] # Re: Makefile ?
Posté par rpointel . Évalué à 2.
Effectivement, je suis d'accord avec toi.
Et je trouve un qu'un simple Makefile est plus lisible, mais après c'est au gout de chacun ;).
# Merci
Posté par Juke (site web personnel) . Évalué à 2.
Merci pour ton logiciel c'est très utile, je peste quand je suis sur le serveur car il n'y est pas installé.
[^] # Re: Merci
Posté par JoeltheLion (site web personnel) . Évalué à 3.
L'installeur ne le permet pas (encore), mais il est tout à fait possible de l'installer en tant que simple utilisateur: tu places l'executable "autojump" dans un répertoire de ton path, et tu sources autojump.bash ou autojump.zsh depuis ton .bashrc (ou ton zshrc) et c'est parti!
[^] # Re: Merci
Posté par Juke (site web personnel) . Évalué à 2.
ha oui c'est sûr, c'est juste que je n'y pense pas.
# Déjà une habitude
Posté par Ontologia (site web personnel) . Évalué à 3.
Je me sers d'Autojump tous les jours, et surement quelques dizaines de fois par jour.
Une petite critique : le démarrage commence à devenir long, comme si la BDD devenait un peu grosse..
Sinon, j'en suis très content, encore une fois merci !
« Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker
[^] # Re: Déjà une habitude
Posté par JoeltheLion (site web personnel) . Évalué à 1.
Ah, intéressant, c'est la première fois que quelqu'un me dit ça. Qu'est-ce qui est lent au juste? "j"? Est-ce que par hasard tu pourrais m'envoyer ta base de données?
# jumpapplet : comment ça marche ?
Posté par Samuel Verschelde (site web personnel) . Évalué à 2.
J'ai installé autojump et son applet, mais je ne vois pas comment utiliser cette dernière. Quand je la lance, elle apparaît bien dans la boîte à miniatures, je peux la configurer avec un clic droit, mais je ne vois pas comment lui faire faire quelque chose d'utile. Un clic gauche ne provoque pas la moindre réaction.
Est-ce que j'ai loupé quelque chose ?
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.