Why not a convention for a section in a README.(txt|md) file ? We always expect those files (and we often write them).
Side note. The difficulty to switch between dozens of projects and their directory structures was the main motivation behind broot. You might find it useful.
I just gave up trying to look for a file explorer plugin and came to the conclusion that vim is just not a good file manager.
I've started using broot for most of my file management needs, and it works exceptionally well.
Broot[1] is somewhat similar to ranger and is better at searching for files, but has its own downsides. I thought I'd mention it since I like using it, but someone mentioned Thunar and that's probably a good choice.
[1] It requires a Rust Installation if you need to compile from source.
Yeah, but what problem are you trying to solve? And that wasn't solved before.
exa
is a modern ls
replacement, that's it. Those are utilities that follow Unix philosophy of doing 1 thing and doing it well.
Need icons for files? Rust'y lsd
will show them for you.
For finding stuff there are find
and fd
. Pack it with fuzzy skim
/ fzf
and it's so good.
For opening files there is xdg-open
on *nix. etc
Looking for i-can-do-it-all? <code>broot</code> can do so much from terminal. Can you beat it?
People here suggest to rewrite it in Rust, heh :)
Well, I love the language and advocate for it, plenty of CLI utilities I use are written in Rust, for example exa
, fd
, ripgrep, starship prompt etc. It's awesome for this kind of stuff for sure.
This example from README is hilarious:
zeus -fd *.{ts,js} --ls
I can do it in zsh without anything (ls
doesn't count):
ls -l *.(ts|js)
It's called globbing.
It's fine to learn while writing such programs, but it may be hard to "sell" re-invented wheels to other people. Do something better / diferrently than already exists!
Displaying sizes of folders isn't something you commonly do because, as was said by u/medmedin2014, this consumes a lot of resources. Windows file explorer doesn't "have the info" but computes it on demand (and not especially efficiently).
It's an option you have in broot, and it's useful when you want for example to clean your disk, but it's a TUI so it may not suit you. It really depends on your goals and tastes, and whether you're comfortable in a terminal.
disclaimer: I'm the author of broot
never tried batch delete but to jump to the directory which is selected inside broot just press alt+enter
or enter cmd :cd
. you can look for more commands here under usage section.
Many people do that, and there are many different ways.
I describe here the simplest solution: https://dystroy.org/broot/tricks/#a-generic-fuzzy-finder
As this reddit thread will soon become read-only, here's the link to the chat where such questions can be asked: https://miaou.dystroy.org/3490
A use I have for BFS is a way to give a partial view of what is naturally a tree: a file tree. I use BFS in broot both for pruning the tree and for showing first the nearest matches, because that's what the user usually wants.
I’d also recommend broot
as an alternative to ncdu
.
It wraps in many file management utilities under a quick to navigate TUI with short aliases for most common functions.
Type a few letters of a place where you want to go, which may be visible or not, then hit enter when it's selected, which focuses the directory (make it the "current root"). You may also use the mouse, or the arrow keys.
As the author of broot, which is compatible with Windows, and a fan (and minor contributor) of crossterm, which is a TUI lib for linux, mac and windows, I can only agree with you.
But let's face it:
broot author here.
broot isn't supposed to be slow if you use it on your local disks. If you have a remote disk mounted, you may exclude it from automatic diving: https://dystroy.org/broot/conf_file/#special-paths
I'm trying to "finish" broot, that is, after more than one year in use, having it 1.0.0.
The last things I work on are fixing rendering problems on obscure terminals on obscure OS (Windows, mainly).
dua-cli
is fine, I know about its existence.
There is also <code>broot</code> that can be used to clean files, it's already in the repo - https://www.archlinux.org/packages/community/x86_64/broot/
In general I welcome any good Rust-based CLI utility. They are statically linked binaries, slick and fast, with shell completion. Also easy to build thanks to cargo
.
cargo build --release --locked
Rust package guidelines are rather simple.
You probably already learnt about things that are here since a long time and I assume you know about ssh, packages, terminal splitting and basic commands. So maybe I'll mention things which aren't so old:
modern editors like sublime or vscode make learning vi or emacs less necessary. As a neovim addict I won't say it's not interesting but you can now live without it (note that the "old" editors get a lot of new goodies too).
search got a lot of love in the recent years and is more than ever an essential part of your daily linuxing. Go look at fzf and ripgrep (and maybe after that at my own broot.
as you're a gamer, I assume you also keep a windows box. You should still check from time to time the linux versions: when they run they're often more civic to your computer (meaning they don't steal all the resources)