Great stuff! I had watched it before and it served as valuable inspiration to implement my own system. I watched it again and it inspired me again to simplify and streamline things. Thanks Josh!
I watched this video many time and still haven't implemented everything just yet (but working on it). Its so good!!!! ... All your videos are packed of good info. Keep up the awesome amazing 'jaw dropping' 😁work!
I have a simple pair of scripts, tm and tmx, for creating and reattaching (tmx is separate so I can have command completion via querying tmux list-sessions). By doing this I can add various shorthands as I desire them.
Great video, this is something I've been fighting with for so long! I ended up creating a custom Raycast extensions with the same functionality of the popup window since I didn't know the tmux pop-up fzf existed. This is going to be so much better. Thank you
If you don't want to use zoxide, you can set the CDPATH variable, it's like PATH but the cd command looks at the CDPATH list to determine what to CD into and the default is your current directory. available on POSIX computers
I really like the format of the video and the way you present things. Would love to see deep dive into you neovim setup! As for the tmux I didn't quite get why would you want to have new tmux sessions created for every folder you jump in? p.s. lazygit is really cool, thanks for the tip!
My keyboard shortcuts, scripts, and some other tools typically expect the session root to be a git repository. So it allows me to be focused on a single project at a time. I can share more in a future video!
always great stuff Josh, cheers. I likely wont need that level of session management in tmux for what I do, but the idea of combining fzf with the results list from zoxide is great and gives me some ideas.
@@JoshMedeski My problem is sometimes remembering the foldername in which case zoxide cant really help me (although to be fair zoxide can also tab completed suggestions) with a fzf or broot over folder structures I atleast get a view of names to remind me. but on mac I find that because there are SO many system directories fzf can be slow as it struggles with all those. Whats great about this idea for me is to have a fzf over an already curated list of folder names that zoxide knows I use and so it can be super fast :) I used to alias broot and zoxide to start in a specific folder to help it not having to index the entire tree each time, but this way I wont have to ;)
This seems pretty damn cool! I just started using tmux recently and I keep using the tab left and right techniques which seem very inefficient (I'm too used to web browsers). But creating a session per project sounds a lot better and faster
I found your tmux plugin (in a video from another user) - it works great! You should probably mention it in this video somehow, either in the description or pinned comment. I know it's the first link in your notes document, but still. Thanks for make a great tool.
Really nice video. I like the concept, been using the "tmux sessionizr" ThePrimeagen built sometime ago, which works kinda the same. Haven't heard of Zoxide yet. Just installed it and will give it a go today.
Loving the content, have implemented a bunch of your ideas into my workflow. Can I ask how you set up gitmux with tmux to show git info in the status bar? I am also using fish & alacritty.
Absolutely amazing and helpful video. Would like to know how to get t into PATH tho 😬 What font were you using in this video by the way? It's not JetBrainsMono right?
Thanks! Zoxide ranks directories based off recent usage and how much a directory is used. You’ll get used to the ranking system after using it for awhile
@@JoshMedeski ok, if you use a directory name multiple times z changes to that with the most search requests. in this case you only can z to a unique upper level directory.
I know I'm a bit late to the party, but I tend to just use multiple windows on the same tmux session (appearing as tabs, and then each with multiple panes as needed). Do you think it would be difficult to modify your plugin to suit that need?
So my script is specifically for session management. Feel free to borrow my ideas for creating a window or pane manager if you think it’s a good idea for your workflow!
@@JoshMedeski Looks like I fixed it by adding `set -Ux FZF_DEFAULT_OPTS "--color=..."`. Anyway, I am still looking forward to see your videos, love them. Thanks
you have several paths that end with lazygit. what happens if you select one and then another, would you now have two tmux sessions with the same name (if that is even possible)?
It's built into the `tt` script github.com/joshmedeski/dotfiles/blob/main/mackup/.config/bin/tt and I have it commented to a macOS keyboard shortcut (cmd+j) using Alacritty (see ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-BLp61-Lq0kQ.html). Hope that helps.
I notice this doesn't work for paths stored in the zoxide database that include a space. Example: PATH = "~/Documents/Cool Stuff/project" Will create a tmux session named "Cool" and won't zoxide to the folder "project". This is probably trivial enough to fix for someone who writes shell scripts on the regular, but that ain't me at the moment haha. Anyone got ideas?
@@JoshMedeski That would be great, thanks! I don't really use spaces either, only realised once I was in some iCloud folder that had "Mobile Documents" as part of the path.
Great stuff, but I see you are using fish. It's really a small detail, but is there any reason you didn't choose to make a function for t instead of a script ?
A bash script is easily transferable to other shell environments, I’ve already had some good contributions thanks to the format and people using zsh use the script as well.
Instead of using sed to get the name of the current directory, you can just use the basename command. For example (in Bash, but it is not a bash-builtin), if I'm in my home directory: > basename $PWD travisbhartwell
@@JoshMedeski No problem! I actually have a similar set up that I use that includes integration with Alfred, iTerm integration, and opening my session picker whenever a new terminal is opened that isn't already part of a session. I think I'll try to get my stuff cleaned up and at least blog about it.