I'm Never Using Tmux The Same Again!

แชร์
ฝัง
  • เผยแพร่เมื่อ 13 ม.ค. 2025

ความคิดเห็น • 89

  • @devopstoolbox
    @devopstoolbox  4 หลายเดือนก่อน

    Join 2000+ subscribers getting one dev/sec/ops tip every Friday: signup.omerxx.com

  • @offensive-operator
    @offensive-operator 5 หลายเดือนก่อน +13

    Many people recommend using Zellij, but I've been a dedicated tmux user for over a decade. Given my fluency and comfort with tmux, I don't see a compelling reason to switch to another tool. Thank you for your incredible work. I have just included this plugin to my configuration. THANK YOU!

  • @JefCollier
    @JefCollier 5 หลายเดือนก่อน +1

    I love your content and immediately fell into the exact scenario you depicted in the "less key strokes" methodology. Using tmux has broken my habit for tabs or even windows. I tend to fire up panes and either zoom as described or I run something and exit.
    I'm convinced and now I'll absolutely give this a try and see if I dig the workflow. I dragged my feet integrating lazygit with neovim due to my pane swapping, but I've gotten rid of that flow in favor of just a simple lg. It really does come down to minimizing flowstate interruptions.

  • @animanaut
    @animanaut 5 หลายเดือนก่อน +23

    small hint: you don't need to zoom out. you can switch panes without it. i just wish i could switch panes while still being zoomed in.

    • @re1konn
      @re1konn 5 หลายเดือนก่อน +2

      exactly. Was going to comment the same thing

    • @rochakgupta6116
      @rochakgupta6116 5 หลายเดือนก่อน +6

      @@re1konn Should be possible as tmux is very scriptable. Instead of binding key to switch to the pane, we could check if the current pane is zoomed in, switch to the pane and then zoom in if the current pane was zoomed in.
      Edit: Found it "bind -r Up select-pane -ZU" would maintain the zoom state ("-Z" is the flag doing that).

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน +8

      @@animanaut totally. I should have made my point clearer- when the other pane isn’t visible I tend to forget either it’s there or where exactly is it (to the sides on down). I developed a habit of zooming out because I’m never really sure.
      Great point though

    • @nickmills8476
      @nickmills8476 3 หลายเดือนก่อน

      I have keys bound to each pane (in order of pane creation). This way you don’t have to remember relative positions of one pane to another. Declarative vs Imperative…or something like that.

    • @haroonalbar2725
      @haroonalbar2725 3 หลายเดือนก่อน

      Hey I got it working with the help of gpt. Hope it helps.
      ```
      # Enable switching between zoomed panes without unzooming using Ctrl+Alt+hjkl
      bind -n C-M-h if-shell "[[ #{window_zoomed_flag} -eq 1 ]]" "resize-pane -Z ; select-pane -L ; resize-pane -Z" "select-pane -L"
      bind -n C-M-j if-shell "[[ #{window_zoomed_flag} -eq 1 ]]" "resize-pane -Z ; select-pane -D ; resize-pane -Z" "select-pane -D"
      bind -n C-M-k if-shell "[[ #{window_zoomed_flag} -eq 1 ]]" "resize-pane -Z ; select-pane -U ; resize-pane -Z" "select-pane -U"
      bind -n C-M-l if-shell "[[ #{window_zoomed_flag} -eq 1 ]]" "resize-pane -Z ; select-pane -R ; resize-pane -Z" "select-pane -R"
      ```

  • @rochakgupta6116
    @rochakgupta6116 5 หลายเดือนก่อน +3

    This is the only thing from zellij I wanted in tmux. Thanks so much! I had been using a script I hacked together that did something similar but was limited in functionality due to my limited tmux scripting knowledge. Will definitely give this a shot and maybe pick a few things!

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน +1

      @@rochakgupta6116 Brilliant! Feel free to give feedback and open issues!

  • @Thundechile
    @Thundechile 5 หลายเดือนก่อน +14

    I still don't quite get the reason for using floating windows. I can press prefix+c to create window and it's already full screen. Then just prefix+number to jump back where I left.

    • @vivekjha8688
      @vivekjha8688 5 หลายเดือนก่อน

      1. Quite useful often to have soem visual context behind the terminal (hence why i use the default 80% but sometimes use his "decrease size" hotkey)
      2. Doing your way will be creating a new window each time - to manage this you must either add an extra step "close window" (for me its: prefix + C-w) after each occurrence or leave them all open and batch close them peiodically or end of your session.
      Having a floating terminal that auto cd's into the currently spawned process's folder is pretty handy for minimal and quick toggling (prefix + p)

    • @sarca571ca
      @sarca571ca 5 หลายเดือนก่อน

      The biggest benefit that I’d get out of this is that I’m always in need of a quick terminal. Whether that’s running bash command or compiling/running programs or modifying a configuration file quickly. I love the utility of tmux but sometimes switching to do different sessions gets to be to much bouncing around.

  • @rwz
    @rwz 5 หลายเดือนก่อน +9

    If tmux didn't add such an render overhead. Since I noticed how much faster a vanilla terminal is, i can't not notice it.
    But still tmux is a must!

  • @Subbeh2
    @Subbeh2 5 หลายเดือนก่อน

    Been using it for a while now and loving it. One thing that would make it even better is the option for multiple "floax". I.e I'd use C-p to open a scratchpad and C-n to open one with neovim automatically started in my notes dir.

  • @threee1298
    @threee1298 5 หลายเดือนก่อน

    Great stuff as always, i admire the confidence and persistence it takes to make these plugins, very inspiring!

  • @EmileNani
    @EmileNani 5 หลายเดือนก่อน

    This is pretty cool. I built my own implementation of something similar a while back. I have some bound to their own keymaps. Alt-g opens up Lazygit in a float. Alt-c opens up the cwd in a float. Alt-q opens up a float in ~. On other thing I did is they are sessions essentially. So if I have a float opened with Alt-q but then I press Alt-g it'll chnage the float to lazygit. That way I can cycle my floats and go back to my regular work once finished. If I use any of those binds to open the float. Ie Alt-g, I can press Alt-g again to close the session. If I want to persist the float and come back to it later, I can press Alt-d.
    Very nice plugin bruv!

  • @comosaycomosah
    @comosaycomosah 5 หลายเดือนก่อน +3

    Lmao oh that's sick with cmatrix under it! Good job dude! Will star it later

  • @lebaptoumetrage6396
    @lebaptoumetrage6396 5 หลายเดือนก่อน +2

    The plugin is good, and it’s really good to have active new plugins. But I really think that you are creating your problem with the zoom functionnality. You could think about simplifying your workflow by having a short on Alt + j/k/l or ; to have quick access to to 4 panes at all times like a sort of tmux version of harpoon (alt f/d/s or a). This allows you to Build up muscle memory around it, which is always better than arbitrary controls based on what you see (zooming in, zooming out, floating windows).

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      @@lebaptoumetrage6396 worth thinking about it thanks!

  • @piersolenski
    @piersolenski 5 หลายเดือนก่อน +3

    This is cool, what are the advantages of using it over a floating (and split) terminal system in Neovim itself though? That way you can benefit from all the quick key strokes, still do things like pane splitting, as well as using normal mode to yank text easily with vim motions.

    • @ivyZorz
      @ivyZorz 5 หลายเดือนก่อน

      I know many who use the tmux+nvim combo prefer to completely ignore the tabs and panes supplied via nvim and entirely use tmux to handle all windowing. It keeps things rather consistent and easier to keep track of this way. Verses having a hybrid of neovim panes, tabs and tmux windows and panes.
      Of course with these tools its entirely based on your preference at the end of the day as its your config :)

    • @rochakgupta6116
      @rochakgupta6116 5 หลายเดือนก่อน +1

      @@ivyZorz I think they both have their own use cases. For quick one off things, I use the built in terminal. For others, a separate tmux pane/window works best.

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน +2

      @@piersolenski you got excellent answers but I’ll add: tmux and Neovim work in tandem. Yes, both can split but the tmux splits are much easier to handle. Plus, I rather have my shell prompt outside Neovim, mainly for workflow separation. With tmux I can manage different sessions and long living panes and now with floax I can pop the occasional overflowing terminal for every need

  • @sarojregmi200
    @sarojregmi200 5 หลายเดือนก่อน +1

    It's an interesting way to work. Will give it a try once i am free. Good work.

  • @seanturner7400
    @seanturner7400 5 หลายเดือนก่อน

    Thanks for all of the videos. Now using wezterm and tmux for the past couple of weeks and liking it much more than iterm. Tried zellij and while was super easy, it had a weird crash once (didn't take long) while tmux seems rock solid.
    Now just need to get python working with neovim (and devcontainers) and I think I'll be done. And also some sort of vim motions for selection (I know wezterm has a little of this, haven't dove in yet) (a delete-in-word motion would be lovely).

    • @seanturner7400
      @seanturner7400 5 หลายเดือนก่อน

      Also need to get certain hidden files to show up in telescope lol. And figure out macros (I found a good video, it's just a matter of sitting down). And using registers. And then I'm actually done.

  • @youngsinatra2645
    @youngsinatra2645 3 หลายเดือนก่อน +2

    What made you switch from zellij back to tmux?

    • @devopstoolbox
      @devopstoolbox  3 หลายเดือนก่อน

      @@youngsinatra2645 the ability to customise everything with ease and the fact that it’s ubiquitous and use a lot of remote servers daily

  • @sunilunnithan
    @sunilunnithan 3 หลายเดือนก่อน +1

    How do you create multiple floating with a dedicated key binding?

    • @devopstoolbox
      @devopstoolbox  3 หลายเดือนก่อน +1

      @@sunilunnithan there’s no option for multiple panes yet… I’m limited by Tmux and its capabilities

  • @SirJagerYT
    @SirJagerYT 5 หลายเดือนก่อน +3

    Nice video, learned a lot from you. I finding no tutorials for setting up php for neovim, and i idk my configs are not working. Can you make a short video on setting up neovim for php. If not please name some lsp, linters n all for php

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน +2

      @@SirJagerYT I’m not a big PHP guy so can’t recommend anything. My typical environment is mainly Go, sometimes JavaScript and Python..

  • @elixirfun
    @elixirfun 5 หลายเดือนก่อน +2

    All is good, I really want to love Floax, but it doesn't provide the "focus lost" event for the bottom windows when I open the pop-up, which breaks my flows.

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      @@elixirfun can you think of a way to make it more suitable for your style?

    • @elixirfun
      @elixirfun 5 หลายเดือนก่อน

      @@devopstoolbox Not sure I understood the question, but it would be nice if it would. behave as other tmux panes, by firing the "focus lost" event to those staying on the back. I submitted an issue on Github with more details, let's discuss there? Thanks 🙏

  • @beepwhoop
    @beepwhoop 5 หลายเดือนก่อน +1

    Didn't you switch to Zellij full time? You mentioned this in some of the previous videos.

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน +1

      I did. And after a while came back and built my own tooling around things I missed - github.com/omerxx/tmux-sessionx
      and github.com/omerxx/tmux-floax

    • @beepwhoop
      @beepwhoop 5 หลายเดือนก่อน +1

      @@devopstoolbox thanks for the clarification! What would I be missing if I opt for Zellij, since I believe those are already implemented natively?

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน +1

      @@beepwhoop Hard to put in a few lines, but if I must - customizability (is this a word?). You can make Tmux do pretty much anything. And when you can't you build the thing. Zellij is a bit more complicated in that regard. I prefer a very lean look and controlling tmux the way I'm used to

  • @markandrews1219
    @markandrews1219 4 หลายเดือนก่อน

    Is it possible to enable scrolling bars for each individual pane?

  • @sideone3581
    @sideone3581 5 หลายเดือนก่อน

    using a TWM then move one of the terminal window to the special workspace ( using hyprland ) do a tmux attach and boom just switch back and forth

  • @solime7777
    @solime7777 3 หลายเดือนก่อน

    How did you get rid of that opaque tmux bar connecting all the small modules

    • @devopstoolbox
      @devopstoolbox  3 หลายเดือนก่อน

      @@solime7777 not sure what you’re referring to? Hiding the status bar?

    • @solime7777
      @solime7777 3 หลายเดือนก่อน

      @@devopstoolbox there are total 4 modules , 2 left and 2right and all those are connected by a mocha colored line , so when terminal is opaque and having mocha theme I don’t see the line, but when I make the terminal transparent a opaque line joining the modules are show I want it to be transparent Thankxyou

    • @devopstoolbox
      @devopstoolbox  3 หลายเดือนก่อน

      @@solime7777 few things to note -
      1. my opacity in videos is the result of video editting not an actual config
      2. daily work is always done on a full color background for me
      3. that said, check my config, specifically this line (and file): github.com/omerxx/dotfiles/blob/master/tmux/tmux.conf#L3

    • @solime7777
      @solime7777 3 หลายเดือนก่อน

      @@devopstoolbox oh thanks❤️;;

  • @felipemaximo
    @felipemaximo 5 หลายเดือนก่อน

    Please make a video about your keyboard, layouts that you have and so on... it could nice to compare. Thanks man

  • @UdayNarayanVishwakarma
    @UdayNarayanVishwakarma 5 หลายเดือนก่อน

    Thank you for creating this plugin. I recently got into the terminal ecosystem with lazyvim and tmux. After watching your video I tried zellij and liked the clear separations in every window and intuitive keybinds but it interfered too much with my vim keybinds so I moved back to tmux and made non conflicting ones for moving around and changing tabs, inspired by zellij. I also missed the floating window and thanks to you I've found it.
    Btw has anyone else found a way to highlight every screen with or without split get a border like in zellij which shows proper separation?

  • @asahfikir
    @asahfikir 5 หลายเดือนก่อน

    Love this. Thank you man.

  • @pablocoyote9647
    @pablocoyote9647 5 หลายเดือนก่อน

    Ok i finally masterered sessionx yesterday and you decide to pull out a new plugin this very day!
    One functionality I still miss from tmux is the auto resize of panes so that when you switch in a pane it slightly becomes wider and taller than others. This could be a very confy user exp functionality.
    Btw My wife hates you

  • @achananagadurgaprasad5442
    @achananagadurgaprasad5442 5 หลายเดือนก่อน

    How do I delete the session in mac => alt backspace which isn't there i tried using opt+dlete but doesn't work ? Any help will be highly appreciated. Thankyou.

  • @Redyf
    @Redyf 5 หลายเดือนก่อน

    This plugin has great potential

  • @useless274
    @useless274 11 วันที่ผ่านมา

    you don't need to zoom out to switch panes, you can still switch to a hidden pain

  • @zerotheory941
    @zerotheory941 5 หลายเดือนก่อน +2

    pssst... a little birdy came and whispered something in my ear.. .it was "tmatrix.. use tmatrix instead"
    What do you think it means?

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      @@zerotheory941 haha thanks! I’ll give it a try :)

  • @AlaaSaidAhmad
    @AlaaSaidAhmad 5 หลายเดือนก่อน

    What Linux distro do you use as a daily driver

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      My local machine is a Mac. Running remote cloud infra, I usually opt for Alpine linux which is amazing for containers IMO

  • @on8t
    @on8t 5 หลายเดือนก่อน

    when you're zoomed into 1 pane, you still can just use a key to switch to another pane, it will zoom out automatically

  • @danygagnon8446
    @danygagnon8446 4 วันที่ผ่านมา +1

    I don't understand how it is different to adding something like :
    ```
    bind -n F1 if-shell -F '#{==:#{session_name},scratch}' {
    detach-client
    } {
    popup -d '#{pane_current_path}' -E -h 35% -w 100% -y 65% 'tmux attach -t scratch || tmux new -s scratch'
    }
    ```
    to a tmux configuration?

    • @devopstoolbox
      @devopstoolbox  4 วันที่ผ่านมา +1

      It's not extremely different, but it's configurable, pluggable with other plugins, control-able from within the window and a bunch of other options that take your script and make a plugin out of it :)

  • @Netist_
    @Netist_ 5 หลายเดือนก่อน +1

    Nice work, but I'm not a fan of floating windows. I feel the same about when people add floating windows to neovim. It really clashes hard with the flow of tiling window management.

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      @@Netist_ that’s why I wanted something native! The floating pane is using a popup so Tmux knows how to handle it in terms of visualization

  • @347Online
    @347Online 5 หลายเดือนก่อน +1

    A developer taking a Wix sponsorship feels super weird IMO 😬
    Loved the video though, floax looks really cool

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      @@347Online my words exactly 😅
      But if it helps create more content and plugins.. who am I to say no

    • @347Online
      @347Online 5 หลายเดือนก่อน

      @@devopstoolboxgots to get dat paper somehow i guess lmao

  • @4wdandcoffee
    @4wdandcoffee 5 หลายเดือนก่อน

    if you are already using vim, it has float terminal

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      @@4wdandcoffee yep. But as I mentioned, this creates an inception problem for me. 1. I don’t like Neovims terminal bindings and 2. I want Tmux to manage my shells

  • @Ohmygodzilla
    @Ohmygodzilla 5 หลายเดือนก่อน

    I do understand that you like macOS and believe me, I do too. but I get the feeling that you would be much happier with a Linux OS. Both arch and Ubuntu are compatible with Mac systems, it's not perfect but still good enough. Love your guidance but tmux haven't found it's way for me in a work environment yet, and I don't think it will since I use a tiling wm (den) for now.. ❤

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      @@Ohmygodzilla I’m sure I will :) it’ll happen too!

  • @newmarketfinder
    @newmarketfinder 5 หลายเดือนก่อน

    Cool, makes sense

  • @RudraNarayanPanda-s2t
    @RudraNarayanPanda-s2t 5 หลายเดือนก่อน

    Bro, the terminal is just awesome, please help me build the same.

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      @@RudraNarayanPanda-s2t check out my recent workflow video where I cover everything I have!

    • @RudraNarayanPanda-s2t
      @RudraNarayanPanda-s2t 5 หลายเดือนก่อน +1

      @@devopstoolbox I tried applying same changes but my terminal ui nerver looks good, its normal, no glassy effect or cleaner view. are you using a different terminal?

    • @RudraNarayanPanda-s2t
      @RudraNarayanPanda-s2t 5 หลายเดือนก่อน

      @@devopstoolbox is this because I am on ubuntu and you r on arch?

    • @devopstoolbox
      @devopstoolbox  5 หลายเดือนก่อน

      @@RudraNarayanPanda-s2t I think you’re mixing the setup with some video editing plugins I’m also applying 😕
      That’s the “glassy” view. You can partially achieve it with wezterm config but I don’t run it in transparent mode

    • @rnp0728
      @rnp0728 5 หลายเดือนก่อน +1

      @@devopstoolbox​​⁠can you please put the exact video link here! I just want to make my terminal awesome😅, mine looks minimal as of now. I am the same guy who commented above don’t get confused, please help me out.

  • @Greenmarty
    @Greenmarty 7 วันที่ผ่านมา

    Isn't it interesting how people over time keep going in circles from panes/tiles to floating windows just to emulate panes/tiles inside floating window and emulate floating window inside panes/tiles.
    🔁🔁🔁🔁

  • @hesam-init
    @hesam-init 5 หลายเดือนก่อน

    Btw is use zellij :)

  • @reaperal7479
    @reaperal7479 10 วันที่ผ่านมา

    Could you please tell me, how to make the tmux status bar transparent?🥲💝