trapd00r/LS_COLORS

Seemingly arbitrary use of "bold"

smls opened this issue · 5 comments

smls commented

I just started using your LS_COLORS for my terminal. The colors look nice, but I don't understand why some file types are shown in bold font while others aren't. Maybe there's some pattern behind it, but I don't see it.

Furthermore, subdirectories are often hard to spot as they get drowned out by the various types of files.

Have you considered using bold text for directories and regular text for everything else? I think that would be clean and consistent.

User experience will vary depending on terminal emulator, font, font size. and color scheme. Can you post a screenshot with an example?

smls commented

Konsole screenshot

In this example the MP3 file and HTM file are bold, but the rest aren't.
(Screenshot taken in the Konsole terminal emulator with the "Monospace" font at 12pt.)

Thanks. That's about what I see. As far as I know the styles are pretty arbitrary. maybe @trapd00r can comment on that. How about you cook up a pull request so we can see what you have in mind?

Hey guys,

The styles are somewhat arbitary, yes, in the sense that when I first made this, I made it just for me, and how I wanted it. Bold is used on filetypes which, to me, needs to stand out a bit more.
Directories are not hard to spot for me, since I always make sure that they're either on top or bottom (ls -r flag).
ls

smls commented

I can see how it makes sense to make a README file stand out, but don't really follow on discriminating between things like music files vs a video files w.r.t boldness... Maybe that's just a matter of personal preference.

I'm now using a sed command to remove the bold highlighting from all file types that have it and add it to directories instead. This is how the relevant portion of my ~/.zshrc looks, in case other readers want to try it too:

eval `dircolors -b /usr/share/LS_COLORS`
export LS_COLORS=$(sed -E 's/;1:/:/g;s/(:di=[^:]*)/\1;1/' <<<"$LS_COLORS")
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}.

This is the result:

screenshot of ls colors with boldness 'patch'