起因
其实我是很不想折腾的,因为一折腾就根本停不下来,时间就不知不久没有了。
但是苦于 win10 的自带的console
体验极差,此外再加上时不时的控制台乱码来干扰我。
说起这个乱码的事情,其实很早就有这个问题了。
虽然说有时候并不影响我的使用,但是乱码出现在vscode
调试的控制台里面就很难受了。
网络上面找了一下,大概原因的是vscode
的utf8
编码和cmd/powershell
的gb2312
冲突。
解决方案是
chcp 65001
- 将电脑的编码格式设置成
utf-8
本来第二个方案应该是一个很不错的选择,但是设置完之后会发现 win10 自带的cmd
会出现问题,像我这种强迫症患者,肯定不接受。
于是就开始了折腾之旅,只有有没有解决调试的乱码,我也不知道。
安装 PowserShell 7
我一看以为,安装好了之后会替换系统自带的powsershell
,结果我想多了。
安装的就是一个独立的shell
,跟git bash
一个道理。
所有,问题来了,我要的是一个好用省心的shell
Terminus
网上搜了一下,发现有很多第三方终端模拟器,大部分的特点是界面十分漂亮,very modern.
这里就选了一个我觉得很不错的模拟器Terminus
。
下载地址
或者使用scoop install terminus
安装
不过由于其使用electron
开发,在打开速度和内存占用上面可能会不如意。
不过无所谓,vscode
也是electron
开发的使用体验上面还是很棒的。Terminus
也差不到哪里去的。
界面十分漂亮,i 了。
好看是第一生产力。
比较关键的事情还是,设置是UI
界面,完全照顾了像我这样不会配置的新手。
需要我们设置的一般是font
和default shell
在加上一个漂亮的theme
就可以开始使用了。
不过,目前为止,我们也仅仅是做到,让控制台界面看起来更漂亮一点罢了。
其实我想要的是这样的
PowerShell 彩色文件列表
安装 PowerShell 模块PSColor
#安装
Install-Module PSColor -Scope CurrentUser
#启用
Import-Module PSColor
再次输入ls
会发现颜色有变化了。
美化提示符
提示控制台的使用体验
#安装 posh-git, 解决下面的依赖
Install-Module posh-git -Scope CurrentUser
#安装 oh-my-posh
Install-Module oh-my-posh -Scope CurrentUser
# 启用
Import-Module posh-git
Import-Module oh-my-posh
# 这里的主题可以修改的,下面会使用到别人写好的主题来达到上面的效果。
Set-Theme PowerLine
到目前这样,控制台基本上已经十分的nice
了。
不过,问题是每一次都需要我们手动import
一下模块。
这里就需要powershell
的配置文件发挥作用了。
# 查看配置文件位置
$profile | Format-List -force
可以看到,我们只需要配置CurrentUserAllHosts
的文件即可
在其文件写入一下内容,并保持。再次打开powershell
,配置即可生效。
Import-Module PSColor
Import-Module posh-git
Import-Module oh-my-posh
Set-Theme PowerLine
使用 SpencerTechy 主题
虽然powershell
界面足够美观,但是还是有不少欠缺的地方。
这里我们可以直接使用别人写好的配置文件和主题,来简化配置难度。
详细配置见dotfiles
WSL
其实很早就听说WSL2
已经出了,不过需要预览版才能安装使用。WSL2
相比于WSL
有了很大的改进,主要方面是WSL2
是跑在虚拟机里面了。
可能内存占用比较多一些,性能方面和WSL
相差不大。
不过WSL2
也有它新的问题出现,比如说网络不再互通了。win10下的任务管理器也看到运行在WSL2
下的进程了。不过,我想这总比WSL
阉割版的比较好吧?
不是今天尝试其安装升级win10到预览版本,确一直卡在注册界面。
不过我又死心,就在写这篇文章的时候有试了一下,居然可以了。
估计是注册使用资格需要一定的时间,不过我已经折腾WSL
都差不多了......
安装wsl
管理员执行
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
安装好之后即可在微软应用商店搜索linux
选择一个发行版下载即可,这里我对debian
情有独钟,自然选择debian
。
安装完成之后即可在控制台下面键入bash
来启动wsl
,过程十分简单。
配置linux控制台
#安装zsh
apt install zsh
#安装 wget
apt install wget
#安装oh-my-zsh
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh
修改.bashrc
文件,添加一下内容,实现启动初始化控制台
bash -c zsh
VScode
之后打开vscode会有神奇的提示,跟着提示安装wsl
插件后就可以直接打卡wsl
里面的文件,直接在vscode
上面开发。
好处就是不用再去折腾win10
的开发环境,在debian
安装好开发环境就省得折腾win10了。
此外就是可以使用linux
上面的很大命令,而这些在win10
下面的体验不是很好。
win10包管理
由于习惯了win10的思维,导致我一直认为win10
没有什么包管理。
看了是我见识太短浅了,其实win10自带有包管理,可能不是很出名。
不过今天就了解到了两个很好用的包管理。
- scoop
- chocolatey
简单了解一下区别,发现scoop
更适合搭建开发环境,所有肯定就选了scoop
了。
set-executionpolicy remotesigned -scope currentuser
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
#检查
scoop help
安装完成之后就可以使用scoop
愉快得下载安装了。
#example
scoop install git
scoop install vim
scoop install chrome
是不是很好用呢。
Scoop 把软件安装在哪儿
Scoop 在你的用户根目录(一般是 C:Users用户名)下创建了一个名为 scoop 的文件夹,并默认将软件下载安装到这个文件夹下
Scoop 将软件安装到一个相对隔离的环境下(Each program you install is isolated and independent),从而保证环境的统一和路径不被污染
使用包管理之后,可以避免很大的麻烦。
比较如果正常得安装一个软件首先得去
- Google一下官网/Github
- 在官网上面找到合适的下载连接
- 如果是安装包形式得手工选择安装的位置
- 可能需要配置环境变量
- ...
现在有了包管理之后就可以使用一条命令很省心省事得安装/卸载软件了。
一点小问题
在wsl
下面运行netstat -tnlp
看不到网络连接的情况
目前不知道什么情况。
Thought
这里仅仅记录自己折腾的过程,以备不时之需。
参考资料
- https://coolcode.org/2018/03/16/how-to-make-your-powershell-beautiful/
- https://juejin.im/post/5becda576fb9a049e65fcf48
- https://juejin.im/post/5bd5a08cf265da0add520772