Okay, so I just spent the better part of 2 hours bashing my head into a wall trying to get ls to color properly. If you’re not with me now, probably skip the rest of this post as it’s aimed at my geek followers.
Your Mac can store lots of color profiles, and you’ll find that it already has a handful. Go to System Preferences Displays, then click the Color tab, and you’ll see a list. These default profiles, with odd names, such as sRGB IEC61966-2.1, are specially designed for specific uses; you can safely ignore them. Color Filters For Photos is an image enhancing tool for your Mac. It adds an extension to the Photos application that allows you to give a creative touch to all your pictures, using a huge variety of color filters and a brush to create color splashes: you can color, adjust, and change the exposure or the gamma of the selected areas easily. The Macintosh Color Classic (sold as the Macintosh Colour Classic in PAL regions and Macintosh Color Deluxe in Japan) is a personal computer designed, manufactured and sold by Apple Computer, Inc. From February 1993 to May 1995 (up to January 1998 in PAL markets).
In a hurry? I’ll recap my solution in the summary.
Okay, so I’m browsing around in my terminal when I run `ls /dev`. Turns out that directory is full of files of type ‘block special character’ and ‘character special file’. Well, it just so happens that my color scheme that I’ve struggled a lot with shows these as grey text on a yellow or light blue background, respectively. The net is that the files are totally unreadable.
So, I of course try to fix this, find my entry for LS_COLORS in my .zshrc file, and away I go … or not. First of all, I’ve never editing the LS_COLORS before, I’ve always just stolen one from somewhere else. Here’s what I had:
Looks great! Except that somewhere in that mess are a couple of numbers messing up my color scheme. So, first up: how does that work? The extensions are kind of easy to reason out, but then there are some special, two-letter patterns at the beginning. Well, ‘bd’ is the type I was looking for (the ‘block special character’). I figured that out after finding this.
Oh, and backing up for a minute, I knew the offending files’ types by looking up the first character of ‘ls -l’. Here’s the section of the ls man page for reference:
So, as an example, both these entries are diretories, wich you can tell from teh first character:
Anyway, back to the frustrat–err, learning experience. So, I start mucking around with the LS_COLORS variables, and can’t get changes to take. I progressively make more and more drastic changes, open a new shell, only to see that the colorscheme remains the same.
An hour later, I’m now discovering a new-fangled os x style of color codes, which really just looks like a glob of letters:
Color Fox Mac Os Catalina
Well, how to set this all up is in the ls man pages, but nothing seems to be working for me. Here’s the relevant section from the ls man page:
Okay, so, looks like I have all the pieces, but I’m still really struggling when I had the ‘aha’ moment — I’m using screen. screen doesn’t reevaluate terminal colors each time you run zsh the way a terminal does. I got onto this line of thought after reading an article from macworld.
Color Fox Mac Os X
Once I went back to a raw terminal to test my changes, I was good to go. When I restarted screen, it picked up my colors from the terminal, and now I’m good.
Color Fox Mac Os Download
Color Fox Mac Os Update
I ended up using pretty normal colors for the file types that were giving me problems:
My zshrc is almost completely platform independent, but I doubt this is very portable. Maybe I’ll come back to it.
Summary
So, inclusion:
- Exit screen before messing with colors
- Read the ls man page to make sure that you’re:
- changing the correct variable (LSCOLORS in Mac OS X)
- representing your desired colors in the desired format
As always, you can find my current shell setup files on github.
About softwaregravy
Software Engineer, aspiring financial guru, and entrepreneur; all mixed with a bit of awesome.
This entry was posted in Uncategorized and tagged liux, lscolors, ls_colors, mac, os x, shell, zshrc. Bookmark the permalink.