2012-08-06 67 views
1

我已经在我的.bash_profile在我的Mac OS X定义着色如下:OS X GNU屏幕打破着色

# ls color alias 
alias ls='ls -G' 

# Colours 
export CLICOLOR=1 
export LSCOLORS=GxFxCxDxBxegedabagaced 
BLACK="\[\033[0;30m\]" 
DARK_GRAY="\[\033[1;30m\]" 
LIGHT_GRAY="\[\033[0;37m\]" 
WHITE="\[\033[0;37m\]" 
RED="\[\033[0;31m\]" 
RED_BOLD="\[\033[1;31m\]" 
YELLOW="\[\033[0;33m\]" 
YELLOW_BOLD="\[\033[1;33m\]" 
GREEN="\[\033[0;32m\]" 
GREEN_BOLD="\[\033[1;32m\]" 
BLUE="\[\033[0;34m\]" 
BLUE_BOLD="\[\033[1;34m\]" 
CYAN="\[\033[0;36m\]" 
CYAN_BOLD="\[\033[1;36m\]" 
PURPLE="\[\033[0;35m\]" 
PURPLE_BOLD="\[\033[1;35m\]" 
BROWN="\[\033[0;33m\]" 

# Terminal colours 
export CLICOLOR=1 
export XTERM=xterm-color 
export LSCOLORS=BxFxCxDxGxegedabagacad 

我也注意到,当我使用GNU屏幕(总是) ,着色是非常不同的。红色变成黄色,橙色变成黄色,引号之间的任何内容都由紫色变为绿色。 Emacs大多数情况下会出现这种情况,因为Emacs会显示各种不同的颜色。

我也有一个ps1的提示,它也显示我目前的git分支在目录中。这不会改变它的颜色。

我的第一个问题是,这些颜色定义在哪里? GNU-Screen为什么以及如何改变颜色?什么是着色我的终端最好的方法?

我的第二个问题是,当我从我的Mac OS X中将我的.bash_profile复制到CentOS服务器中时,我的SSH进入,着色不一样。 Mac使用与CentOS不同的颜色代码吗?如果是这样,我怎样才能标准化我的着色?

回答

1

您的本地终端仿真和屏幕认为它可能不支持的颜色数量。

  • 什么是TERM前和开始后screen的价值?

  • 无论哪种情况,tput colors的输出是多少?

为服务器和Max OS终端报告这些内容。


感谢您报告。服务器假定支持的颜色多于OSX终端实体支持的 。

尝试在CentOS上用TERM=xterm-color来替代TERM,或者从linux上的rc文件/配置文件中删除任何TERM设置,并让操作系统从ssh获取适当的值。

+0

Mac OS上的'$ TERM'和屏幕前的服务器是:'$ TERM -bash:xterm-256color:command not found'。我的Mac OS终端上的“输出颜色”是8,在我的服务器上是256. – darksky 2012-08-08 10:44:14

+0

它看起来像OSX终端仅限于八种颜色。看看[在Mac OS X终端中,最好使用什么颜色,字体等?](http://stackoverflow.com/questions/4186886/in-mac-os-x-terminal-what-are-最好的颜色字体等),以推荐[iTerm2](http://www.iterm2.com/),它似乎支持256种颜色。 – 2012-08-08 11:25:23

+0

哦 - 所以我在Mac上看到的着色不是真正的颜色设置?因为我的Mac只支持8种颜色,所以它们只是被转换了?你知道如何让'Emacs'自行着色语言吗?在256色终端中,Emacs颜色在'cc-mode'中非常恼人。评论实际上分为两种颜色,绿色的“//”和粉红色的实际评论字符串。这是正常的吗? – darksky 2012-08-08 13:54:56