-
-# Dark 256 color solarized theme for the color GNU ls utility.
-# Used and tested with dircolors (GNU coreutils) 8.5
+# Exact Solarized Light color theme for the color GNU ls utility.
+# Designed for dircolors (GNU coreutils) 5.97
#
-# @author {@link http://sebastian.tramp.name Sebastian Tramp}
-# @license http://sam.zoy.org/wtfpl/ Do What The Fuck You Want To Public License (WTFPL)
+# This simple theme was simultaneously designed for these terminal color schemes:
+# - Solarized dark
+# - Solarized light (best)
+# - default dark
+# - default light
+# with a slight optimization for Solarized Light.
#
-# More Information at
-# https://github.com/seebi/dircolors-solarized
+# How the colors were selected:
+# - Terminal emulators often have an option typically enabled by default that makes
+# bold a different color. It is important to leave this option enabled so that
+# you can access the entire 16-color Solarized palette, and not just 8 colors.
+# - We favor universality over a greater number of colors. So we limit the number
+# of colors so that this theme will work out of the box in all terminals,
+# Solarized or not, dark or light.
+# - We choose to have the following category of files:
+# NORMAL & FILE, DIR, LINK, EXEC and
+# editable text including source, unimportant text, binary docs & multimedia source
+# files, viewable multimedia, archived/compressed, and unimportant non-text
+# - For uniqueness, we stay away from the Solarized foreground colors are -- either
+# base00 (brightyellow) or base0 (brightblue). However, they can be used if
+# you know what the bg/fg colors of your terminal are, in order to optimize the display.
+# - 3 different options are provided: universal, solarized dark, and solarized light.
+# The only difference between the universal scheme and one that's optimized for
+# dark/light is the color of "unimportant" files, which should blend more with the
+# background
+# - We note that blue is the hardest color to see on dark bg and yellow is the hardest
+# color to see on light bg (with blue being particularly bad). So we choose yellow
+# for multimedia files which are usually accessed in a GUI folder browser anyway.
+# And blue is kept for custom use of this scheme's user.
+# - See table below to see the assignments.
-# Term Section
-TERM Eterm
+
+# Installation instructions:
+# This file goes in the /etc directory, and must be world readable.
+# You can copy this file to .dir_colors in your $HOME directory to override
+# the system defaults.
+
+# COLOR needs one of these arguments: 'tty' colorizes output to ttys, but not
+# pipes. 'all' adds color characters to all output. 'none' shuts colorization
+# off.
+COLOR tty
+
+# Below, there should be one TERM entry for each termtype that is colorizable
+TERM alacritty
TERM ansi
+TERM color_xterm
TERM color-xterm
TERM con132x25
TERM con132x30
TERM dtterm
TERM dvtm
TERM dvtm-256color
+TERM Eterm
TERM eterm-color
TERM fbterm
TERM gnome
TERM linux-c
TERM mach-color
TERM mlterm
+TERM nxterm
TERM putty
TERM putty-256color
TERM rxvt
TERM screen-w
TERM screen.linux
TERM screen.xterm-256color
+TERM screen.xterm-new
TERM st
TERM st-meta
TERM st-256color
TERM tmux-256color
TERM vt100
TERM xterm
+TERM xterm-new
TERM xterm-16color
TERM xterm-256color
TERM xterm-256color-italic
TERM xterm-88color
TERM xterm-color
TERM xterm-debian
+TERM xterm-kitty
TERM xterm-termite
-## Documentation
-#
-# standard colors
-#
+# EIGHTBIT, followed by '1' for on, '0' for off. (8-bit output)
+EIGHTBIT 1
+
+#############################################################################
# Below are the color init strings for the basic file types. A color init
# string consists of one or more of the following numeric codes:
+#
# Attribute codes:
-# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
+# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
# Text color codes:
-# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
+# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
# Background color codes:
-# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
-#
+# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
#
-# 256 color support
-# see here: http://www.mail-archive.com/bug-coreutils@gnu.org/msg11030.html)
-#
-# Text 256 color coding:
-# 38;5;COLOR_NUMBER
-# Background 256 color coding:
-# 48;5;COLOR_NUMBER
+# NOTES:
+# - See http://www.oreilly.com/catalog/wdnut/excerpt/color_names.html
+# - Color combinations
+# ANSI Color code Solarized Notes Universal SolDark SolLight
+# ~~~~~~~~~~~~~~~ ~~~~~~~~~ ~~~~~ ~~~~~~~~~ ~~~~~~~ ~~~~~~~~
+# 00 none NORMAL, FILE <SAME> <SAME>
+# 30 black base02
+# 01;30 bright black base03 bg of SolDark
+# 31 red red docs & mm src <SAME> <SAME>
+# 01;31 bright red orange EXEC <SAME> <SAME>
+# 32 green green editable text <SAME> <SAME>
+# 01;32 bright green base01 unimportant text <SAME>
+# 33 yellow yellow unclear in light bg multimedia <SAME> <SAME>
+# 01;33 bright yellow base00 fg of SolLight unimportant non-text
+# 34 blue blue unclear in dark bg user customized <SAME> <SAME>
+# 01;34 bright blue base0 fg in SolDark unimportant text
+# 35 magenta magenta LINK <SAME> <SAME>
+# 01;35 bright magenta violet archive/compressed <SAME> <SAME>
+# 36 cyan cyan DIR <SAME> <SAME>
+# 01;36 bright cyan base1 unimportant non-text <SAME>
+# 37 white base2
+# 01;37 bright white base3 bg in SolLight
+# 05;37;41 unclear in Putty dark
+
+
+### By file type
+
+# global default
+NORMAL 00
+# normal file
+FILE 00
+# directory
+DIR 36
+# XX2, XX3, XX6, and XX7 directories
+OTHER_WRITABLE 34;47
+# symbolic link
+LINK 35
+
+# pipe, socket, block device, character device (blue bg)
+FIFO 30;44
+SOCK 35;44
+DOOR 35;44 # Solaris 2.5 and later
+BLK 33;44
+CHR 37;44
+
+
+#############################################################################
+### By file attributes
+
+# Orphaned symlinks (blinking white on red)
+# Blink may or may not work (works on iTerm dark or light, and Putty dark)
+ORPHAN 05;37;41
+# ... and the files that orphaned symlinks point to (blinking white on red)
+MISSING 05;37;41
+
+# files with execute permission
+EXEC 01;31 # Unix
+.cmd 01;31 # Win
+.exe 01;31 # Win
+.com 01;31 # Win
+.bat 01;31 # Win
+.reg 01;31 # Win
+.app 01;31 # OSX
+
+#############################################################################
+### By extension
+
+# List any file extensions like '.gz' or '.tar' that you would like ls
+# to colorize below. Put the extension, a space, and the color init string.
+# (and any comments you want to add after a '#')
+
+### Text formats
+
+# Text that we can edit with a regular editor
+.txt 32
+.org 32
+.md 32
+.mkd 32
+
+# Source text
+.h 32
+.hpp 32
+.c 32
+.C 32
+.cc 32
+.cpp 32
+.cxx 32
+.objc 32
+.cl 32
+.sh 32
+.bash 32
+.csh 32
+.zsh 32
+.el 32
+.vim 32
+.java 32
+.pl 32
+.pm 32
+.py 32
+.rb 32
+.hs 32
+.php 32
+.htm 32
+.html 32
+.shtml 32
+.erb 32
+.haml 32
+.xml 32
+.rdf 32
+.css 32
+.sass 32
+.scss 32
+.less 32
+.js 32
+.coffee 32
+.man 32
+.0 32
+.1 32
+.2 32
+.3 32
+.4 32
+.5 32
+.6 32
+.7 32
+.8 32
+.9 32
+.l 32
+.n 32
+.p 32
+.pod 32
+.tex 32
+.go 32
+.sql 32
+.csv 32
+.sv 32
+.svh 32
+.v 32
+.vh 32
+.vhd 32
+
+### Multimedia formats
+
+# Image
+.bmp 33
+.cgm 33
+.dl 33
+.dvi 33
+.emf 33
+.eps 33
+.gif 33
+.jpeg 33
+.jpg 33
+.JPG 33
+.mng 33
+.pbm 33
+.pcx 33
+.pdf 33
+.pgm 33
+.png 33
+.PNG 33
+.ppm 33
+.pps 33
+.ppsx 33
+.ps 33
+.svg 33
+.svgz 33
+.tga 33
+.tif 33
+.tiff 33
+.xbm 33
+.xcf 33
+.xpm 33
+.xwd 33
+.xwd 33
+.yuv 33
+.nef 33 # Nikon RAW format
+.NEF 33
-## Special files
+# Audio
+.aac 33
+.au 33
+.flac 33
+.m4a 33
+.mid 33
+.midi 33
+.mka 33
+.mp3 33
+.mpa 33
+.mpeg 33
+.mpg 33
+.ogg 33
+.opus 33
+.ra 33
+.wav 33
-NORMAL 00;38;5;244 # no color code at all
-#FILE 00 # regular file: use no color at all
-RESET 0 # reset to "normal" color
-DIR 00;38;5;33 # directory 01;34
-LINK 00;38;5;37 # symbolic link. (If you set this to 'target' instead of a
- # numerical value, the color is as for the file pointed to.)
-MULTIHARDLINK 00 # regular file with more than one link
-FIFO 48;5;230;38;5;136;01 # pipe
-SOCK 48;5;230;38;5;136;01 # socket
-DOOR 48;5;230;38;5;136;01 # door
-BLK 48;5;230;38;5;244;01 # block device driver
-CHR 48;5;230;38;5;244;01 # character device driver
-ORPHAN 48;5;235;38;5;160 # symlink to nonexistent file, or non-stat'able file
-SETUID 48;5;160;38;5;230 # file that is setuid (u+s)
-SETGID 48;5;136;38;5;230 # file that is setgid (g+s)
-CAPABILITY 30;41 # file with capability
-STICKY_OTHER_WRITABLE 48;5;64;38;5;230 # dir that is sticky and other-writable (+t,o+w)
-OTHER_WRITABLE 48;5;235;38;5;33 # dir that is other-writable (o+w) and not sticky
-STICKY 48;5;33;38;5;230 # dir with the sticky bit set (+t) and not other-writable
-# This is for files with execute permission:
-EXEC 00;38;5;64
+# Video
+.anx 33
+.asf 33
+.avi 33
+.axv 33
+.flc 33
+.fli 33
+.flv 33
+.gl 33
+.m2v 33
+.m4v 33
+.mkv 33
+.mov 33
+.MOV 33
+.mp4 33
+.mp4v 33
+.mpeg 33
+.mpg 33
+.nuv 33
+.ogm 33
+.ogv 33
+.ogx 33
+.qt 33
+.rm 33
+.rmvb 33
+.swf 33
+.vob 33
+.webm 33
+.wmv 33
-## Archives or compressed (violet + bold for compression)
-.tar 00;38;5;61
-.tgz 00;38;5;61
-.arj 00;38;5;61
-.taz 00;38;5;61
-.lzh 00;38;5;61
-.lzma 00;38;5;61
-.tlz 00;38;5;61
-.txz 00;38;5;61
-.zip 00;38;5;61
-.z 00;38;5;61
-.Z 00;38;5;61
-.dz 00;38;5;61
-.gz 00;38;5;61
-.lz 00;38;5;61
-.xz 00;38;5;61
-.bz2 00;38;5;61
-.bz 00;38;5;61
-.tbz 00;38;5;61
-.tbz2 00;38;5;61
-.tz 00;38;5;61
-.deb 00;38;5;61
-.rpm 00;38;5;61
-.jar 00;38;5;61
-.rar 00;38;5;61
-.ace 00;38;5;61
-.zoo 00;38;5;61
-.cpio 00;38;5;61
-.7z 00;38;5;61
-.rz 00;38;5;61
-.apk 00;38;5;61
-.gem 00;38;5;61
+### Misc
-# Image formats (yellow)
-.jpg 00;38;5;136
-.JPG 00;38;5;136 #stupid but needed
-.jpeg 00;38;5;136
-.gif 00;38;5;136
-.bmp 00;38;5;136
-.pbm 00;38;5;136
-.pgm 00;38;5;136
-.ppm 00;38;5;136
-.tga 00;38;5;136
-.xbm 00;38;5;136
-.xpm 00;38;5;136
-.tif 00;38;5;136
-.tiff 00;38;5;136
-.png 00;38;5;136
-.PNG 00;38;5;136
-.svg 00;38;5;136
-.svgz 00;38;5;136
-.mng 00;38;5;136
-.pcx 00;38;5;136
-.dl 00;38;5;136
-.xcf 00;38;5;136
-.xwd 00;38;5;136
-.yuv 00;38;5;136
-.cgm 00;38;5;136
-.emf 00;38;5;136
-.eps 00;38;5;136
-.CR2 00;38;5;136
-.ico 00;38;5;136
+# Binary document formats and multimedia source
+.doc 31
+.docx 31
+.rtf 31
+.odt 31
+.dot 31
+.dotx 31
+.ott 31
+.xls 31
+.xlsx 31
+.ods 31
+.ots 31
+.ppt 31
+.pptx 31
+.odp 31
+.otp 31
+.fla 31
+.psd 31
-# Files of special interest (base1)
-.tex 00;38;5;245
-.rdf 00;38;5;245
-.owl 00;38;5;245
-.n3 00;38;5;245
-.ttl 00;38;5;245
-.nt 00;38;5;245
-.torrent 00;38;5;245
-.xml 00;38;5;245
-*Makefile 00;38;5;245
-*Rakefile 00;38;5;245
-*Dockerfile 00;38;5;245
-*build.xml 00;38;5;245
-*rc 00;38;5;245
-*1 00;38;5;245
-.nfo 00;38;5;245
-*README 00;38;5;245
-*README.txt 00;38;5;245
-*readme.txt 00;38;5;245
-.md 00;38;5;245
-*README.markdown 00;38;5;245
-.ini 00;38;5;245
-.yml 00;38;5;245
-.cfg 00;38;5;245
-.conf 00;38;5;245
-.c 00;38;5;245
-.cpp 00;38;5;245
-.cc 00;38;5;245
-.sqlite 00;38;5;245
-.go 00;38;5;245
-.sql 00;38;5;245
-.csv 00;38;5;245
+# Archives, compressed
+.7z 1;35
+.apk 1;35
+.arj 1;35
+.bin 1;35
+.bz 1;35
+.bz2 1;35
+.cab 1;35 # Win
+.deb 1;35
+.dmg 1;35 # OSX
+.gem 1;35
+.gz 1;35
+.iso 1;35
+.jar 1;35
+.msi 1;35 # Win
+.rar 1;35
+.rpm 1;35
+.tar 1;35
+.tbz 1;35
+.tbz2 1;35
+.tgz 1;35
+.tx 1;35
+.war 1;35
+.xpi 1;35
+.xz 1;35
+.z 1;35
+.Z 1;35
+.zip 1;35
+.zst 1;35
-# "unimportant" files as logs and backups (base01)
-.log 00;38;5;240
-.bak 00;38;5;240
-.aux 00;38;5;240
-.lof 00;38;5;240
-.lol 00;38;5;240
-.lot 00;38;5;240
-.out 00;38;5;240
-.toc 00;38;5;240
-.bbl 00;38;5;240
-.blg 00;38;5;240
-*~ 00;38;5;240
-*# 00;38;5;240
-.part 00;38;5;240
-.incomplete 00;38;5;240
-.swp 00;38;5;240
-.tmp 00;38;5;240
-.temp 00;38;5;240
-.o 00;38;5;240
-.pyc 00;38;5;240
-.class 00;38;5;240
-.cache 00;38;5;240
+# For testing
+.ANSI-30-black 30
+.ANSI-01;30-brblack 01;30
+.ANSI-31-red 31
+.ANSI-01;31-brred 01;31
+.ANSI-32-green 32
+.ANSI-01;32-brgreen 01;32
+.ANSI-33-yellow 33
+.ANSI-01;33-bryellow 01;33
+.ANSI-34-blue 34
+.ANSI-01;34-brblue 01;34
+.ANSI-35-magenta 35
+.ANSI-01;35-brmagenta 01;35
+.ANSI-36-cyan 36
+.ANSI-01;36-brcyan 01;36
+.ANSI-37-white 37
+.ANSI-01;37-brwhite 01;37
-# Audio formats (orange)
-.aac 00;38;5;166
-.au 00;38;5;166
-.flac 00;38;5;166
-.mid 00;38;5;166
-.midi 00;38;5;166
-.mka 00;38;5;166
-.mp3 00;38;5;166
-.mpc 00;38;5;166
-.ogg 00;38;5;166
-.ra 00;38;5;166
-.wav 00;38;5;166
-.m4a 00;38;5;166
-# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
-.axa 00;38;5;166
-.oga 00;38;5;166
-.spx 00;38;5;166
-.xspf 00;38;5;166
+#############################################################################
+# Your customizations
-# Video formats (as audio + bold)
-.mov 00;38;5;166
-.MOV 00;38;5;166
-.mpg 00;38;5;166
-.mpeg 00;38;5;166
-.m2v 00;38;5;166
-.mkv 00;38;5;166
-.ogm 00;38;5;166
-.mp4 00;38;5;166
-.m4v 00;38;5;166
-.mp4v 00;38;5;166
-.vob 00;38;5;166
-.qt 00;38;5;166
-.nuv 00;38;5;166
-.wmv 00;38;5;166
-.asf 00;38;5;166
-.rm 00;38;5;166
-.rmvb 00;38;5;166
-.flc 00;38;5;166
-.avi 00;38;5;166
-.fli 00;38;5;166
-.flv 00;38;5;166
-.gl 00;38;5;166
-.m2ts 00;38;5;166
-.divx 00;38;5;166
-.webm 00;38;5;166
-# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
-.axv 00;38;5;166
-.anx 00;38;5;166
-.ogv 00;38;5;166
-.ogx 00;38;5;166
+# Unimportant text files
+# For universal scheme, use brightgreen 01;32
+# For optimal on light bg (but too prominent on dark bg), use white 01;34
+#.log 01;32
+#*~ 01;32
+#*# 01;32
+.log 01;34
+*~ 01;34
+*# 01;34
+# Unimportant non-text files
+# For universal scheme, use brightcyan 01;36
+# For optimal on dark bg (but too prominent on light bg), change to 01;33
+.bak 01;36
+.BAK 01;36
+.old 01;36
+.OLD 01;36
+.org_archive 01;36
+.off 01;36
+.OFF 01;36
+.dist 01;36
+.DIST 01;36
+.orig 01;36
+.ORIG 01;36
+.swp 01;36
+.swo 01;36
+*.v 01;36
+#.bak 01;33
+#.BAK 01;33
+#.old 01;33
+#.OLD 01;33
+#.org_archive 01;33
+#.off 01;33
+#.OFF 01;33
+#.dist 01;33
+#.DIST 01;33
+#.orig 01;33
+#.ORIG 01;33
+#.swp 01;33
+#.swo 01;33
+#*.v 01;33
+# The brightmagenta (Solarized: purple) color is free for you to use for your
+# custom file type
+.gpg 34
+.gpg 34
+.pgp 34
+.asc 34
+.3des 34
+.aes 34
+.enc 34
+.sqlite 34