zoxide has forever improved the way I navigate in the terminal.
ฝัง
- เผยแพร่เมื่อ 19 มิ.ย. 2024
- For the longest time, I've used cd exclusively for navigating in the terminal.
However, when it comes to nested directories, the only way to speed this up was to either use aliases or my shell history.
Since discovering zoxide, that's all changed...
Links:
zoxide: github.com/ajeetdsouza/zoxide
wallpaper: www.freepik.com/free-vector/g...
Thank you!
Thank you so much for the support! It means the world to me
Me who still navigates in the shell with "cd dir1, ls, cd dir2":
cd dir1, ls, clear, cd dir2, clear ***
@@lobotomy-victimI don't know why but I also do this
cd dir1/ *TAB TAB TAB TAB* mmmmh... dir2 enter
@@abdussomodadigun1760I do it because I feel cool when I do
I'm not even using ls to list the directory. 'ls' is the command of 'wait, let me gather my thoughts and decide what next'.
Started the video thinking "eh, cd is quick enough for me." Finished the video thinking "I should really give this a go." Well done!
I had the exact same opinion when I started looking at zoxide!
Same here! And unfortunately I was just planning to watch this vid and move on. Now I'm focused on getting this installed before my next meeting!
absolutely the same thing here!
I ❤
Sameere
Narrator: "Zeee-Oxide"
Me: "Zohxide."
Me: Zoxside
Me: Zedoxide
Me: zyoxide
@@-morrow The only correct pronunciation
@@-morrownow that's the chosen one
TIL about cd -
I'm glad I'm not the only one.
I was using pushd and popd for that, but cd - is much better 🤯
@@_RafaelKr the objective is different. With pushd, u get to a specific dir. With cd - , u get to the last dir
@@kumarraj197 Yes, but sometimes I used pushd to go to a specific dir and used popd to go back to the last directory. So if I only need that simple one-time-back-functionality cd - is the perfect fit. So the only advantage of pushd+popd is the stacking functionality but I rarely need that.
And today you will learn about CDPATH
finally a reason to type the letter z
Best comment. Hands down
a second one
@@sunofabeach9424 You can always try aliasing z to cd if u are still stuck on old habits.
alias z="zsh"
@@s1nistr433why would you create an alias for that
Zoxide is amazing. Never changing back.
You mean you'll never cd -
fzf?
@@chotabomjvonychi3485ye, but I guess you can still use zoxide to change to the directory you're fzfing
I had heard about zoxide for a good while now, but I stubbornly kept using 'cd' because.... minimalism and all that. However, I caved about two days ago, since I was getting tired of cd-ing full paths / tabbing. So far, it's been great! I'm starting to think I won't be going back! :D
Both of us were convinced!
how are you going up a directory? ex: cd ..? with the rebinding cd .. no longer works?
@@johnpulawski35 I type 'z' instead of 'cd' (haven't rebound). And since I use zsh, going up a directory is just two dots '..'
@@johnpulawski35it actually does
The quality of this video and value of content led me to believe I had discovered a channel full of hidden gems. Then I found out you only have 3 videos. DONT STOP CREATING CONTENT PLEASE
He have one more channel, 'dreams of code'
It has way more than 3 videos , you will love it
I just discovered this channel, and I am really impressed by the content and the quality of your videos. Keep up the good work!
Always great to see your videos popping up on my timeline. Waiting for your NAS related videos :)
this recommendation showed at a perfect time. I was wondering of a smarter or better implementation of cd aliases last week lol. great video man, will definitely give zoxide a shot
This is the most comprehensive overview of zoxide I've seen. Well done and thanks!
Your channel seems really new, so just wanted to say this was a really really high quality video! Absolutely loved it! Looking forward to your content in the future.
He has another channel called Dreams of Code.
I didn't know how much I needed this tool in my life... Awesome!!!
Wake up in the morning and watched this amazing video, i had already installed this few days ago but i was unaware this interesting features of zoxide,,, thanks manh❤
You really closed with a BANG! That last point was what I was thinking during the whole video and then you gave a solution! Very very well crafted ending! Installing zioxide right now
Just found out about this channel and instantly subscribed because of the high quality video. Keep up the hard work 👍
Thank you for the tip! This is a life changer. Your videos are very clever and clear.
Damn, these videos have such a high quality. You are great at explaining things
Very cool. Installed zoxide and looking forward to using it!
What I do is more of a direct improvement to the path-specific cd aliases. Zsh includes a CDPATH, a set of paths, subdirectories of are considered cd-able
If you have ~ in your CDPATH, for example, then you can, from any working directory, do `cd Documents` to cd to ~/Documents
I have a bookmarks directory in my CDPATH full of symlinks to various directories of note
This makes cd-big to them real easy, and they’re also more quickly available to get a path to a subdirectory (for things like `nvim ~/bookmarks/a_link/whatever`
I also have a simple little script to “link a link to CWD in bookmarks`
It works great for me!
And it’s all very simple to use, and there’s never surprises or.unexpected behavior
CDPATH is awesome. Combined with `set completion-ignore-case on`, fzf for Ctrl+R and possibly autocd you’d get a pretty sweet experience, even with good old bash. But these features are also available for zsh and others.
bash also offers CDPATH
Is there a eMacs integration?
@@st3ppenwolfjust use normal emacs bookmarks, much more sophisticated, u can literally bookmark arbitrary elisp functions (e.g. open up multiple buffers, paste ish in, run external procs, initialize ur death star, fire ur lazor)
Thank you so much for these really high quality and well thought out videos.
Can only agree, it’s an amazing tool that took me about a minute to start loving
Thank you for watching them! I'm glad people enjoy them
i aliased z to cd and zi to cdi and i am quite happy with the way it's working.
Thank you!
This new channel is amazing. Please, make a video about your desktop environment or window manager and the customization seeing in the video. It's beautiful.
A real treat! Love this channel. I've been following your channels since the tmux video and I have never looked back.
100% the same!!
This comment an example of you looking back. Now you'll never again be able to say that about this channel honestly. The end of an era.
Zoxide is good. But once you started to use tab for autocomplete cd is not as bad as shown...
Great content, clear, concise, and very helpful. Keep it up! You earned a subscriber.
you just made my day, going to use it from now on, thank you!
Note that the 4DOS command shell, from the 1980's, which became 4NT and now _Take Command_ , has had fancy cd features. It doesn't do multi-fragments like that, but it does remember the full paths of directories so you can give it just the final name, use a CDPATH variable, cd history, and more.
I relied on 4OS2 back in the day
4dos was awesome. I also used Norton CD aka ncd
4dos was great. Another feature I really liked was you could just add another . to go up another level. So cd .... instead of cd ../../.. (or ..\..\..)
Been using z (jump around) for years, but this takes it to another level. Thanks, will surely give it a go. I think its the fuzzy finding that might win me over
Oh another channel that I will constantly binge every future video from, nice
I've been sort of doing that the PowerShell/PSReadLine module.
But this really is next level, I'll certainly incorporate that.
Switched to zoxide a couple months ago and never looked back since.
Great video as always, this channel is gold!!
I use just fzf and command history. To change directories I usually have to type 1-3 characters of the directory name.
Same, i even built a short script 'cdr' which also lists the most used dirs.
Yeah, fzf covers this while being a lot more utile
Man, I am a new Linux user. Arch BTW. And your last 2 videos have completely changed the way I work! First stow and now this!
cool video, I'll give those a try! by the way, you can use Ctrl+l instead of clear to clear the window (the main advantage is that that way you don't clutter your history with clears)
Might have to try this. Fzf is my bread and butter for speeding up directory navigation
This seems like a lot of effort to avoid using tab completion
That tab key is just too close to capslock.
Jk, I've rebound it 😆
@@techtudei think he meant " ust idding"
How did I not hear about this tool already? It's fantastic!
I even started installing while the video was still running. Thanks for you work.
Great to see more cd efficiency being built. I'm still fine with cdargs, which I wrote over 20 years ago 😇
this looks like a very well executed idea for an applicability quite niche. I particularly never found need for this set of functionalities in the way zoxide implemented them. Besides, with good configuration and strategic addition of packages, zsh provides a very agile behavior on the points highlighted here. Even PowerShell does. However, the caveats pointed at the end of this video also apply in these use cases too.
Zsh has some really cool tab completion stuff on its own, but woah this is even cooler!
(also I almost froze from trauma when you mentioned fuzzy finder, the thing I hated the most about fish)
Your content is top notch! Looking forward to your tmux tutorial.
100% giving this a go at work tomorrow. Looks cool as heck
The alias z=cd is game changer for me as this is what kept me from using it across multiple machines. Gonna set it up soon thanks a ton!
The production is amazing , underrated
I will definitely try this out, amazing video
I didn't know I needed this..... Thanks, man!!!
Randomly got this recommended, great video. :)
Awesome! Thank you!
Dude, when i used just two words to travel into a full path, i was shocked! This is so damn good!
This video is the best I have seen. Unitl now I didn't want to try it. Now I will today, right now !
Great video, thanks! You were right about the muscle memory - I thought I'd go without aliasing the 'cd' command and I just couldn't. I kept typing cd. After adding the '--cmd cd' to the 'init' command all my problems were gone :)
Thank you for this. It is going to change my life.
Subscribed. More videos like this please, keep up the good work
Thanks a lot. This has been very useful, despite my initial thoughts being "Meh, I'll see about that. Probably not necessary". Installed both on my laptop and on my home server, so useful!
looks like a nice tool, i will give it a go and i think it will boost my productivity too
i really like that i can jump directly to any folder or a external device from anywhere just by calling the name
Your video is really good looking! I want the entire esthetics of your computer and terminal and I also want to know how all of this is recorded with so fancy and good looking clarification animations 😍 But I guess that is a lot of time spent in video editing? Good job anyways. I've now installed zoxide with all the configurations you made! 😁 Here, have a subscribe!
holy shit, this is downright revolutionary. really clever implementation
Interesting. I feel like it might trip me up, especially if I want to go to an intermediate directory not in its database. Great video, though, keep it up! I love learning about new tools (like your Stow video) with non-clickbait titles and to-the-point content!
This is nice.
But I like right-clicking in Windows Explorer and using the "Open with PowerShell" option.
I even have a little "Favourites" list and a list of frequently visited folders. Clicking is nice.
I use Rupa/z project which is similar to zoxide.
I prefer that because it’s a shell script I can bake it into my dotfiles repo and not having the need of installing another executable.
But the interactive mode is amazing +1
That's very nice! As they describe it, they're just a better cd and autojump and combined to one package which just makes it convenient with having one command instead of two. I'll stick to cd and autojump because I'm too lazy to configure it and use it tho lol. Still a great find!
Interesting. I would give it a try. Thanks for sharing!
wish i could like this video more than one time! thanks man
Wait, cd in zsh? In zsh you don't even need cd because you can simply type paths.
Zsh also has the dirstack feature built-in, which remembers frequently used paths, similar to zoxide.
"shopt -s autocd" in bash. Today I learned about ˜N for entries in dirstack, which I suppose may be handy. Most of the time I use screen.
you also don't even need to type the full path in zsh. /c/a/b/d will jump to the first match for those characters all the way down. same with fishshell though.
The quality of this video is just amazing. If this guy keeps adding new videos like this every day or week I bet this is gonna be the next fireship! Just amazing, subscribed and looking for more good stuff!
He have another channel as well
Dreams of code
did the thumbnail make anyone else unreasonable annoyed becuase cd is a shell builtin and not a bin?
no just me
I'm sorry / not sorry 😅
this is pretty cool! I installed it while watching this video and I can hardly go back to cd now!
Would you make a video about your terminal configs?
it seems very interesting.
I'm a complete newbie trying to find my way on it.
Arch and zsh, I see you are a man of culture! 😎
This actually would be hella nice for me especially since I basically live in my terminal now. I have several well nested directories so this would honestly save a ton of time.
Also, your fix for getting confused between z and cd is exactly what I did for the ls command as I use 'eza' over the original ls.
Another terminal citizen! I welcome you.
@@dreamsofautonomy Update: tried it out. Game changing is an understatement.. Literally took all but 2 "cd's" in order for it to be able to jump straight from home into the base of a triple nested directory. It's actually insane! I appreciate the introduction!
what wm & status bars do you use?
@@hedonist2104 i3 and Polybar, however on my desktop I tend to just stay on KDE/Plasma since I already had it setup and looking good. Plus Kwin has maps for quick tiling that are not as good as a standalone wm, but it's good enough lol.
This is amazing, thank you!
Only 3 videos? With this level of quality, I was expecting tons more!
For those of you wanting functionality similar to Zoxide without having to install it:
You can add the **CDPATH** environment variable to your bashrc or zshrc. You would add
to it as you would any other PATH variable in the shell. It allows you to `cd` to any directory
in it's path regardless of where you are in the file system.
s/it's/its
I have tried autojump before, but it's not being maintained. Thanks for showcasing this.
Was already using it but the --cmd is great now I'm back to cd but with full zioxide power, thanks.
Totally compelling and convincing review. I think your idea of merging cd to behave like the new z command should probably be integrated into their app as an option. This feels like a very natural and necessary evolution.
You and me are both rocking a System76 keyboard!
Goated Video as always
Incredible video. I'm new on arch and I'm building my system and improving my workflow day by day. I just created my whole nvim setup and I'm incredibly happy with that. This will be a great improvement too so thank you! I was thinking about starting to use zsh, could you tell me by any chance what theme do you use?
I need desperately your wallpaper. It's gorgeous.
Awesome video.
Thanks! I get all my wallpapers from freepik. This one is:
Gradient landscape with torii gate in the water
@@dreamsofautonomy thanks! Already found it.
going to try zoxide, thanks for sharing
How does zoxide work in terms of tab completion? If I have to actually type "z mydirectory otherdirectory" that might be a deal-breaker for me: it would be much faster to do traditional "cd /somedirectory/mydirectory/src/otherdirectory" if the actual keystrokes are for example "c d / s o m y o t ".
There's no tab completion if you're not specifying an actual path. Probably would be hard to make it useful given that a word could be any part of any path segment. But you don't need to type out full path segments so you don't really need completion. You can just type out any specific enough part. In essence, it's as if you did tab completion after every word but without actually having to do the completion. The only time where this doesn't work as well is if you have a lot of ambiguities with common prefixes and want partial completions.
Personally, I still use regular cd when I'm navigating through the file system and don't yet exactly know where I'm going because zsh's completion list and fuzzy partial auto-complete are amazing and I wasn't able to get the latter to work with zoxide. But I use zoxide to jump to known places, especially all the different code repositories. They generally have unique enough names that I just need a few letters to specify the exact target so it's definitely much faster than doing a bunch of tab completions. And you can configure it so that regular cd still adds paths to the zoxide database.
@@1vader You've convinced me to give it a try. Thanks for the response. :-)
Excellent. I didnt know about this and i think i need it.
What’s this k command that’s your most used though? 👀
Does it track directory accesses per user or per window? My use case requires me to clone a git repo many times over the weeks, and it has the same directory structure under the hood. I normally have a unique window per clone. This would be great unless it is constantly pulling me to the wrong clone area!
As a student with a lot of folders to navigate between for different projects, zoxide is a life saver. I can’t recommend it enough!
Thanks for this tool! I should definitely give it a go. I am also very grateful of your video about Stow; I was managing my dotfiles the same way as you were, and I find Stow much more elegant too! So thanks :)
Also on an unrelated note, what's your keyboard?
I loved and Installed it already Thanks
Great video. Thanks
Thanks, this is fantastic! 🎉
such a great video! with a cooler intro command!!
history|awk '{print $2}' | sort | uniq -c | sort -nr | head -10
100 make
90 cd
66 sudo
57 git
56 ls
53 clear
47 vim
45 source
This feature is built-in into cd in oh-my-zsh for years
And you can install fzf and enable its plugin in your .zshrc to have the fzf feature
true and I had been using that but it gets slow with time because it’s mostly shell scripts, zoxide is faster with rust
will be handy, was work in the last years with wd (warp directory, a ohh my shell plugin).
Video is extremely well produced! Make more videos.
Never heard of this, but will install and start training it immediately. I can see how this would speed up a lot of my terminal navigation. Thank you! Great video!
Love this channel! I'd love to see your thoughts on either the zed code editor or the warp terminal
I love that apparently z -ls works as you might suspect. I'm going to give this a try.
ayyyy split spacebar gang! What do you have them mapped to? I use left thumb space and right thumb backspace. Also trying zoxide out now, cool vid :)