问题列表 1.终端如何支持显示彩色      现代终端基本上都已经支持彩色显示了。【8色的显示屏是什么时候发明的?】 您可以在bash下用这段来试试: echo -e “33[40;32mcolored text33[0;0m” 如果这里出来的是彩色文字,那就说明您的终端是支持彩色显示的。如是没有出来彩色文字,那就,改您的终端类型。一般情况下您的终端软件可选的有vt100,vt102,vt220,vt320,linux,xterm等几种。我一般选linux. 2.终端颜色和颜色表:    要在终端中显示彩色文字,需要这样输出 ESC[attr;frontcolor;backgroundcolor;m 要加彩色的文字。 ESC是ESCAPE键,它的ASC码是十进制的27,八进制的33.所以我们用echo -e “33…”来输入。attr是要给文字设置的属性代号,frontcolor是文字颜色代号,backgroundcolor是文字背景色代码。这些代号及意义如下:   前景             背景              颜色     —————————————     30                40               黑色     31                41               紅色     32                42               綠色     33                43               黃色     34                44               藍色     35                45               紫紅色     36                46               青藍色     37                47               白色     代码              意义     ————————-     0                 OFF     1                 高亮显示     4                 underline     5                 闪烁     7                 反白显示     8                 不可见    2.PS1,ls ,grep 如何加彩色   PS1是bash一个特殊的变量,用来指定提示符。我们只要修改它的值就可以指定提示符如何显示。在这里h表示主机名,u表示当前用户,w表示当前目录。我的设置是: export PS1=”[e[36;1m]u@[e[32;1m]H>:w>[e[0m]“  这里bash的提示符已经变成彩色了,但是ls的输出还不是彩色的。也很简单,man一下就知道了,在linux下, alias ls=”ls –color=auto”就行了。在FreeBSD下,alias ls=”ls -G”即可。 grep也是支持彩色的: alias grep=”grep –color=auto”   好了,现在我们可以把~/.bashrc文件 改一下: export PS1=”[e[36;1m]u@[e[32;1m]H>:w>[e[0m]“ alias ls=”ls –color=auto” alias grep=”grep –color=auto”     2.svn diff怎么加彩色: 我写了一个脚本,放在http://xurenlu.googlecode.com/files/svncolor.py这里。只需要svn diff|python svncolor.py即可把svn diff的结果转成彩色的。 3.git diff怎么加彩色 git diff加颜色非常简单:修改.git/config,加上 [diff]     color = auto    4.vim 怎么支持彩色 非常简单,如果是php文件: :set ft=php :set syntax   就行了。  6.怎么去彩色 为什么要去颜色呢,因为有时候我们需要把一些输出重定向到vim中间,这时在vim中会出现很多控制字符。所以我们要再转成黑底白字。 我这里也有一个脚本。  #!/usr/bin/python import sys,re PESC=chr(27) nocolor_re=re.compile(PESC+’[[d;]+m’) if __name__==”__main__“:     while(True):         line=sys.stdin.readline()         if not line: break         line=line.replace(“n”,””)         print nocolor_re.sub(“”,line)