#cd #path #terminal #lazy-evaluation #directory #shell #navigators

app lacy

Fast magical cd alternative for lacy terminal navigators

2 releases

new 0.1.1 Nov 12, 2024
0.1.0 Nov 12, 2024

#4 in #cd

Custom license

170KB
502 lines

Lacy 💤

Lacy is a z inspired cd alternative. It aims to make navigating easier for lazy people.

Lacy is WIP! Please report any issues you encounter. Don't expect it to work perfectly yet. (I'm using it daily, it won't break/harm your system, but will sometimes throw an error... working on it)

Examples

Example 0

Navigation without full path

You don't have to type the full directory name. Just make sure the path matches the directory name more or less.

# normal cd
cd /Users/timothebot/projects/lacy/src

# with lacy
y / user timo prj lacy sr
# or
y / usrs timbo rojt layc rc

Skipping directories

Forgot the directory name? No problem. Just skip it using -.

y / user timo - lacy sr

# as long as some parts are still unique, it will work... and it's very fast
y / - - - lacy sr

Like cd

Everything you can do with cd, you can do with y.

y /Users/timo/Projects/Lacy/src
y ~
y ..

Real paths

You can also add real paths while lazy navigating.

y /Users/timo/ desk proj lacy/src

Installation

# macOS or Linux
cargo install lacy

Zsh

Add the following to your .zshrc file:

eval "$(lacy init zsh)"

Other shells

Feel free to contribute the init script for your shell. I'm gonna add them as soon as I can.

Why not z?

z is a great tool, but if you are working with a lot of projects with similar paths, it can be a pain to navigate. You can use z alongside lacy.

Todo

  • Add support for ..
  • Add support for ~
  • Add support for "real" paths (e.g. /Users/timo/ desk proj lacy)
  • Add ability to skip a directory
  • Add more tests
  • Fix a lot of bugs
  • Add aliases
  • Add git cliff
  • Add support for more shells

Dependencies

~3–10MB
~93K SLoC