不得不承认的是,在中文环境下,默认 PowerShell 的「新宋体」确实很不耐看。蓝色的背景也是丑到爆,有没有???由于最近要频繁使用powershell ,身为一个颜狗,本人想法设法的给自己的powershell更改了字体的配色,>_<
虽然没有 oh-my-zsh 好看,但是总比默认的蓝色背景好很多,我还是很满意滴........
由于默认 PowerShell 终端是一个非常底层的应用,其界面甚至没有利用 WinForm、WPF 等通用 UI 渲染框架来实现,而是直接调用底层 Windows API 来实现,因此其字体要求非常严格。(这也是我们不能随随便便下载一个我们喜欢的等宽字体PowerShell 默认终端使用的缘故.)
寻了好久,参考了很多文章,终于找到了一个唯一支持这一严格要求的字体(中文环境下)只有「Sarasa Gothic / 更纱黑体 / 更紗黑體 / 更紗ゴシック」(简称更纱黑体),可以从更纱黑体的GitHub页面下载.
下载完解压安装之后就可以进入powershell页面设置了.
微软官方提供了一个更换 PowerShell 配色的小工具:ColorTool.exe,我们可以利用它来更换 PowerShell 的主题色.ColorTool 支持 iTerm 主题.
我们可以从 ColorTool 的 GitHub 页面上面下载这个小工具。如果你是直接从 GitHub 上面下载 ColorTool 并解压,ColorTool.exe 的路径就并没有自动加入环境变量,所以你没有办法全局调用这个工具。
因此更推荐使用 scoop 来使用,如果你已经可以使用 scoop,请跳过下面的安装 scoop 的步骤,如果没有,按下面的这样做哦!!!
安装前提(所需要的环境):
操作环境:win10。
确保你的 PowerShell 版本 >= 3. win7或许低于3,得升级。
1. 查看自己 powershell 的版本:
$psversiontable.psversion.major
在我的电脑上运行结果如下:
2. 然后确保你允许PowerShell执行本地脚本,在PowerShell中输入如下内容,已完成执行策略的更改:
set-executionpolicy remotesigned -scope currentuser
遇到提示的话,输入Y即可.
3. 开始安装 scoop
在PowerShell中输入如下内容:
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
注:我自己刚开始安装的时候一直有提示错误:
使用“1”个参数调用“DownloadString”时发生异常:“未能解析此远程名称: 'raw.githubusercontent.com'”
所在位置 行:1 字符: 2
+ iex (new-object net.webclient).downloadstring('https://get.scoop.sh' ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : WebException
后来我发现需要一点点操作,Emmmmmmmmmmm,当我fan qiang 之后命令就能正常执行了.
4. 输入 scoop help 查看scoop 是否安装成功
scoop help
大家可以参考这篇 introducing the Windows Console Colortool 文章哦!!!
1. 安装colorTool
scoop install colortool
2.工具自带了几种主题,安装完成之后就可以查看主题了,我们可以利用下面这个命令进行查看:
# 注:-s 代表 schemes
colortool -s
3. 里面列出了相关的主题,然后我们就可以通过下面的命令来设置主题了.
将配色方案设置为默认设置
打开命令提示符并运行:
- colortool -d 主题名
- 您当前的窗口不会受到影响,但是您的默认值现在对应于该主题
将颜色方案应用于“窗口”和默认值
调用“ colortool -b 主题名”将同时更改Window的当前主题和默认主题。
4. 设置主题,个人感觉OneHalfDark这个主题最好看.
colortool OneHalfDark
这样设置完成后我发现,当我在其他地方打开powerShell 窗口时,还是自带的默认主题.我们需要做的是:
Emmmmmm.....................是不是非常简单!!!!