Intéressant. On retrouve des principes de dirs/pushd/popd, avec certains aspects plus ergonomiques (*), mais aussi avec une fonctionnalité en moins (le référencement natif aux répertoires de la pile avec ~1, ~2, etc)).
Je regardais, a priori ces commandes internes de bash n'exposent pas de variable. Sinon il eut été possible de rendre ton script facilement compatible avec elles (et donc de profiter des ~1, ~42, ...). (ce n'est pas impossible, mais cela induirait des changements pénibles (i.e. travailler avec des accesseurs beaucoup trop indirects: dirs/
popd/pushd) dans la façon de gérer la liste des chemins)
(*) J'aime bien ce que tu as fait avec les "flèches". Je te le piquerai à l'occasion pour ma surcouche à
pushd/dirs/popd. ^^'
L'idée de la persistance des listes de chemins est bonne aussi, mais dans mon utilisation, j'ai besoin de la notion de session car j'ai souvent plusieurs terminaux spécialisés avec chacun sa liste propre de 5 à 9 chemins empilés.