Linux中vim或ls输出中的深蓝色


58

我在输入vimls输出时出现深蓝色问题。因为我使用的是黑色背景色,所以深蓝色的字几乎是完全不可见的。我该如何解决这个问题?



1
您可以做的另一件事是自己更改颜色。在黑色背景上,所有颜色(甚至是“深色”)都不应该被读取。如果您可以指定使用的终端,如果链接的问题尚不能解决问题,则可以提供更多信息。
Random832

对于某些显示器或视频卡输出,这似乎是一个问题。此默认蓝色(在linux控制台和某些终端仿真器中似乎至少或多或少相同)在某些显示器上可读,而在其他显示器上则不可读。
njsg 2015年

Answers:


55

您可以使用该background选项修改vim的颜色主题。采用

set background=dark

在您当前的会话中,或将其永久设置在您的vimrc中。

的输出ls配置为/etc/DIR_COLORS。有关更多信息,请参见手册。可以使用主目录中的~/.dir_colors(在Ubuntu上:~/.dircolors-参见中的条目~/.bashrc)文件覆盖设置。

像这样的条目

 DIR 01;36 

会产生更具可读性的青色背景。


对于~/.dircolors刚开始使用bash的用户:在按照此处的指示创建文件(例如)后,您只需要source ~/.bashrc查看其工作即可。感谢您的回答!
Marcus

26

建议您配置终端以使蓝色更显眼,而不是配置应用程序以避免黑底黑字。大多数终端仿真器都有相应的设置。在xterm中,有一个X资源:

XTerm.VT100.color4: CornflowerBlue

在其他终端仿真器中,在配置文件或对话框中查找颜色设置或主题。

有一个通用的控制序列来设置与应用程序中的颜色编号关联的阴影:OSC 4 ; c ; spec BEL其中,OSCESC ]c是颜色编号,并且spec是诸如#RGB的颜色规格。

printf %b '\e]4;4;#6495ed\a'  # set the blue shade to CornflowerBlue

应用程序所做的更改仅在下一次终端复位之前有效。如果使用此方法(仅在终端缺乏配置机制的情况下才建议使用),为使更改有效持久,请将颜色配置转义序列附加到终端的重置字符串(termcap:r1字符串; terminfo:rs1字符串)。

另请参见覆盖显示的颜色阴影,是否可以将本地计算机的终端颜色设置为使用ssh所使用的计算机的终端颜色?


起初听起来像是一个me脚的建议,但考虑到我看不懂一半的深色,而且我的程序都没有使用可能是合理的深色的纯背景色,这实际上很有意义!
M康拉德

Solarizedethanschoonover.com/solarized)为各种终端仿真器和其他程序提供了不错的配色方案。
大卫

10

ls为终端会话设置目录颜色的更快方法:

1.打开终端,运行dircolors命令:

machines@box790 ~ $ dircolors
LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';
export LS_COLORS
machines@box790 ~ $ 

它使您无法使用命令设置ls的颜色。“ di”代表目录。34是坏的深蓝色。36是青色。因此,让我们粘贴它,并将其更改为终端。

2.将整个内容复制到终端,进行单个更改

您将更di=01;34改为di=01;36

machines@box790 ~ $ LS_COLORS='rs=0:di=01;36:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';

machines@box790 ~ $ export LS_COLORS

3.这会将目录颜色立即设置为青色

do an 'ls' and see that directories are indeed cyan.

4.使以上步骤永久生效

通过将上述命令放在〜/ .bashrc的底部,使它永久化,如下所示:

LS_COLORS='rs=0:di=01;36:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';
export LS_COLORS

如果将其放入〜/ .bashrc中并(重新启动终端或source ~/.bashrc),则颜色仍应正确。


2
dircolors的配色方案可以保存在人类可读的文件中,并通过eval“ dircolors -b ~/.dir_colors” 从bashrc应用。请参阅此处的 colorscheme示例。
alexei

现在我的符号链接与目录的颜色相同
ealeon

@ealeon啊,看来目录di和符号链接ln的颜色与相同01;36。如果该特殊区别对您很重要,请随时切换这些颜色。我发现这是一个默认的颜色方案。
埃里克·莱斯钦斯基

8

如果通知vim您正在使用黑色背景(或其他深色主题),它将使所有颜色变亮,以便于阅读:

:set bg=dark

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.