[ANN] Shelly.jl -- cd, ls, ll and more Unix in the Julia REPL mode

Hi all,

happy to announce Shelly.jl, a tiny helper package to let you swiftly navigate the file system from within the Julia REPL mode, and without having to type any special characters.

More info on the Github README; here is a small example:

julia> ls
1° .  2° ..  3  README.md  4° src

julia> 4cd
julia> pwd()

julia> 2cd
julia> pwd()

julia> 4°
julia> pwd()

julia> 2°
julia> pwd()

Would be very glad for any feedback!


This looks interesting, but my first and most major comment would be that I use the heck out of df as a variable name, and will avoid any package that forces me to change that behavior.


True, also the reason why I did not use c as shorthand for cd – but in the hints at the end I am suggesting to only selectively import the names/functions you want. You can also easily alias anything there – e.g., const mydf = Shelly.df gives you your own shortcut with the same behavior.

I have been waiting for this - will give it a try! Good stuff!

The idea of this package is to bring the UNIX syntax to Windows users? Because the REPL has a built-in shell mode (press ; as the first character of the line).


No (Windows support is actually not really implemented yet). The idea is to quickly browse the file system without having to change mode (I am probably also outing myself as not the biggest vi user). Personally, I prefer to stay in the Julia REPL and just dumbly type the muscle-memorized “ll” instead of reaching for the “;” which requires a SHIFT on my keyboard; also I have to remember to get back to the Julia mode. Modes simply make me stumble ever so slightly.

(I added Windows support – the command dir now works in the Julia REPL mode on Windows. Windows users can probably benefit even more here, as a dir would require the cmd /c in the shell mode.)

1 Like

New version 0.9.0 released:

  • Show hidden files with lla, lsa, or dira on Windows (thx @oheil !)
  • Windows: change drive with df or ldf; root dir handling fixed; group-by-dirs
  • Capture ls output via |>
  • Stability, docs, code re-org…