📅 2014-Sep-28 ⬩ ✍️ Ashwin Nanjappa ⬩ 🏷️ bash, cd, fish, ranger ⬩ 📚 Archive
One of the uses of Ranger can be to conveniently change to a directory in the shell that launched Ranger. To do this, we use the
--choosedir option of Ranger. Pass this the name of a file and when Ranger is closed it will write the directory it was in to that file. You can then read the contents of this file in your shell to change to that location.
For Bash, a function that can do this is provided in bash_automatic_cd.sh in the Ranger source code.
For Fish, I have written a similar function that you can add to your
# Add this to your ~/.config/fish/config.fish function ranger-cd set tmpfile "/tmp/pwd-from-ranger" ranger --choosedir=$tmpfile $argv set rangerpwd (cat $tmpfile) if test "$PWD" != $rangerpwd cd $rangerpwd end end
To use Ranger like this, invoke it at the shell as
ranger-cd. When you quit Ranger, fish will change its current directory to that in Ranger.
Tried with: Ranger 1.6.1, Fish 2.0.0 and Ubuntu 14.04