如何将 wsl 中的深蓝色改为更亮的颜色?

如何将 wsl 中的深蓝色改为更亮的颜色?

如何将 wsl(适用于 Linux 的 Windows 子系统)中的深蓝色更改为更亮的颜色?这是使用 vim 打开的配置文件的图片。我基本上看到黑屏。我看不懂。控制台的属性窗口不允许更改特定颜色。只有背景和主文本。

在此处输入图片描述

答案1

  1. 启动你的 WSL shell(对我来说是 ubuntu.exe)
  2. 右键单击标题栏并选择“属性”
  3. 出现一个非常愚蠢的对话框,你必须按照以下步骤操作
    • 选择“颜色”选项卡
    • 选择“屏幕文本”,并注意哪个颜色框被突出显示
    • 选择第 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

.exeschemes文件夹复制到同一位置并运行(例如):

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:.nu​​v=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;32m\]\w\...将以...:\[\033[01;33m\]\w\...黄色呈现提示的目录前景文本。

保存,关闭 vim,最简单的测试方法是输入bash<enter>。然后exit<enter>返回。或者关闭并重新加载终端窗口。

这个单个字符的值是文本的前景色,默认情况下,即黑色背景上的深蓝色。

趣味提示:此字符之前的字符是相同文本的背景颜色。

对于微软干涉用户的选择,我向大家表示歉意。

不要忘记阅读此 .bashrc 文件中的其余注释。显然有人花了很多时间思考在构建每个使用 WSL bash 的人都会将其作为模板的文件时所做的选择。

相关内容