FZF Will CHANGE How You Work

Поділитися
Вставка
  • Опубліковано 18 тра 2024
  • FZF is useful in so many ways. It's one of my favorite tools, and it's simple yet genius.
    LINKS
    ▶ fzf --preview 'bat --style=numbers --color=always {}'
    ▶ github.com/junegunn/fzf
    ▶ github.com/ggreer/the_silver_...
    ▶ github.com/BurntSushi/ripgrep
    ▶ github.com/omerxx/dotfiles
    CONSIDER SUPPORTING THIS CHANNEL
    If you feel like you want to support my work, feel free to use the links below or use my affiliate links for the gear I'm using to record.
    Thanks!
    👕 Cool Swag shop.omerxx.com
    ☕ Buy me a coffee: www.buymeacoffee.com/omerxx
    🎷 60 day free Epidemic Music!: share.epidemicsound.com/w6zfxo
    MY FAVOURITE GEAR
    * If you enjoy my content, using the links below will help me with a small commission, so thank you!
    ⌨️ My keyboard is the wonderful HHKB: amzn.to/3HwJG60
    🔗 The HHKB is wired with a high quality coiled cable: amzn.to/3DCA87d
    ⌨️ Backup keyboard (for traveling mainly) - Nuphy Air60: amzn.to/3R3M7jz
    🖥️ My ultra wide 49" monitor: amzn.to/3JbVThC
    🎙️ Microphone - Shure MV7X: amzn.to/3kA7tZZ
    🦾 Boom Arm - amzn.to/3ZmQgln
    🎤 Audio Interface (for XLR microphones) - Focusrite Scarlett Solo: amzn.to/3Z3fBkQ
    🦾 Heavy Duty Monitor Arm: amzn.to/3kKp7tS
    🖱️ Mouse - MX Master 3: amzn.to/3DiZmaj
    📷 Camera - ZVE10: amzn.to/3I1jfVS
    🎥 Lens - Sigma 1.4 16mm: amzn.to/3BfFN15
    MY KEY LINKS
    📰 Join my newsletter! newsletter.omerxx.com
    🍿 Subscribe: www.youtube.com/@devopstoolbo...
    👕 Store: omerxx.myspreadshop.com/
    🌍 My website: omerxx.com
    🗞️ Dev & Ops tools Telegram channel: t.me/espressops
    🎙️ DevOps Topeaks Podcast: podcast.omerxx.com
    ⏱ Timestamps
    00:00 - Intro
    00:50 - How it works
    01:48 - Searching history
    02:48 - Switch directories
    03:23 - Autocomplete trigger
    03:52 - Zellij release!
    04:25 - Integrating with ag
    05:40 - More uses
    05:58 - FZF in the wild
    #productivity #fzf #UX #neovim #terminal #system #program #dev #devops #software #sysadmin #sysops #linux #terminal #console #cli #keyboard #commandline
  • Наука та технологія

