Nice looking tmux. Might apply some of these styles to my own config. 🙂I have been using the tmux sessionizer for over a year. It is a really game changer in terms of productivity.
Just found your channel, great stuff! I recently switched from vscode + vim binds to lazyvim and I'm so happy to live in the terminal. Tmux is so useful but I never liked the default binds so this video is really helpful!
Recently I have been watching a lot of your videos. I really like your content. And your neovim config looks really neat. If its not too much to ask, could you make a video regarding it?
12:22 it appears that it was the intention to link to another video, when you say, "If that's your style, you can check this video out" - but no link appears - and a few seconds later a link to your channel page, not a video. Curious what it was. I think I have a pretty decent and usable tmux config, but always curious to see what other people have setup. E.g., I just added the zoom icon to my title while watching this video. Though I'm currently working on a tool to manage sessions - a bit like tmuxinator - but more focused on rearranging windows and panes to suit the task you're working on. E.g. working on back-end code, the test runner is very much in focus, while making the UI look right, the test runner is hidden away to make room for a browser; until I need to implement the behaviour again.
As for the video link - for some reason it didn't show so I also added it to the last segment above the channel's icon, this is the direct link : ua-cam.com/video/0z6akhNyguw/v-deo.htmlsi=ropNpeu2xMnnH0ML As for a session manager - checkout github.com/omerxx/tmux-sessionx I also made a video covering that recently!
I'm using a bunch of plugins, what you're referring to is probably cattpuccin for tmux. I've got a video covering it and my entire setup on the channel, and you can find my config here: dotfiles.omerxx.com
@devopstoolbox aah yea so on my 2nd channel, i was preparing a video on tmux and found keycastr. But something was annoying me about. Will have to look into it again. Thank you! Great video btw
the big issue that I have with tmux, is the keybindings to do most stuff, you have to go through a prefix, which I really don't like, then I can't have the keybinds I want, like ctrl + arrow keys to navigate through my panes or ctrl + a number to go to a window all of that needs to go through that prefix, which is really bothering to me
I understand, and for a while I thought the same and hacked around it by sending keyboard combos that were interpreted as a prefix + my target action. With time, I figured this approach quickly gets out of hand with conflicting bindings. I have tmux, nvim, wezterm, raycast and not to mention macOS native bindings. (Not to mention further my keyboard combos and shortcuts burned into the board). So, I now think in “layers”, exactly like the keyboard layers dedicated for different scenarios and uses this is how I like other tools to behave. This doesn’t mean you can’t go and bypass it, it’s just an approach…
@@devopstoolbox I usually use tmux whenever I don't even have a desktop environment (for example, my dedicated servers or my home lab) so those don't really apply to me :D, I have no keybindings except those from the terminals
I used to have an HHKB (keyboard) and got used to having Ctrl where Capslock is. Ever since I'm remapping every board that way and I use it as Ctrl for everything I do, having 'a' right next to it and server as everything-tmux is amazing and in my muscle memory
@devopstoolbox where are you getting your fonts from? I'm trying to follow along but notice that many of your symbols (like the diamond) are missing from my system and I'd like to get them included. Thanks!
Question for you, at t=75s, neovim for me has jagged output from line breaks and other oddities, so it doesn't necessarily render all that well for me for pane output. Did you have to do anything special for your nvim config to allow tmux to sanely render nvim? great vid!
Thanks! I’m trying to think. I guess my best suggestion is to take a quick look at my dotfiles, under tmux.conf you’ll find a couple of terminal setting that may do the trick. Although I’m not 100% sure what’s the issue you’re facing it sounds like this could help - dotfiles.omerxx.con Under tmux/tmux.conf
Sorry, not sure where but I did show a section where I’m working “from scratch” where tmux has ^b as a default. Once it has the sensible configuration or I make the change on my config I change it to ^a
I used to have an HHKB (keyboard) and got used to having Ctrl where Capslock is. Ever since I'm remapping every board that way and I use it as Ctrl for everything I do, having 'a' right next to it and server as everything-tmux is amazing and in my muscle memory
Thank you for the video! Informative and aesthetically pleasing as usual :D Could you share what theme you're using in a plain terminal outside tmux? (sorry if I missed it in your dotfiles, I was looking for smth like zshrc)
Thank you! Of course, this would be cattpuccin as well 😅 Specifically, I use wezterm, this is the plugins: github.com/catppuccin/wezterm And this is my config for the theme: github.com/omerxx/dotfiles/blob/master/wezterm/wezterm.lua#L4
@devopstoolbox hey yesterday I replied with your video link where you used it but I guess you have a link filter, anyways the video where you explain about Ultimate db control in nvim. What is the thing in your screen that shows what you are typing along with the modifier keys like ctrl alt shift. Hope I made it clear. Sorry for the confusion.
@@devopstoolbox thank you sir, the video was quite old and I thought it would be hard for you to find it so, I tried the recent video but unfortunately you did not use keycastr here. I was unaware that you care so much about your viewers. I will for sure from now on. Have a good day sir
Nice video!, I'll look into your plugins. I too made my own version of tmuxsessionizer ^^, but I switch sessions from inside nvim (launching a tmux popup with fzf), it's pretty simple so I don't need any dependencies, and I only use project folders as sessions names, so I don't really need more features. ThePrimeagen's script really changed my workflow for the better. The only downside is I can't use tmux in windows (for unreal engine development). I'm trying to get another way to "sessionize" vim without tmux.
So that's actually what I do with but instead of a tmux popup - an fzf-tmux box which just looks nicer and does the same job. I had to have management tooling within it like all CRUD ops on my sessions. I was inspired by many tools one of which is the prime's but felt like I need a bit MORE - I'm working on K8s development and need a lot of additional consoles not necessarily running vim...
excellent, i thought of doing something similar but the issue was i could not create new session on the fly meaning if you search for session name and it's not present then it should create new session with the inputted name like you did at 10:55, but I was not able to implement it I'm using `tmux list-sessions | fzf` and it shows the active sessions but for non-matching input it returns blank :( so I tried reading your script and could not understand how you're doing this, is the new session being handled in `input` or `additional_input` in your script? thank you for the excellent work :)
Thanks! Two options- 1. Use the plugin :) and open an issue if you need / want additions 2. Do it yourself - to use the query even if not matching a result, fzf offers a feature of printing query anyway which I then grab and based on whether the session exists or not, decide whether to create it or switch
To achieve it on your own you can play with "window-status-format" and "window-status-current-format" however, in this video I'm using cattpuccin so using that there's slightly different set of configs: github.com/catppuccin/tmux?tab=readme-ov-file#override-windows-status-icons
@@devopstoolbox I also use catppuccin, are you saying the lines that you linked to should set it up, cause I've pasted them and I don't see the last window highlight functionality.
This is awesome but I work on a mac and dont have the alt key to perform a delete on a session. reading the readme I cannot see a way to remap it either :(
@@devopstoolbox Right you are, iTem needed a settings change for alt-keys to work in general. Setting the option key to esc+ so that it mirrors the alt key. Now artuin and Harpoon works as well :) Thanks for your reply it made me look at it again and not just accept it.
I really like your videos and your dotfiles they are so simple, but I would like to see about your zsh file, Could you share your zshrc? Thanks for content!
Thanks! Yes, TBH it’s the least interesting one and it’s not fully shared because it has sensitive data but maybe that’s a good reason to start using a local vault and make zshrc shareable!
If you can, share with us the list of plugin and what is plugin manager that you use. I’m very curious, I’m working in the weekend refactoring something’s in my dot files and you inspired me.
Hmm this is a Tmux intro, you’re referring to Neovim I assume? In any case, I’d install the LSP using mason and would probably also add it to my treesitter list of supported files
@@swapCode used alacritty for a long while. Didn’t like its lack of window management. Tried kitty, didn’t like its configuration. Wezterm checks every box for me.
tmux is better when we are inside a tty or ssh session, or using some graphical windows manager like gnome.... but, for me it's not useful for tailing windows manager like i3 (dwm, ....), it's very hard to manage GUI/panne with tmux, move a Gui/panne to another tag/session... because the i3/dwm tag could have Gui+terminal, but the session has only a view of terminals.
@@seanicus100 you have my config here: dotfiles.omerxx.com and your terminal needs to be able to show nerdfont, here’s an example: webinstall.dev/nerdfont/ I use wezterm for that.
That's odd! What's your stack? Are you running fish by any chance? I know that caused some issues. Sure you can debug this if you want, it's a plain bash script sitting under the plugins dir on your tmux config location. Please do let me know / open an issue / PR on github if you find it! Thanks!
Could you possibly make a tmux cheat sheet and put it in the tmux folder of your github? In the video, you're going too fast for me to really absorb what you're trying to teach.
This may explain it: ua-cam.com/video/_hnuEdrM-a0/v-deo.htmlsi=eG1672W9vmIkMcyz But the TL;DR is - bloated config that was getting hard to make sense of, complicated files with lots of code and a general sense of things getting out of hand.
for the love of god i cannot get the font to display these special symbols or what ever they are i only get ??? instead of them installed all kind of patched nerd fonts and it does not work at all.
That is definitely one thing that annoys me from time to time, but I've been too lazy to change it back to Ctrl - b lol. Worse, Ctrl - b is still a valid leader in my setup too and it's what I use. So Ctrl - a is doing nothing but blocking me from moving to the beginning of the line lmao
@@devopstoolbox Sound good. Unfortunately I ssh into a bunch of remotes daily, and because those are under puppet control, so I can't deviate too much from the defaults.
@@kash1222 oh wow! Haven’t been using puppet in probably 7 years! But definitely this is the use case - if your working with remote stations then is makes total sense to keep things the way they are. With a tiny caveat for myself - I used to do the same but made sure to wrap SSH with a small utility that copies my tmux.conf and my vimrc to the remote instance and then remove them when the session ends. But that me…
I copied your config files and whenever I open up the session manager I see /Users/omerxx/dotfiles as the first session. How would I simply get rid of that so it never comes back even when I delete it?
Sure, this line comes from my sessionx config, specifically here: github.com/omerxx/dotfiles/blob/878d067cc92622ed71c06e72815dcdb4801d6d2f/tmux/tmux.conf#L40 Change it with your own
Ctrl + b is simply a shortcut I don't use, I think it doesn't make sense. If you're a tmux user, at some point you probably have gotten used to not having ctrl b as an option. Over time moved that to 'a', but was already used to clearing with other methods. More over, My Ctrl is mapped to caps lock key where it makes far more sense for the fingers to reach. This is why Ctrl b became very streneous to use. 'cl' is my soltution, yet I don't use it often to prevent questions or to distract viewers.
@@devopstoolbox I am very new to neovim, tmux and all. I want to code java spring boot apps in neovim. Can you please make a detailed video about how to set up neovim for java developers? Thanks for replying
Hey!@@utkarshsharma5202 Sorry but I'm not a Java dev so can't give too much advice there. My stack usually includes Golang / Python and JS / TS when needed..
What I hate about this is same thing I hated about nano. It is not always installed by default like screen. So I vowed in that case to force myself to learn to use vi because I didn't always have the option to install nano.
Hmm I don’t think it’s a reason to hate it. TBH, I’m using multiple remote systems everyday in my line of work and I’ve yet to find myself on a machine that either didn’t have tmux or couldn’t install it in one min. The exception would be blacksite / isolated network deployments and these are rare enough for me to never think about. Also, usually the raw ones that don’t have tmux don’t have vi/vim either 🤷 All that said, this is addressing those who use tmux for their local environment
@@devopstoolbox understand your points. I have ran into this problem on few appliances that I supported in the past. They would have vi and/or just screen. So If I only new nano and tmux. It makes my job a little harder to have to learn on the fly via Google but it can be done. I kind of gave up on what would not be default installed on most builds just because having to learn another thing. While vi and screen would do the job and was defaulted alot more than nano and tmux. That was what I was getting at more than anything.
ngl, tmux was kind of my main reason for quitting vscode and switching to vim, [thought vim itself ofc, was a also on the first place] after leaning like, 3-4 new shortcuts, managing projects in tmux is just, super easy. Overall nvim+tmux are so easy to get better at, that's the main advantage of TUI applications = they all got simple repeating patterns, and once you learn them things get easy, even without much effort.
Beautiful tmux config! I'm on Ubuntu and I have a few questions if I may. How does the calendar work? I have a blank space where you have a palm tree. Also, how do you get the highlighting in your shell command output and in your editor? e.g. ua-cam.com/video/GH3kpsbbERo/v-deo.html
Thank you! As for the palm tree - make sure you have the font that has them installed (nerd font) and a terminal that renders them (mine is wezterm), and lastly make sure you have the config setup correctly with the custom plugin. Specifically the palm icon is a calendar plugin I hacked myself (not release-ready in any way) that requires a few other tools installed like iCalBuddy to interact with my local calendar. Since you’re on Linux, if you want the same functionality you’d have to chance the script to a CLI that can interact with yours… Re highlight, I’m assuming you referring to the “ls” output, which I replaced with exa. Bare in mind exa is no longer maintained and IIRC its successor is “eza”
Thanks for the reply! And thanks to you I'm now using wezterm and eza, tmux is in beast mode (awesome session manager by the way) and everything is beautifully themed with catppuccin! I'm just missing one thing. My editor of choice is vscode but I make quick edits in the terminal using nano. Nano has highlighting for some languages but I noticed you have highlighting in vim for conf files as well. Is that something you configured or is vim just that great?
@@phillpeters haha join the Neovim light 😅 Neovim has support for pretty much anything. This is made even easier with LSPs, and for syntax support Treesitter is something you want to be looking at. I’m going to pick a deep dive topic soon, will post the poll tomorrow, one of the topics is covering this specifically in the context of learning Neovim from scratch
I keep seeing Neovim mentioned wherever I haunt the internet and I'm interested in trying it but I'm intimidated by the learning curve. I'd love to see a video from you about learning Neovim. I voted for that but looks like I might lose out building a second brain with Neovim, which would have been my second choice anyway.
I was waiting and waiting and finally someone asks… The Moonlander has too many keys which for me is counter productive (my pinky can’t figure blindly where left shift is). Since all keys are the same size I decided to remove some so my fingers don’t lose their way. Still trying to figure out an elegant cover 😅
@@devopstoolbox just disable them in the layout editor (set them to be something like the international compose key or the Mac command key - assuming you're not on a mac)
@@iaina3251 of course I did. But when my finger looks for the shift key, that is just the same size as any other, and there’s yet another key below, it’s hard to find without looking and getting used to. Plus, I rarely ever reach this key anyhow.
@@devopstoolbox Took me a while to get to used to my Ergodox as well. I have a key combo for muting MS teams, CTRL+Shift+M that if next to the H key. Great if I'm actually using teams, but 9 times out of 10 I'm in Firefox which switches it to responsive mobile view instead.
Interesting video but this is not something I can use from scratch. I tried to follow along and wen to your dotfiles but you are not providing the configuration in a way I can easily use. This is more for people that already use tmux to get ideas.
"kill the shell with ctrl-d" - srsly? it's not killing, it's termination of stdin which leads to clean shutdown of the shell... i know that you are trying to use shortcuts to make that more enjoyable - but please do not mess the terminology...
The session manager is here: github.com/omerxx/tmux-sessionx
Join my newsletter here: omerxx.ck.page/profile
I built the tmux-sessionizer (tms) tool. Kinda blew my mind to just see it pop up on a youtube video that I was watching. Awesome video!
What an honor! tms was definitely an inspiration here! Thank you 😎
BTW, mentioned you in the project! github.com/omerxx/tmux-sessionx
Thanks for the TMS tool
Using tmux for quite some years now and I'm very happy to see it popping more often in youtube videos, people must know this awesome tool !
Nice looking tmux. Might apply some of these styles to my own config. 🙂I have been using the tmux sessionizer for over a year. It is a really game changer in terms of productivity.
Nice! Which one? The prime's? Or some other sessionizer? How do you use it daily?
Your love of tmux is admirable! :)
😎❤️
Thank you for this. I have been an uber screen user for many many years, been looking for a quick start to get to BEAST MODE :) in tmux :)
Just found your channel, great stuff! I recently switched from vscode + vim binds to lazyvim and I'm so happy to live in the terminal. Tmux is so useful but I never liked the default binds so this video is really helpful!
Thanks buddy! Let me know how it goes and whether you have any questions!
Dude, what an amazing video on tmux. Well done!
🙏🏽
Tmux makes your workflow environment flawless ❤
dude, your tmux plugin is so damn good. thanks for that
i shared it on my twitter
great vid btw :)
🙏
This is a clean looking UI. I was wondering what font you're using. Great vid!
Thank you! Using jet brains mono
Recently I have been watching a lot of your videos. I really like your content. And your neovim config looks really neat. If its not too much to ask, could you make a video regarding it?
Thank you for the video. Very helpful. Which font are using ? Thank you.
JetBrains Mono with NerdFont :)
The only thing that's making me cling to Zellij is layouts, but I will definitely switch to Tmux i guess now!
I had a great laugh when you said "another cool feature for the OCD suffering folks ..." @10:57 🤣😂
still don't understand why people use "clear" if there is the ctrl+L shortcut
I have “cl” mapped that’s easier for me, but in videos I found out people don’t always know shortcuts and this saves questions ;)
If i know how to change i would
It’s maybe better for screen shares to avoid excessive shortcuts.
I use vim-tmux-navigator and ctrl+L gets mapped to “move right pane” - more useful imo
Not have to leave the home row. Just like people prefer hjkl to arrow
12:22 it appears that it was the intention to link to another video, when you say, "If that's your style, you can check this video out" - but no link appears - and a few seconds later a link to your channel page, not a video. Curious what it was. I think I have a pretty decent and usable tmux config, but always curious to see what other people have setup. E.g., I just added the zoom icon to my title while watching this video.
Though I'm currently working on a tool to manage sessions - a bit like tmuxinator - but more focused on rearranging windows and panes to suit the task you're working on. E.g. working on back-end code, the test runner is very much in focus, while making the UI look right, the test runner is hidden away to make room for a browser; until I need to implement the behaviour again.
As for the video link - for some reason it didn't show so I also added it to the last segment above the channel's icon, this is the direct link : ua-cam.com/video/0z6akhNyguw/v-deo.htmlsi=ropNpeu2xMnnH0ML
As for a session manager - checkout github.com/omerxx/tmux-sessionx
I also made a video covering that recently!
How make my terminal look like this? with the time, the pills with panels etc, is this some plugin or theme?
I'm using a bunch of plugins, what you're referring to is probably cattpuccin for tmux. I've got a video covering it and my entire setup on the channel, and you can find my config here: dotfiles.omerxx.com
how do u get those nice rounded window tabs in tmux?
Edit: Ah, it's a catpuccin setting
A great mini tutorial as usual 🙂
So, you tried out Zellij and returned to tmux?
Thanks! Still juggling but tmux remains my daily driver
Newpane keybinding? Please
This is an amazing video. Watched it till the end.
Why are you wearing a coat while being inside?
😂
We had a couple of sub zero weeks in London which is non typical…
How the tab bar looks if there are a lot of windows open? Does those decorations (those right/left half-circles) overlap?
how did you get that pink background with the dots? the one at 1:00
What's the tool you used to print the key bindings on the screen may I ask?
Of course - look for keycastr on GitHub
@devopstoolbox aah yea so on my 2nd channel, i was preparing a video on tmux and found keycastr. But something was annoying me about. Will have to look into it again. Thank you! Great video btw
Where do you get your emojis?
@@1234minecraft5678 nerdfont!
the big issue that I have with tmux, is the keybindings
to do most stuff, you have to go through a prefix, which I really don't like, then I can't have the keybinds I want, like ctrl + arrow keys to navigate through my panes
or ctrl + a number to go to a window
all of that needs to go through that prefix, which is really bothering to me
I understand, and for a while I thought the same and hacked around it by sending keyboard combos that were interpreted as a prefix + my target action. With time, I figured this approach quickly gets out of hand with conflicting bindings. I have tmux, nvim, wezterm, raycast and not to mention macOS native bindings. (Not to mention further my keyboard combos and shortcuts burned into the board). So, I now think in “layers”, exactly like the keyboard layers dedicated for different scenarios and uses this is how I like other tools to behave. This doesn’t mean you can’t go and bypass it, it’s just an approach…
@@devopstoolbox I usually use tmux whenever I don't even have a desktop environment (for example, my dedicated servers or my home lab) so those don't really apply to me :D, I have no keybindings except those from the terminals
Great quality video, really interesting.
zellij 0.39.2 now has a session manager.
I know! And it’s great!
I still like mine better 😅
@@devopstoolbox how awesome is it that we now have both to chose from :)
Curious why you changed from prefix-b to prefix-a. The former seems easier.
I used to have an HHKB (keyboard) and got used to having Ctrl where Capslock is. Ever since I'm remapping every board that way and I use it as Ctrl for everything I do, having 'a' right next to it and server as everything-tmux is amazing and in my muscle memory
@@devopstoolbox you should've mentioned that in the video, was megaconfusing
@devopstoolbox where are you getting your fonts from? I'm trying to follow along but notice that many of your symbols (like the diamond) are missing from my system and I'd like to get them included. Thanks!
Hey! Get Nerdfonts installed!
what are you using to search in vim ? that little popup and also to search the tmux conf file
@@NeelmaniSingh-e5q this is noice.nvim taking the command line and puts in in a popup
Question for you, at t=75s, neovim for me has jagged output from line breaks and other oddities, so it doesn't necessarily render all that well for me for pane output. Did you have to do anything special for your nvim config to allow tmux to sanely render nvim? great vid!
Thanks!
I’m trying to think. I guess my best suggestion is to take a quick look at my dotfiles, under tmux.conf you’ll find a couple of terminal setting that may do the trick. Although I’m not 100% sure what’s the issue you’re facing it sounds like this could help -
dotfiles.omerxx.con
Under tmux/tmux.conf
Thats such a cool keyboard, whats the product?
ZSA Moonlander!
why do your nerdfont icons in the tmux menu bar look so much bigger than mine?
Which terminal emulator is that?
wezterm!
which font are you using?? I'm using meslo nerd font but still it misses some of the fonts.
JetBrains mono
halfway through video, "prefix" changed from ^b to ^a. confuse
Sorry, not sure where but I did show a section where I’m working “from scratch” where tmux has ^b as a default. Once it has the sensible configuration or I make the change on my config I change it to ^a
why are you using prefix ctrl+a later in the video?
I used to have an HHKB (keyboard) and got used to having Ctrl where Capslock is. Ever since I'm remapping every board that way and I use it as Ctrl for everything I do, having 'a' right next to it and server as everything-tmux is amazing and in my muscle memory
what's the alternative to this blessing for developers using Windows?
I thought you could run tmux just as easily on Windows but hadn’t actually tried…
@@devopstoolbox i was surprised too taking into consideration tmux's popularity
Hey where did u find those "curved" keycaps? Looks good
Not sure what are you referring to… my kb is pretty much stock (Moonlander) other than the switches that you can’t see
Whats your keyboard?
@@tiktalk4573 ZSA Moonlander
@@devopstoolbox Looks dope, can you do a review on it?
@@tiktalk4573 Planning to! Shortly :)
Thank you for the video! Informative and aesthetically pleasing as usual :D Could you share what theme you're using in a plain terminal outside tmux? (sorry if I missed it in your dotfiles, I was looking for smth like zshrc)
Thank you! Of course, this would be cattpuccin as well 😅
Specifically, I use wezterm, this is the plugins: github.com/catppuccin/wezterm
And this is my config for the theme: github.com/omerxx/dotfiles/blob/master/wezterm/wezterm.lua#L4
@@devopstoolbox Awesome, thank you very much! That's a great looking set of themes, I'm gonna try them out
Hey what is the screen key in the left bottom of the screen called? I love the way you explain and make your video.
Thanks! Not sure what you’re referring to. Can you point me to a specific timeframe?
@devopstoolbox hey yesterday I replied with your video link where you used it but I guess you have a link filter, anyways the video where you explain about Ultimate db control in nvim. What is the thing in your screen that shows what you are typing along with the modifier keys like ctrl alt shift.
Hope I made it clear. Sorry for the confusion.
@@sarojregmi200 ahh just comment on the specific video and you’ll be able to add time points!
This is Keycastr . Open source on GitHub
@@devopstoolbox thank you sir, the video was quite old and I thought it would be hard for you to find it so, I tried the recent video but unfortunately you did not use keycastr here. I was unaware that you care so much about your viewers. I will for sure from now on.
Have a good day sir
@@sarojregmi200 of course!
Every comment pops a notification and I try to answer them all 😉
Nice video!, I'll look into your plugins. I too made my own version of tmuxsessionizer ^^, but I switch sessions from inside nvim (launching a tmux popup with fzf), it's pretty simple so I don't need any dependencies, and I only use project folders as sessions names, so I don't really need more features. ThePrimeagen's script really changed my workflow for the better.
The only downside is I can't use tmux in windows (for unreal engine development). I'm trying to get another way to "sessionize" vim without tmux.
So that's actually what I do with but instead of a tmux popup - an fzf-tmux box which just looks nicer and does the same job. I had to have management tooling within it like all CRUD ops on my sessions. I was inspired by many tools one of which is the prime's but felt like I need a bit MORE - I'm working on K8s development and need a lot of additional consoles not necessarily running vim...
excellent, i thought of doing something similar but the issue was i could not create new session on the fly meaning if you search for session name and it's not present then it should create new session with the inputted name like you did at 10:55, but I was not able to implement it
I'm using `tmux list-sessions | fzf` and it shows the active sessions but for non-matching input it returns blank :(
so I tried reading your script and could not understand how you're doing this, is the new session being handled in `input` or `additional_input` in your script?
thank you for the excellent work :)
Thanks! Two options-
1. Use the plugin :) and open an issue if you need / want additions
2. Do it yourself - to use the query even if not matching a result, fzf offers a feature of printing query anyway which I then grab and based on whether the session exists or not, decide whether to create it or switch
@@devopstoolbox thank you, --print-query flag is what I was looking for :)
How do you get this functionality were the last active window is being highlighted?
To achieve it on your own you can play with "window-status-format" and "window-status-current-format" however, in this video I'm using cattpuccin so using that there's slightly different set of configs: github.com/catppuccin/tmux?tab=readme-ov-file#override-windows-status-icons
@@devopstoolbox
I also use catppuccin, are you saying the lines that you linked to should set it up, cause I've pasted them and I don't see the last window highlight functionality.
How do you edit spread sheets, sort images, preview videos, visualize data in charts, edit PDF files and cut audio files with this? Thanks! o)
Hmmm in other apps outside the terminal?
This is awesome but I work on a mac and dont have the alt key to perform a delete on a session. reading the readme I cannot see a way to remap it either :(
@@RichardEllison-f2v I’m working on a Mac myself! The option key should serve you and you can remap it as you wish!
@@devopstoolbox Right you are, iTem needed a settings change for alt-keys to work in general. Setting the option key to esc+ so that it mirrors the alt key. Now artuin and Harpoon works as well :)
Thanks for your reply it made me look at it again and not just accept it.
I really like your videos and your dotfiles they are so simple, but I would like to see about your zsh file, Could you share your zshrc?
Thanks for content!
Thanks! Yes, TBH it’s the least interesting one and it’s not fully shared because it has sensitive data but maybe that’s a good reason to start using a local vault and make zshrc shareable!
If you can, share with us the list of plugin and what is plugin manager that you use. I’m very curious, I’m working in the weekend refactoring something’s in my dot files and you inspired me.
@@martinsrso Of course! My dotfiles are here: dotfiles.omerxx.com
And the session manager is a plugin I built (omerxx/tmux-sessionx)
I read all of them that I had interest. Now I’m just waiting for the zsh and for new videos topics haha.
did you change your prefix in the first few minutes?
I’m always using Ctrl-A. Tmux, by default comes with B as a prefix unless sensible is installed or some other config. Are you referring to that?
does the location of tmux plugins need to be in .tmux... or can it be in xdg_config_home?
xdg works. Mine’s at ~/.config/tmux/plugins
Note that this means your main config file for tmux is tmux.conf (no preceding dot)
@@devopstoolboxoh awesome, thanks for tip!
How would I get Terraform language server to work with your setup?
Hmm this is a Tmux intro, you’re referring to Neovim I assume? In any case, I’d install the LSP using mason and would probably also add it to my treesitter list of supported files
@@devopstoolbox Yeah my bad. Sounds like we need a Neovim video from you ;) Thank you for providing your setup!
@@assafdori-j8h It's coming!! 😆
What terminal you use Kitty or ?
Wezterm 💪
@@devopstoolbox why you choice it over kitty, alacritty?
@@swapCode used alacritty for a long while. Didn’t like its lack of window management. Tried kitty, didn’t like its configuration. Wezterm checks every box for me.
tmux is better when we are inside a tty or ssh session, or using some graphical windows manager like gnome....
but, for me it's not useful for tailing windows manager like i3 (dwm, ....), it's very hard to manage GUI/panne with tmux, move a Gui/panne to another tag/session...
because the i3/dwm tag could have Gui+terminal, but the session has only a view of terminals.
Yep makes sense. I’m only using it for terminal applications and try to bring everything I can there
Hi, what theme do you use for your terminal ? I use powerlevel10k, but yours looks much nicer.
Thanks! The theme is cattpuccin but I’m guessing you’re asking about the prompt which is starship! Made a video about it recently you can check it out
@@devopstoolbox what font do you use ? Thanks
@@flywithoutwingss JetBrains Mono
Please tell me how you got those icons to work.
What icons? The tmux cattpuccin line?
@@devopstoolbox Yes.
@@seanicus100 you have my config here: dotfiles.omerxx.com and your terminal needs to be able to show nerdfont, here’s an example: webinstall.dev/nerdfont/
I use wezterm for that.
how about status-bar transparent, i need transparent
you can play with it, or eliminate it altogether with set status off
I installed your plugin and it pops up nothing for managing sessions - have your config file replicated too. Any idea how do I debug this?
That's odd! What's your stack? Are you running fish by any chance? I know that caused some issues.
Sure you can debug this if you want, it's a plain bash script sitting under the plugins dir on your tmux config location.
Please do let me know / open an issue / PR on github if you find it!
Thanks!
I had to install fzf and zoxide to get it to work. As soon as I did that, the keybind brought up the session manager.
Could you possibly make a tmux cheat sheet and put it in the tmux folder of your github? In the video, you're going too fast for me to really absorb what you're trying to teach.
@@ScottVargovich that’s a great idea, I’ll think of creating one or covering it in a video
Why did you switch from oh my tmux?
This may explain it: ua-cam.com/video/_hnuEdrM-a0/v-deo.htmlsi=eG1672W9vmIkMcyz
But the TL;DR is - bloated config that was getting hard to make sense of, complicated files with lots of code and a general sense of things getting out of hand.
for the love of god i cannot get the font to display these special symbols or what ever they are i only get ??? instead of them installed all kind of patched nerd fonts and it does not work at all.
Do you have the standard nerd font installed? What terminal are you on and what’s the configured font?
Don't you mis the Ctrl-a bind to go the start of the line? That prevents me from setting it as the prefix
That is definitely one thing that annoys me from time to time, but I've been too lazy to change it back to Ctrl - b lol. Worse, Ctrl - b is still a valid leader in my setup too and it's what I use. So Ctrl - a is doing nothing but blocking me from moving to the beginning of the line lmao
Not at all. I have B mapped for that (shift b) and TBH I use switch window motion infinitely more times a day so it makes sense.
@@LeviNotik kudos for that! Ctrl b breaks my brain and fingers simultaneously 😅
@@devopstoolbox Sound good. Unfortunately I ssh into a bunch of remotes daily, and because those are under puppet control, so I can't deviate too much from the defaults.
@@kash1222 oh wow! Haven’t been using puppet in probably 7 years!
But definitely this is the use case - if your working with remote stations then is makes total sense to keep things the way they are. With a tiny caveat for myself - I used to do the same but made sure to wrap SSH with a small utility that copies my tmux.conf and my vimrc to the remote instance and then remove them when the session ends. But that me…
I copied your config files and whenever I open up the session manager I see /Users/omerxx/dotfiles as the first session. How would I simply get rid of that so it never comes back even when I delete it?
Sure, this line comes from my sessionx config, specifically here: github.com/omerxx/dotfiles/blob/878d067cc92622ed71c06e72815dcdb4801d6d2f/tmux/tmux.conf#L40
Change it with your own
why ctrl + b is called prefix? Please explain sir. I know it is very basic.
Ctrl + b is simply a shortcut I don't use, I think it doesn't make sense. If you're a tmux user, at some point you probably have gotten used to not having ctrl b as an option. Over time moved that to 'a', but was already used to clearing with other methods. More over, My Ctrl is mapped to caps lock key where it makes far more sense for the fingers to reach. This is why Ctrl b became very streneous to use. 'cl' is my soltution, yet I don't use it often to prevent questions or to distract viewers.
@@devopstoolbox I am very new to neovim, tmux and all. I want to code java spring boot apps in neovim. Can you please make a detailed video about how to set up neovim for java developers? Thanks for replying
Hey!@@utkarshsharma5202
Sorry but I'm not a Java dev so can't give too much advice there.
My stack usually includes Golang / Python and JS / TS when needed..
What I hate about this is same thing I hated about nano. It is not always installed by default like screen. So I vowed in that case to force myself to learn to use vi because I didn't always have the option to install nano.
Hmm I don’t think it’s a reason to hate it. TBH, I’m using multiple remote systems everyday in my line of work and I’ve yet to find myself on a machine that either didn’t have tmux or couldn’t install it in one min. The exception would be blacksite / isolated network deployments and these are rare enough for me to never think about.
Also, usually the raw ones that don’t have tmux don’t have vi/vim either 🤷
All that said, this is addressing those who use tmux for their local environment
@@devopstoolbox understand your points. I have ran into this problem on few appliances that I supported in the past. They would have vi and/or just screen. So If I only new nano and tmux. It makes my job a little harder to have to learn on the fly via Google but it can be done. I kind of gave up on what would not be default installed on most builds just because having to learn another thing. While vi and screen would do the job and was defaulted alot more than nano and tmux. That was what I was getting at more than anything.
I installed sessionx but my menus look different.
Can you share them? Maybe as an issue on the repo?
i use kitty terminal
ngl, tmux was kind of my main reason for quitting vscode and switching to vim, [thought vim itself ofc, was a also on the first place]
after leaning like, 3-4 new shortcuts, managing projects in tmux is just, super easy. Overall nvim+tmux are so easy to get better at, that's the main advantage of TUI applications = they all got simple repeating patterns, and once you learn them things get easy, even without much effort.
i got distracted by the keyboard the whole time
Beautiful tmux config! I'm on Ubuntu and I have a few questions if I may. How does the calendar work? I have a blank space where you have a palm tree. Also, how do you get the highlighting in your shell command output and in your editor? e.g. ua-cam.com/video/GH3kpsbbERo/v-deo.html
Thank you!
As for the palm tree - make sure you have the font that has them installed (nerd font) and a terminal that renders them (mine is wezterm), and lastly make sure you have the config setup correctly with the custom plugin. Specifically the palm icon is a calendar plugin I hacked myself (not release-ready in any way) that requires a few other tools installed like iCalBuddy to interact with my local calendar. Since you’re on Linux, if you want the same functionality you’d have to chance the script to a CLI that can interact with yours…
Re highlight, I’m assuming you referring to the “ls” output, which I replaced with exa. Bare in mind exa is no longer maintained and IIRC its successor is “eza”
Thanks for the reply! And thanks to you I'm now using wezterm and eza, tmux is in beast mode (awesome session manager by the way) and everything is beautifully themed with catppuccin! I'm just missing one thing. My editor of choice is vscode but I make quick edits in the terminal using nano. Nano has highlighting for some languages but I noticed you have highlighting in vim for conf files as well. Is that something you configured or is vim just that great?
@@phillpeters haha join the Neovim light 😅
Neovim has support for pretty much anything. This is made even easier with LSPs, and for syntax support Treesitter is something you want to be looking at.
I’m going to pick a deep dive topic soon, will post the poll tomorrow, one of the topics is covering this specifically in the context of learning Neovim from scratch
I keep seeing Neovim mentioned wherever I haunt the internet and I'm interested in trying it but I'm intimidated by the learning curve. I'd love to see a video from you about learning Neovim. I voted for that but looks like I might lose out building a second brain with Neovim, which would have been my second choice anyway.
@@phillpeters NOTED!
Thanks for the feedback!
Dude, your keyboard broken in half - not sure why you show that in the video!
🤣😂
no one is going to ask about the missing keyboard switches?
I was waiting and waiting and finally someone asks…
The Moonlander has too many keys which for me is counter productive (my pinky can’t figure blindly where left shift is). Since all keys are the same size I decided to remove some so my fingers don’t lose their way. Still trying to figure out an elegant cover 😅
@@devopstoolbox just disable them in the layout editor (set them to be something like the international compose key or the Mac command key - assuming you're not on a mac)
@@iaina3251 of course I did. But when my finger looks for the shift key, that is just the same size as any other, and there’s yet another key below, it’s hard to find without looking and getting used to. Plus, I rarely ever reach this key anyhow.
@@devopstoolbox Took me a while to get to used to my Ergodox as well. I have a key combo for muting MS teams, CTRL+Shift+M that if next to the H key. Great if I'm actually using teams, but 9 times out of 10 I'm in Firefox which switches it to responsive mobile view instead.
@@iaina3251 exactly :)
Interesting video but this is not something I can use from scratch. I tried to follow along and wen to your dotfiles but you are not providing the configuration in a way I can easily use. This is more for people that already use tmux to get ideas.
I don't like christmas tree XD
🤣
Williams Michelle Anderson Timothy Brown Anna
Lopez Susan Young Angela Brown Anthony
iterm...
Good video, but WHOA! Too fast with not enough explanation to make things clear for beginners.
@@wharkkyryhniann8023 noted 🙏
tmux terminal nerd vs i3 window manager giga chad.
Really great environment but poorly explained.
Sorry mate, what could I have done better?
"kill the shell with ctrl-d" - srsly?
it's not killing, it's termination of stdin which leads to clean shutdown of the shell...
i know that you are trying to use shortcuts to make that more enjoyable - but please do not mess the terminology...
btw. about the rest of this tiny detail - great video! thx!
next resource to share with my coworkers and companions ;)
🫡😉
your video hurts my eyes. lol. we really don't need to see you typing.
thanx...