答案1
- 启动你的 WSL shell(对我来说是 ubuntu.exe)
- 右键单击标题栏并选择“属性”
- 出现一个非常愚蠢的对话框,你必须按照以下步骤操作
- 选择“颜色”选项卡
- 选择“屏幕文本”,并注意哪个颜色框被突出显示
- 选择第 10 个颜色框,其中深蓝色
- 将 rgb 值设置为 59,120,255(或您喜欢的蓝色)
- 选择第一步中记下的颜色框
- 按“确定”
这将改变控制台调色板中的颜色(例如用于突出显示 PS1 提示中的 cwd)。但是,您提供的 vim 屏幕截图直接使用深蓝色,而不是通过调色板。要更改 vim 中的颜色,请参阅https://unix.stackexchange.com/questions/88879/better-colors-so-comments-arent-dark-blue-in-vim。
答案2
如果你在 2021 年及以后到达这里:
Windows 终端现在可以在“设置(Ctrl+,)”->“配色方案”中修改和定义配色方案。
您还可以在“设置(Ctrl+,)”->“[选择一个配置文件,例如 Ubuntu]”->“外观”中为每个配置文件选择不同的配色方案。
原始帖子
已经有一个答案为这个特定问题提供了解决方案(更改当前方案的一种颜色),但微软也提供了更全面的解决方案。
您可以将配色方案更新为另一个预设,并定义自己的方案/预设。他们制作了 ColorTool,可在 github 上获取: https://github.com/Microsoft/Terminal/tree/master/src/tools/ColorTool
当您下载并解压 zip 文件时,可能已经有一个内置的 .exe 隐藏在某个子目录中(terminal\src\tools\ColorTool\ColorTool\bin\Debug\net461\
),而方案位于不同的地方。对我来说
C:\Users\[username]\Documents\GitHub\terminal\src\tools\ColorTool\ColorTool\bin\Debug\net461
C:\Users\[username]\Documents\GitHub\terminal\src\tools\ColorTool\schemes
将.exe
和schemes
文件夹复制到同一位置并运行(例如):
ColorTool.exe -b campbell.ini
就是这样!
有关 MS dev 博客的更多信息: https://devblogs.microsoft.com/commandline/introducing-the-windows-console-colortool/
如果在指定路径中找不到,.exe
您可以尝试从源代码构建它。其他人可以提供帮助。
答案3
更改主文件夹中的 .bashrc 文件。
例如:将 LS_COLORS 开头的行替换为:
LS_COLORS='rs=0:di=1;35: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:战争=01;31:.耳朵=01;31:特区=01;31:.rar=01;31:.ace=01;31:.动物园=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:'; 导出 LS_COLORS
您可以在这里找到更多信息: https://medium.com/@iraklis/fixing-dark-blue-colors-on-windows-10-ubuntu-bash-c6b009f8b97c
答案4
我知道。深蓝色在黑色背景上很难看清。
在我的 WSL 实例的 bash 终端上,这就像更改一个文件中的一个字符一样简单;您很可能已经拥有该文件。
编辑vim ~/.bashrc
在第 60 行左右查找以下内容。
if [ "$color_prompt" = yes ]; then PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;32m\]\w\[\033[00m\]\$ ' else PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' fi
按照then
,编辑变量的值PS1
。
具体来说,改变对我来说是第 89 个字符 ...:\[\033[01;3
2m\]\w\...
将以...:\[\033[01;33m\]\w\...
黄色呈现提示的目录前景文本。
保存,关闭 vim,最简单的测试方法是输入bash<enter>
。然后exit<enter>
返回。或者关闭并重新加载终端窗口。
这个单个字符的值是文本的前景色,默认情况下,即黑色背景上的深蓝色。
趣味提示:此字符之前的字符是相同文本的背景颜色。
对于微软干涉用户的选择,我向大家表示歉意。
不要忘记阅读此 .bashrc 文件中的其余注释。显然有人花了很多时间思考在构建每个使用 WSL bash 的人都会将其作为模板的文件时所做的选择。