Live data from Hacker News

Eza: A modern, maintained replacement for ls

github.com

101–110 of 250 posts

Re: Eza: A modern, maintained replacement for ls

#101
post #88
post #87

Earlier quoted context omitted.

> So it's OK to hide the mess, by throwing everything from the living room into the closet, I guess? Yes? This is literally how every human in the world does it. You put your things, according to catrgories, into their respective room/cabinet. If somebody asks you where your sweaters are, you don't say "just search the ground", you say " in the closet". Same thing here. You don't have to guess where files are, you kn…

My counterpoint was merely that ~/. hid things, unless you did weird things. Like explicitly ask to see all hidden things. Having a file manager set to see all dotfiles by default, is like ripping all the doors off your closets.

You're completely missing the point.

~/.programname is an unorganized mess, where someone stuff their dirty laundry, their trash, their food and their passport into the same closet. It doesn't matter if the closet is open or not, nobody but the mentally ill hoarder who created the mess can navigate it.

~/.(local|share|cache) means people put their food in the fridge, their trash into the bin and their sensitive documents in a fire proof safe. Which means other people can take care of basic tasks like taking out the trash and creating backups of their sensitive documents.

Re: Eza: A modern, maintained replacement for ls

#102

GNU ls is maintained. I see commits affecting the ls.c file from 2024-06-24 and 2024-06-27; less than a month ago. The GNU Coreutils mailing list is fairly busy also. This project seems to be using the word maintained for the meaning of actively developed .

No the maintained here means it is a maintained (replacment) with reference that it is a fork of exa which was a ls replacment that is not maintained anymore. It does not say that ls is not maintained.

Re: Eza: A modern, maintained replacement for ls

#103
post #11
post #7

I have a problem with all terminal tools that insist on using colors to distinguish between various file types or attributes etc ('ls' is often set up like that too for distros, but I simply delete the config which sets that, the default doesn't). I use a terminal background which is easy on my eyes, and those color schemes always include colors which clash with the background or makes them hard to see in other ways.…

Solarized is easy on the eyes and the colours are chosen for readability. https://ethanschoonover.com/solarized/ The list on the site lacks some entries. Konsole has it built in and i bet Gnome Terminal too.

It's not easy on my eyes. It looks washed out with too low contrast.

Re: Eza: A modern, maintained replacement for ls

#104

GNU ls is maintained. I see commits affecting the ls.c file from 2024-06-24 and 2024-06-27; less than a month ago. The GNU Coreutils mailing list is fairly busy also. This project seems to be using the word maintained for the meaning of actively developed .

This is referencing 'exa', of which eza is a fork. Exa was unmaintained for about a year before it was marked officially deprecated by the only person with write permissions on the repository.

It has definitely been long enough now since the forking, where not everyone is aware of exa, and this language/intent is now far less clear. I see you are not the only one to comment on this, so I think it's time to update the phrasing.

Re: Eza: A modern, maintained replacement for ls

#105
post #27

Who uses ls anyway? I tab-complete until it lists the files I need. Just kidding. But on a more serious note, why does he claim ls is not maintained anymore?

Because he's deliberately confusing "maintained" with "actively developed" in order to insinuate that the existing tools is unmaintained.

The "maintained" refers to `exa`, which is also written in Rust.

Rust binaries are static, which means they need to be rebuilt when security fixes are published on one of their dependencies.

Without active development to at least update, the static binary becomes a liability.

On another note, the developers on exa did explicitly say the project was unmaintained:

https://github.com/ogham/exa/commit/fb05c421ae98e076989eb6e8...

Re: Eza: A modern, maintained replacement for ls

#106
post #66

My ls usage went down 100% after I switched to fish shell. The built in Alt + l command lists the directory contents. Very helpful! And also results in a cleaner shell history.

For me, there are two principal cases of sorting in `ls` output: alphabetical when I'm trying to find something I don't know/ remember exactly, and mtime-based when I want to see the latest (or oldest) in a group of related files. I don't see how it could work with one shortcut. Another thing is `ls -l` that's important when I need to understand file sizes and especially how symlinks are set up. Yet another is `ls -l…

To this end I made a simple script, `latest`, which is, essentially, `ls -lt $@ | head`.

So, `latest *.log`, etc.

Other than that, simple autocomplete does a lot of my ls work for me.

Re: Eza: A modern, maintained replacement for ls

#108
post #88

Earlier quoted context omitted.

My counterpoint was merely that ~/. hid things, unless you did weird things. Like explicitly ask to see all hidden things. Having a file manager set to see all dotfiles by default, is like ripping all the doors off your closets.

You're completely missing the point. ~/.programname is an unorganized mess, where someone stuff their dirty laundry, their trash, their food and their passport into the same closet. It doesn't matter if the closet is open or not, nobody but the mentally ill hoarder who created the mess can navigate it. ~/.(local|share|cache) means people put their food in the fridge, their trash into the bin and their sensitive docum…

The one thing I despise about local|share|config is I never know which one they're using or what kind of nested hierarchy they're using that means I might have to search for the company name first.

At least with the ~/.whatever system I can just start typing ~/.tool-name, hit tab and it'll show me the thing if it exists. If it's somewhere else I have to look it up.

Re: Eza: A modern, maintained replacement for ls

#109

My ls usage went down 100% after I switched to fish shell. The built in Alt + l command lists the directory contents. Very helpful! And also results in a cleaner shell history.

Nice tip. What got rid of most of my use of `ls` in fish was running `ls` automatically when you changed directories: function ls_on_cd --on-variable PWD ls end

Neat idea, thanks! So obvious in hindsight... Just need to add some logic to it so it doesn't output more than N files.

For others (like me) who use zsh:

    function chpwd() {
      ls
    }

Re: Eza: A modern, maintained replacement for ls

#110

My ls usage went down 100% after I switched to fish shell. The built in Alt + l command lists the directory contents. Very helpful! And also results in a cleaner shell history.

Bash users: FYI you can bind shortcuts like this, too. I have my right hand home row keys bound to __bash_ctrl_n() (for e.g.), and various tools in my dotfiles override these functions (git, if installed, sets up __bash_ctrl_e() to run git status and git log).

Neat. Can you share the source of any of the functions you've bound to some of your keys?
Post reply on HN