КОМЕНТАРІ • 59

  • @redDuck757
    @redDuck757 5 місяців тому +1

    Great tool. Thank you.

  • @bassamsaleh8034
    @bassamsaleh8034 5 місяців тому +6

    this is quality video. I use fzf daily but many things I didn't really know that's there. thank you

  • @diego898
    @diego898 5 місяців тому +1

    The fzf+k8 part was especially awesome!

    • @devopstoolbox
      @devopstoolbox  5 місяців тому

      I knew someone out there would appreciate 😅

  • @huypham0081
    @huypham0081 2 місяці тому

    that's amazing!!!!

  • @n0kodoko143
    @n0kodoko143 5 місяців тому

  • @abdelrahmandwedar
    @abdelrahmandwedar 26 днів тому

    Amazing tips 😅

  • @wojciech-kulik
    @wojciech-kulik 5 місяців тому +3

    What a cool video! I had no idea about all those possibilities with fzf! Thank you! Btw. I'm also using Moonlander :D

    • @devopstoolbox
      @devopstoolbox  5 місяців тому

      Nice! Enjoying it?

    • @wojciech-kulik
      @wojciech-kulik 5 місяців тому

      @@devopstoolbox Yes, split keyboards and column layout are the way to go! Plus the configurability is amazing

    • @devopstoolbox
      @devopstoolbox  5 місяців тому

      @@wojciech-kulik NO DOUBT!

  • @SB-qm5wg
    @SB-qm5wg 5 місяців тому +2

    once you install it, you can't live without

  • @marksmith2540
    @marksmith2540 5 місяців тому +5

    I like fuzzy finders but I'm happy enough without. One nice trick you can do on basically any POSIX system is to pipe the output of i.e. find into less and then use / and n to search. This lets you try a lot of different possibilities almost as quickly as with dedicated fuzzy finders.

    • @devopstoolbox
      @devopstoolbox  5 місяців тому

      I’ll be just a little bit picky and say that reaching out to the / or ? For search is subpar compared to a fuzzy search which immediately responds both to text and deletion.
      That said, definitely a great workflow when running on remote systems!
      It doesn’t solve the filter issue when reading logs or large data sets though…

    • @EbonySeraphim
      @EbonySeraphim 3 місяці тому +1

      This issue is keyboard layout dependent. I’ve switched to an ergonomic split keyboard with a curved key well, and hardly any keys are a stretch on the default layout. Super easy for me to optimize may layout and thumb cluster.

  • @LG-yi2vh
    @LG-yi2vh 2 місяці тому +1

    Cool video!
    But which keyboard do you use in this video? None of the keyboards in the links are like this

    • @devopstoolbox
      @devopstoolbox  2 місяці тому +1

      Yeah sorry for that :) this is the ZSA Moonlander

  • @alexandrunechita3460
    @alexandrunechita3460 5 місяців тому

    Hey, nice video on fzf.
    What keyboard are you using in this video?

  • @chang112x
    @chang112x 2 місяці тому

    This is a game changer

  • @felipegutierrez2944
    @felipegutierrez2944 5 місяців тому

    I love your channel! do you know how to copy and paste from Zellij like a pro? If I have to copy from the terminal i always have to do it outside from Zellij?

    • @devopstoolbox
      @devopstoolbox  5 місяців тому

      Thank you!
      I think it’s a matter of the terminal and whether it interacts with your clipboard if that an issue. If you’re asking about the workflow - my go to (and most love feature) of Zellij is to dump the screen into vim from where I can change with ease and thank yank when I’m done!

    • @felipegutierrez2944
      @felipegutierrez2944 5 місяців тому +1

      thanks I will try to dump the screen technique!@@devopstoolbox

    • @turanamo
      @turanamo 2 місяці тому

      Start zellij by disabling mouse mode. zellij options --disable-mouse-mode
      Now you can just use your mouse to select and paste (shift+ins) as usual.

  • @walidashik
    @walidashik 5 місяців тому +1

    Great video. How do you show your terminal over your video?

    • @devopstoolbox
      @devopstoolbox  5 місяців тому +1

      Thanks!
      Lots of options, most commonly just layering them on top of each other while editting

    • @walidashik
      @walidashik 5 місяців тому

      would love to watch video on your video making process. I guess lots of us want to watch that as well! great stuff as always man!!@@devopstoolbox

    • @devopstoolbox
      @devopstoolbox  5 місяців тому

      Thanks buddy!@@walidashik

  • @aaronmcadam
    @aaronmcadam 5 місяців тому

    Moonlander crew let’s go!!! Would you mind sharing your layout?

    • @devopstoolbox
      @devopstoolbox  5 місяців тому

      Planning to! It's a bit of a mess ATM and very much not finalized but here it is - configure.zsa.io/moonlander/layouts/g9NK0/latest/0

  • @elu1
    @elu1 Місяць тому +1

    Thanks for the teaching. One of my problems is that my ctrl-T ctr-R won't work after fzf install on Mac, Any suggestion?

    • @devopstoolbox
      @devopstoolbox  Місяць тому

      You might have missed a step or have conflicting configs: github.com/junegunn/fzf?tab=readme-ov-file#key-bindings-for-command-line
      Make sure you didn’t skip the integration: github.com/junegunn/fzf?tab=readme-ov-file#setting-up-shell-integration

  • @GenkiTheMuffin
    @GenkiTheMuffin 5 місяців тому

    great video. how'd you get option c to actually trigger the shortcu, on my machine (mbp 14inch) it types out this weird character ç.

    • @devopstoolbox
      @devopstoolbox  5 місяців тому

      Hmmm I guess it can be a result of too many conflicting key maps (native os, things like karabiner / kb macros, language specifics etc). Best option is to remap is to something else

    • @wondrous9629
      @wondrous9629 5 місяців тому

      I had the same issue, solved it by adding this to my .zshrc: bindkey "ç" fzf-cd-widget # option + c

  • @daddyDangle
    @daddyDangle 5 місяців тому +2

    Still waiting for something like tmux-sessionizer in Zellij, otherwise ready to get oxidized

    • @devopstoolbox
      @devopstoolbox  5 місяців тому

      In what way? The ability to create path based sessions?

    • @daddyDangle
      @daddyDangle 5 місяців тому +1

      @@devopstoolbox the ability to index a folder, create path based sessions per repo, and jump between them with a telescope like interface

  • @samarnagar9699
    @samarnagar9699 5 місяців тому

    It happened

  • @maguilecutty
    @maguilecutty 5 місяців тому

    First comment from Germany haha

  • @Vcshahriyer
    @Vcshahriyer 5 місяців тому

    I think the command is typed wrong
    LINKS
    ▶ fzf --preview 'bar --style=numbers --color=always {}'
    it should be 'bat' not 'bar'.

  • @ayoubelmhamdi7920
    @ayoubelmhamdi7920 5 місяців тому +21

    first comment from Gaza 🇵🇸 😁

    • @devopstoolbox
      @devopstoolbox  5 місяців тому +13

      Wishing you a peaceful life

    • @devopstoolbox
      @devopstoolbox  5 місяців тому +18

      @@user-sy5jh7rc6w very cool 😎 but this is a tech channel 😉

  • @Andr0id88
    @Andr0id88 2 місяці тому

    Loved the bit about fzf and rg, got inspired to create this that uses bat aswell so that you get a preview and when opened Nvim will automaticly jump to that line. Use this workflow every day inside nvim but never thought about making a tool for it to use from the CLI before i saw this- thank you very much! :)
    Here it is for those who want to try it, alias it to something and use it like rg\ag
    rg --line-number --no-heading --color=always "$@" | fzf --ansi --delimiter ':' --preview 'line={2}; start=$((line > 20 ? line - 20 : 1)); bat --style=numbers --color=always --line-range "$start:" --highlight-line {2} {1}' --preview-window=right:70%:wrap --phony -q "$(echo "$1" | sed "s/ /\\ /g")" --bind "enter:execute(nvim +{2} {1} < /dev/tty)" --multi

    • @devopstoolbox
      @devopstoolbox  2 місяці тому

      Going to test this!
      Carefully crafted one liners always fascinate me for some reason 😂

    • @Andr0id88
      @Andr0id88 2 місяці тому +1

      @@devopstoolbox What would be awsome if it had the possibility to live grep aswell with fzf. Im just a linux sysadmin and not a developer so that was abit over my skill level to figure out - for now atleast😅