Can’t imagine using my system without this.

  • asap@lemmy.world
    link
    fedilink
    English
    arrow-up
    25
    ·
    edit-2
    3 months ago

    As someone new to Linux, what would be a few reasons that you prefer this to using the built-in GUI file browser?

    • Eager Eagle@lemmy.world
      link
      fedilink
      English
      arrow-up
      37
      ·
      3 months ago

      I can’t believe no one mentioned this, but: remote access.

      I spend most of my day connected to machines via SSH and yazi offers a great UX with file previews and all. Using kitty I even get image previews in the terminal.

      • rcbrk@lemmy.ml
        link
        fedilink
        English
        arrow-up
        5
        arrow-down
        1
        ·
        3 months ago

        remote access

        To be fair, X11 forwarding is a straightforward thing, bearing in mind any security/performance/administrative restrictions which may apply to your situation.

        Alternatively, SSHFS can be used to mount a remote directory locally.

        • Eager Eagle@lemmy.world
          link
          fedilink
          English
          arrow-up
          5
          ·
          edit-2
          3 months ago

          I’ve used plenty of sshfs a few years ago, but x11 forwarding is a compromise. The latency makes it painful to work with for more than a few minutes.

          • rcbrk@lemmy.ml
            link
            fedilink
            English
            arrow-up
            3
            ·
            3 months ago

            Yeah, X11 forwarding is only fine on a campus wide network, maybe city-wide at most, if the wan is fast enough.

            Sshfs would also be painful for operations processing a lot of data (grepping gigs of log files or even creating thumbnails of images to browse).

        • ManTaboo@lemmy.ml
          link
          fedilink
          English
          arrow-up
          7
          ·
          3 months ago

          They are two different things. Yazi is a file manager and Kitty is a terminal emulator.

          • typhoon@lemmy.world
            link
            fedilink
            arrow-up
            1
            ·
            3 months ago

            Ok, Dolphin would be the comparative here from KDE Qt but, since is made for GTK probably Nautilus is the one to be compared.

    • Eyck_of_denesle@lemmy.zipOP
      link
      fedilink
      arrow-up
      30
      arrow-down
      1
      ·
      3 months ago

      I can navigate without using my mouse. It’s faster for me. You can create tabs, copy and paste files, extract compressed files, run commands, and so much more without lofting my hand. My favorite feature is the ability to preview files without even opening them. I’m relatively new to linux too.

    • sloppy_diffuser@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      9
      ·
      edit-2
      3 months ago

      Download 5 seasons of some show from multiple sources or some artist’s entire discography, and want to normalize all the file names? It is way easier in the terminal.

      I’ll check this out, but I use https://github.com/stevearc/oil.nvim for such tasks as I have nvim’s full suite of editor commands to rename all the files way faster than I could in a GUI. I’m sure there are GUI apps to perform a similar task, but I already know how to use nvim.

    • Chewy@discuss.tchncs.de
      link
      fedilink
      arrow-up
      8
      ·
      edit-2
      3 months ago
      • Terminal file manager are useful on a server over ssh.
      • ripgrep and fd support is better than any GUI file manager find and replace.
      • Some people like using vim keybindings
      • The three panel view is really useful. On the left is the parent folder, the middle the current and on the right a preview, e.g. the selected folder or the contents of a picture or a text file. It’s faster to navigate and pop back into the shell.
    • ninjaturtle@lemmy.today
      link
      fedilink
      English
      arrow-up
      7
      ·
      3 months ago

      You can probably do some more advance tasks via CLI. Also usually lists information faster. But honestly you will be overall fine with GUI a majority of the time.

      Some people just like being in the terminal.

    • _hovi_@lemmy.world
      link
      fedilink
      arrow-up
      4
      ·
      3 months ago

      Other people have given great reasons, but I will also mention that as someone who lives inside the terminal it’s often faster and easier to open it right there rather than getting a GUI one going. I do still use one for things that are easier to do with a graphical file manager though, no problem having both

    • WalnutLum@lemmy.ml
      link
      fedilink
      arrow-up
      2
      ·
      3 months ago

      I wouldn’t bother unless you find yourself doing more through the terminal than through GUIs.

      I don’t have a built-in file browser (not using a DE, just i3 window manager), so I use ranger and pure GNU coreutils commands mostly but I still find myself missing the drag-and-drop features that FreeDesktop integration provides for stuff like nautilus.

    • Joël de Bruijn@lemmy.ml
      link
      fedilink
      arrow-up
      1
      ·
      3 months ago

      I’m fairly new to Linux also, Debian with Gnome.

      I need CLI filemanager when doing something outside home directory etc.

      For example fix a desktop shortcut and you can’t start Nautilus "as an administrator " afaik. Or it won’t ask for root password.

    • Eyck_of_denesle@lemmy.zipOP
      link
      fedilink
      arrow-up
      25
      ·
      edit-2
      3 months ago

      Yes. I switched to yazi from ranger. File previews is so much better. Image previews dont hog up ram or crash your manager. It has everything and more like opening encrypted archives, plugin support, themes. I use 2 plugins, one to compress files and the other to display present directory size.

      It’s not just the features but the app itself is magnificent. I have never seen such a goid looking tui app.

      • Eager Eagle@lemmy.world
        link
        fedilink
        English
        arrow-up
        8
        ·
        3 months ago

        Same, ranger was painfully slow at times. For some reason it would take multiple seconds to start on a few machines I connected it to.

    • sudo@programming.dev
      link
      fedilink
      arrow-up
      4
      ·
      3 months ago

      Switched from ranger to yazi months ago. There’s some UI choices that I miss but the configuration via toml and lua plugins is way better than rangers.

      I would like to find a git modeline plugin. Its wild to me that they have a zoxide integrated and keybound by default but no git integration.

      • sntx@lemm.ee
        link
        fedilink
        arrow-up
        5
        ·
        3 months ago

        Git integration support was added three weeks ago in 0.3.3 ^^

        You still have to install it manually, but it will be a default plugin in an upcoming release.

    • yazi@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      3 months ago

      I think it really depends on your specific use case.

      For me, it has completely replaced ranger — I initially developed it to replace my ranger, and its original name was ranger-rs, but then I realized that was too long for frequent type, so I changed it to yazi :D

  • cakeistheanswer@lemmy.dbzer0.com
    link
    fedilink
    arrow-up
    22
    ·
    3 months ago

    I binned my copies of ranger and nnn when I found this last year. Its stellar.

    Diskonaut is the only other one that stuck, of the new CLI file managers. hunting lost files from a recovered hard drive was a lot easier with directory visualization for whatever reason.

    • mac@lemm.ee
      link
      fedilink
      arrow-up
      6
      ·
      3 months ago

      What are your primary use cases for Yazi? I’m trying to see if it’ll fit into my workflow.

      I’ve been experimenting with it on my MacBook Pro. When I navigate to a few Go projects I’m working on, syntax highlighting only seems to be available in the file preview. After that, it appears to just open in plain Vi.

      At work, I use Windows and primarily code in C#.

      Is Yazi more geared towards file management?

      • cakeistheanswer@lemmy.dbzer0.com
        link
        fedilink
        arrow-up
        9
        ·
        edit-2
        3 months ago

        It hooks into nearly every base utility I can’t live without (fzf, jq, helix, ripgrep). If you’re on windows im not sure you’re going to get a ton unless you live in WSL.

        You can pick the editor it’ll open by default, which should be configurable with comparable syntax highlighting. Vi can pretty much look like whatever. I think it’ll default to vscode on windows.

        Im not sure what you’d use it for but manage files, but I would have poked it and probably moved along while I was still on windows.

        Edit: the other benefit you might not see has a lot to do with support of mime types.

        https://www.iana.org/assignments/media-types/media-types.xhtml

        The xdg open protocol will open whatever app is assigned to handle type locally. Which is probably why it defaults to editor.

      • _hovi_@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        3 months ago

        I mainly use it inside neovim actually, in place of the built in file manager or a file tree. Also use it if I want to quickly see the image files in a directory (it shows the images in the terminal), or rename a bunch of files. And then rarely for other file related activities as it makes exploring a directory very smooth

  • WhyJiffie@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    9
    arrow-down
    1
    ·
    3 months ago

    it gained 14k+ stars on github in a year (development started in 2023 july).

    isn’t it a bit suspicious?

    maybe it’s nothing, but this just caught my eye

    • toastal@lemmy.ml
      link
      fedilink
      arrow-up
      16
      ·
      edit-2
      3 months ago

      Starhacking is a thing. When you see words like “blazing fast” & emoji all over the README it show the maker is treating the code as marketing—& MS GitHub is a social media platform with algorithms.

    • yazi@lemmy.world
      link
      fedilink
      arrow-up
      6
      ·
      edit-2
      2 months ago

      👋🏻 Hi, Yazi author here, thanks for your interest in it!

      I created an account to answer this question, for me, getting 15k stars is totally not surprising and should be quite expected since I’ve been working hard to manage the Yazi community. Let me try my best to explain where these stars are coming from and why:

      • Yazi is undergoing very active development, there’s a cool graph on GitHub that reflects the activity of the project, https://github.com/sxyazi/yazi/graphs/contributors
      • I put a lot of effort into writing release notes to showcase the latest features to users, presenting this information in the best way possible - you can see these at Yazi Releases.
      • Yazi is a Rust app, and many people are interested in Rust, which already has a lot of excellent projects (like ripgrep, bat, fd, exa, starship, etc.), so Yazi benefits from this good reputation — especially since it genuinely delivers on its promises in README: fast, efficient, user-friendly, and customizable.
      • Yazi is a versatile file manager that, unlike broot, leans more towards fast file navigation rather than file management. I explained the differences in this Reddit comment.
      • Yazi integrates well with other tools (like Neovim and Helix), which will attract users from those platforms:
      • Yazi has a great plugin ecosystem — you can check out all the community plugins at https://yazi-rs.github.io/docs/resources and https://github.com/AnirudhG07/awesome-yazi
      • I post about each major release on Reddit, which usually gets a lot of attention, making it one of the main sources of these stars, like this one and this one.
      • Yazi occasionally appears in tech blogs or videos, such as this one, this one, this one, this one, and this one, which also brings in a lot of stars.
      • Some Yazi users share it on other platforms, like Hacker News here and Lemmy like this post (hey! TIL about this platform, it’s awesome!).
      • I promote it occasionally on my personal Twitter, which usually brings good attention, like this tweet and this one.
      • Yazi often appears on GitHub Trending, where a lot of people look, which can also lead to some stars, such as this one - 🥇 Yazi reached number one on the Rust category. It tends to trend due to new releases or someone making a new introduction video about Yazi.
      • Yazi has a strong Discord community — our official Discord server has 800+ members, and many users enjoy sharing the tools they use in other servers, with Yazi being one of them. This also contributes to getting some stars. I’ve joined a lot of Discord servers and occasionally see people sharing about Yazi.
      • Once I have time, I’ll exchange my thoughts with users and potential users, just like I’m doing now - good communication is key to everything!

      I hope this helps address your confusion or concerns. I’ve been doing my best to improve Yazi - I’ve spent almost all my free time maintaining it. These stars feel like recognition and appreciation for my efforts, so it feels pretty natural to me ;)

    • _hovi_@lemmy.world
      link
      fedilink
      arrow-up
      6
      ·
      3 months ago

      That’s because it works very well, and the main developer is super active (I’ve contributed and made some plugins so have interacted with them a fair bit)

      • WhyJiffie@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        3 months ago

        I doubt that amount of stars can be achieved naturally in this short time, especially from a developer previously unknown.
        the program is certainly not used by likehappy common people, this would seem complicated and scare them away

        • _hovi_@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          3 months ago

          To be fair this is a terminal file manager… only a certain kind of person will be interested in the first place, and those people are likely to be more inclined to leave a star on GitHub.

          Personally I believe the stars were achieved naturally but of course there’s no way to know and it never hurts to be skeptical.

          • WhyJiffie@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            arrow-down
            1
            ·
            3 months ago

            To be fair this is a terminal file manager… only a certain kind of person will be interested in the first place,

            that’s the point

            and those people are likely to be more inclined to leave a star on GitHub.

            I don’t see that connection. But you know what, here is an example.

            Broot is a similar program. It has been there for longer, has been loved by many, yet it has fewer stars.
            If I would know more of those like this, I would probably have more examples.

    • Eyck_of_denesle@lemmy.zipOP
      link
      fedilink
      arrow-up
      2
      ·
      3 months ago

      Like the other comment said yes and it lives up to it’s sparkly promises. You should check zen browsers stars, it got the same amount in like a month or two.

    • JustAnotherKay@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      3 months ago

      Admittedly I haven’t looked into too many rust applications but IME they generally don’t have a deb/rpm/binary or whatever. I’ve always had to cargo them in - it’s a relatively painless process. My understanding is that, in a similar fashion to python, you have to have the same dependencies on the source and target machine and cargo handles that in rusts case

  • thingsiplay@beehaw.org
    link
    fedilink
    arrow-up
    4
    arrow-down
    1
    ·
    3 months ago

    I’ve installed it for a while and lot of stuff work out of the box, including images in the terminal. But I did not get around to use it more often. It’s pretty good and I think its a full replacement for the usual terminal file managers, but don’t take my word for it. I previously used vifm a little bit and have no other experience.

    • Eyck_of_denesle@lemmy.zipOP
      link
      fedilink
      arrow-up
      2
      ·
      3 months ago

      I used ranger and it’s a solid improvement over it. If you are into tui apps you will love it, if you aren’t it’s ok. It also has plugin system, I use 2 plugins to compress files and get file size info. I love it.

      • thingsiplay@beehaw.org
        link
        fedilink
        arrow-up
        3
        ·
        3 months ago

        I often use it to navigate into a directory, using it as a directory selector (auto cd on exit). An essential plugin to me is https://github.com/yazi-rs/plugins/tree/main/jump-to-char.yazi , to have a Vim like quick jump with f and a letter and n for next. The default f functionality to filter is now set to F, so I don’t lose that by overriding.

        Still need to handle archives too. I also want to write my own plugins someday if I get to use it more often.

        • Eyck_of_denesle@lemmy.zipOP
          link
          fedilink
          arrow-up
          2
          ·
          3 months ago

          It does handles all types of archives by default. Encrypted ones too.

          How do you auto cd, I always wanted that but didn’t brother to check docs for it. If I remember correctly it’s by launching it as a shell script.

          • thingsiplay@beehaw.org
            link
            fedilink
            arrow-up
            3
            ·
            edit-2
            3 months ago

            Yes, it’s a simple shell function; needs to be a function in your bashrc, not a script, because cd doesn’t work like that. Just copy the function from https://yazi-rs.github.io/docs/quick-start#shell-wrapper into your .bashrc:

            EDIT: I forgot that Beehaw will replace the ampersand character to &. So instead copying my code you should copy it from the link above.

            yy() {
                local tmp
                local cwd
                tmp="$(mktemp -t "yazi-cwd.XXXXXX")"
                yazi "${@}" --cwd-file="${tmp}"
                if cwd="$(cat -- "${tmp}")" && [ -n "${cwd}" ] && [ "${cwd}" != "${PWD}" ]; then
                    builtin cd -- "${cwd}" || return
                fi
                rm -f -- "${tmp}"
            }
            

            I use yy instead single y.

              • thingsiplay@beehaw.org
                link
                fedilink
                arrow-up
                2
                ·
                edit-2
                3 months ago

                I forgot that Beehaw will replace the ampersand character to &. So instead copying my code you should copy it from the link above.