windows 终端美化

win 的终端一直是我的使用痛点。笔者之前使用过 macos 作为主力机,使用 zsh 进行日常使用。家里有一台win,因此也有使用 win 进行开发的需求。之前试过使用 power shell 和 sysm64 来优化 win 的终端,但是都有问题。
power shell 使用了 oh-my-posh 进行美化,但是使用感受还是跟 zsh 不一样,并且有一定的卡断延迟。
sysm64 使用 zsh + oh-my-zsh 进行美化,延迟非常严重,并且无法适配代码编辑器的终端。
最后发现 wsl 可以比较好地解决问题。

效果展示

  • image.png
  • image.png

安装步骤

子系统安装

安装arch

1
2
3
4
# 查看有哪些支持的wsl
wsl --list --online
# 安装喜欢的linux 系统
wsl --install archlinux

配置镜像模式(同步宿主机的网络,旧版wsl可能不支持)C://user/{username} 下创建 .wslconfig

1
2
3
4
5
6
[experimental]
autoMemoryReclaim=gradual  
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true

官网文档:https://learn.microsoft.com/zh-cn/windows/wsl/networking

设置默认启动

1
2
# 设置完后 cmd 终端输入 wsl 即可进入
wsl --set-default archlinux

子系统配置

笔者使用了 zsh + oh-my-zsh + p10k 进行美化,网上教程很多就不赘述了。

安装vscode windows 安装vscode,windows打开后vscode 后,可直接在wsl 中使用 code 命令。

安装docker windows 安装dockers,使用 wsl 的方式,启动docker后,可直接在wsl 中使用 docker 命令。

terminal 终端配置

安装好子系统后,terminal应该会自动创建一个子系统的终端配置,可以把 terminal 的默认配置改成子系统的配置,这样每次打开terminal 都会直接打开子系统的终端。 image.png 注意:如果使用了带图标的主题,需要在配置的“外观”选项中,将字体设置为 nerd font(如 Fira Code、Source Code Pro、Monaco 等)

vscode 配置终端

在设置中,把terminal.integrated.defaultprofile.windows 改为你的子系统。

使用技巧

  1. 打开win文件管理器 在 zsh 中增加配置 alias open=explorer.exe。这样,只需要输入 open . 就可以打开当前目录了。