5 ms·
(author here) You know what's funny? Every time I have to use ls, I'm so used to seeing the colours that I have so much trouble finding anything. Which column
by cytzol 9y ago
(author here)
You know what's funny? Every time I have to use ls, I'm so used to seeing the colours that I have so much trouble finding anything. Which column in the permissions is group-read? I can just scan for the green one. Which file in the listing am I supposed to be looking at? I just look for the one with the yellow underline. Colours have familiarity to me in a way that letters and words do not -- if I expect to see green and instead see grey, I'll notice it faster than if I expected to see "r" and instead see "-".
Of course, not everyone feels this way. Colour terminals are not a new invention, and if the "colour in everything" crowd was larger, someone would have made exa sooner.
That said, I don't want to go too overboard with the colours. Here's an example: when exa was in its infancy I had the bright idea to highlight the root user in red, in the same way that it highlights your current user in yellow, because, I don't know, root is "dangerous" or something. I ended up seeing so many red usernames that I stopped seeing it as "dangerous, beware" and started seeing it as "just another file" -- which completely defeated the point! Now, red is a lot more scarce (just +w permission and inodes. probably some file types. not many)
- antjanus 9y agoI'm a big fan of this colorization. I like that I can quickly scan permissions, take note of the user, and figure out what kind of file I'm looking at. With regular 'ls', I usually have to do a double-take on all of those.
- sylvinus 9y agoI feel your way too. Colours can add valuable information when done right. Don't feel too let down by the comments on HN. Awesome work!
- kbenson 9y ago> Colours have familiarity to me in a way that letters and words do not -- if I expect to see green and instead see grey, I'll notice it faster than if I expected to see "r" and instead see "-". I think the coloration is good, but I would have defaulted a bit differently in the permissions. I would have made all user bits green, all group bits orange, and all other bits red. Not only does this denote the possible security implications of the permissions, but it also maps well to what I'm usually looking for - what are my permissions, and being able to see all those quickly with green would be useful. As an added benefit, there wouldn't be as many per-character color changes in that section, so it would be less busy. Awesome work, BTW. I love seeing interesting re-imaginings of old standby utils. I was actually thinking of doing my first real Rust project as a cat replacement. I was thinking of calling it calico. ;)
- dfc 9y agoI really like a lot of the extra colors but I was also overwhelmed by the rainbow permissions. User, group, world are the organizing principle for me. World writeable is something I never want to have in my mind as similar to user writeable.
- bowmessage 9y agoI heavily rely on colorization to read what I need to on the terminal. I pipe almost all of my logs through ccze by default. Thanks for this great tool -- installing.
- SrslyJosh 9y agoI like the colors, but I'd like to be able to configure what's colored and, more importantly, what gets bolded. For me, the bold stuff jumps out and can kind of push the non-bold stuff into the background, which makes scanning that stuff a bit harder. (In case you're wondering, I think I'd skip bolding the username and the owner perms.) Also, I think that setuid bits are probably worth bolding, because you probably shouldn't see them very often.
- cytzol 9y agoThanks! Configurable colours are something I'd like to get done, too. About half the work has been done to achieve this -- none of the colours are hard-coded, they're all looked up from a big Colours value that gets passed around internally. This value just needs an interface so it's configurable by the user. I've been meaning to open it up to the community instead of just defining an ad-hoc EXA_COLO[U]RS environment variable, but y'know, time.
- turnspike 9y agoI'd settle for a flag that disables the rainbow perms, it seems to be a common gripe. It's nearly a dealbreaker for me. But, that's personal preference - congrats on a great util.
- cytzol 9y agoCheers. Yeah, most of the comments on the colours have mentioned the permissions column in particular!
- thibran 9y agoFor me it is always difficult to see the groups in the permission groups, I would prefer the user part would have one color, the group part another... identifying if there is a r or w is not the problem. There should maybe be also between the groups a space, just to make the output more readable. Otherwise I would like to not see the file creation/change date at all, since most times it adds no valuable information. To get more verbose output - with date info, there could be something like exa -ll (make the output more verbose if there are more -l args present). Just some ideas, maybe you like some of them :)
- LASR 9y agoIgnore what they all said. It's proven that adding 3 dimensions of color means the information entropy is at least trippled. If you think about the terminal as a computer <-> interface, then it's pretty obvious that we're bandwidth limited by how much information you can fit onto the page. Any amount of improvement in that bandwidth are certainly welcome changes. Niceties like having color-coded file sizes and filetypes will seem incredibly obvious in hindsight. The naysayers today are the same people who were outspoken that a text editor with color syntax highlighting was "poor usability and design". Well then why the fuck does every single modern text editor today colors every single word and displays them in different fonts and styles? You think these very people don't use syntax highlighting in their editors and explicitly turn them off? They should be denied from using them and rightfully so. But they will naysay and then utilize to their sole benefit, the very things they were so opposed to. You can be assured, they are myopic morons, barely able to internalize what they see ahead of them, let alone envision with an open mind, the possibility that your fantastic work might actually benefit them while costing them nothing. Colors are poor usability and design? Nope. Next? You're colorblind? Well, fuck you right in your colorblind eyeball sockets. Nobody gives a fuck about you. You deserve it. It brings me great joy in knowing that you are colorblind. Your life must be unfairly shitty isn't it? Great joy. Warms my heart. Next? 'exa' is too hard to type? Then don't type. Don't do anything at all in fact. You're too lazy and useless to accomplish anything worthwhile anyway. Stop consuming oxygen and occupying space. Better for everyone. How about those points for counter-criticisms? It's the nature of the distributions of populations that you will always find these people wherever you look. Gladly, they are easy to ignore. Listen only to those who offer constructive criticism and carry on with doing fantastic work. It is certainly appreciated by the other vast majority of people who are silent and greatly benefit from your work. I've completely replaced ls with exa with an alias. It's a tool that I've recommended to every one of my coworkers along with fish shell. Now I only wish I had other posix tools of the same quality. Any chance you're writing other tools too? Would kill to have a total posix tools replacement with the same quality as exa.
- justinpombrio 9y ago> You're colorblind? Well, fuck you right in your colorblind eyeball sockets. Be civil or don't comment.