I hate color markup of my source code. I hate the color output of `ls`. It's not that I am some fanatic, craving back to the pre-web days. It's not that I go around telling people, in a bitter voice "life was better when virtual desktops were in 80x25 using the 'screen' tool!"
No, it's more related to running my 21 inch monitor in 1024x768. I want to be able to see what I am doing. The color stuff makes it @#$# impossibly to see. Too bright cyan colors. And odd greens. It's great to get cues as to what type of files are in the directory when you do an ls; but not at the expense of being able to read the filename.
Maybe it's helpful to color code HTML markup; but for perl code I prefer to keep the markup in the indention; and for ls output I'm just fine with seeing the filenames and knowing what type of file it is.
But don't despair, it's easy to fix ...
To make ls stop the nuttiness you have to delete the alias that makes `ls` interpreted as `ls --color=tty`. On many Linux boxes you need to delete some files called color-something in /etc/profile.d/.
To make emacs sane you can add
;; disable color crap
(setq-default global-font-lock-mode nil)
to your .emacs file. You can also toggle the color crap with "Meta-x global-font-lock-mode