powershell强大的脚本执行器,垃圾的shell。奇怪的alias,逆天的命令输入体验(指一大长串),不过也都能优化一下
安装新的powershell
Windows11自带的是powershell5.1,很难用(虽然有一些好用的特性),不过为了日常方便还是装一个可以共存的powershell 7
*注:你最好先安装Windows Terminal
在GitHub上的release page下载最新版的msi安装包(可能在Assets->Show all xx assets里),记得下win-x64.msi(如果你是arm用户我不说你也知道装哪个),具体安装的时候可以直接一路继续。
装完以后它就是terminal里powershell这一项
安装Chocolatey
winget包挺多的,但还是不够多,choco上包不少,安装也比较方便
在管理员powershell下运行
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
之后输入choco
运行就可以看到chocolatey vx.y.z了
安装git
后面要用git的地方太多了,必须要装git
https://gitforwindows.org/ 上有个大大的Download,下载并安装
注:可以不选 Windows Explorer integration和Associate .sh files to be run with Bash
选择编辑器可以选择大家喜欢的 VSCode
SSH excutable 在Windows11上可选external OpenSSH
后面基本可任选,因为我们不用git bash
完成安装后在终端中运行git
就可以看到输出了
安装helix
Helix是一款优秀的文本编辑器,有语法高亮等好用的特性
在管理员powershell下运行
choco install helix
选择run the script,再重新打开终端,输入hx --health
应该可以看到Highlight大多是绿色(不一定)的勾
*如果你习惯用vi
这些,可以这样:
hx $PROFILE
打开powershell profile并输入
Set-Alias vi hx
Set-Alias vim hx
ESC
->:x
保存退出,重进powershell即可用vi
打开helix了
不会用的可以看看相关教程1,或者学习vim(这两个差不太多)
添加(假的)su命令
还是hx $PROFILE
,输入
function su(){
echo "Starting New Session.."
Start-Process -Verb RunAs wt.exe ('"{0}"' -f (Get-Process -Id $PID).Path)
}
保存,重新加载powershell,输入su
即可弹出一个管理员powershell了(肯定得过UAC的)
安装clang/llvm+cmake+ninja
你仍然需要安装VisualStudio
Windows下C/CXX编译器以MSVC为主,要么就用mingw,但现在可以用clang/llvm原生编译,当然了用cmake+ninja就会让你的项目编译更自然,这样也能激活helix的C/CXX LSP提供代码高亮
https://github.com/llvm/llvm-project/releases下载LLVM-{version}-win64.exe
并安装
*不一定就要去装pre-release,建议去安装下面的Latest版本(点这里可以直达)
安装时请选择Add LLVM to the system PATH for all users
接下来安装cmake和ninja
记得是管理员powershell
choco install cmake ninja
然后在你的开始菜单找cmake,找到它的exe的目录(一般在C:\Program Files\CMake\bin
),并手动添加到系统环境变量PATH中
最后打开PowerShell,输入cmake
,ninja
,clang
验证你的安装
另外我自己写了一个一键build脚本,你可以抄到你的powershell profile里(hx $PROFILE
)
# Set Clang Path env
$env:CC = where.exe clang
$env:CXX = where.exe clang++
# Build Script For Cmake
function cbuild(){
[string[]]$f = Get-ChildItem -File
foreach($i in $f){
if ($i -like "*CmakeLists.txt"){
cmake -S $pwd -B $pwd\build\ -G"Ninja" .
ninja -C .\build all -j $env:NUMBER_OF_PROCESSORS
return
}
}
echo "Cannot Find CmakeLists.txt"
}
安装eza
exa是rust编写的优秀的ls替代,但因为无人维护,故我们使用其fork eza
winget install eza-community.eza
如果上述方式不可用,请先安装rust(在后面),然后
cargo install eza
为了让eza代替ls,请在profile加上
# Use eza as ls provider
Set-Alias ls eza
function la(){
eza -1al
}
# lst means show directory as a tree
function lst(){
eza -lTabgh
}
安装rust
目前必须要visual C++
最上面 To install Rust, download and run rustup‑init.exe then follow the onscreen instructions. 点rustup‑init.exe下载下来,安装即可(这里的也行,但你得是x86_64)
Comments | NOTHING