天天看點

優化 window 指令行使用體驗

背景

window

下的開發體驗,遠遠不如

mac

要舒适,指令行工具不好用要占非常大的因素。

WSL2

推出之後,裝個

ubuntu

,然後配上

oh-my-zsh

,将就着用用也還不錯,但是總歸還是有點麻煩。

最近有點懶得把我的小

nuc

mbp

在公司和家之間帶來帶去,在家就隻能用性能拉垮的

macmini

或者桌上型電腦了。

而最近又要抓緊在家的時間好好學習下,正好趁着周末再研究下如何提高

window

下的開發體驗好了。

最終效果圖:

優化 window 指令行使用體驗

概述

最早的時候,大概

16、17年左右,我是使用

cmder

,一定程度上可以模拟

linux

下的一些指令,但是

apt

on-my-zsh

這類工具并沒有什麼合适的替代品。

後來試了下

chocolatey

來安裝軟體,體驗也一般。

再後來微軟推出了

WSL

,以及之後的

WSL2

,慢慢也解決了很多問題,而且随着

windows Terminal

的推出,終端界面也美觀了不少,但總是不如直接用

mac

省事。

我自己在

mac

下主要是

iterm2 + zsh + on-my-zsh

,再裝上一堆

oh-my-zsh

的插件,體驗極好。

考慮到組内有同學還是以

window

為主力環境,正好再調研調研怎麼提高體驗好了。

以下部分安裝或配置步驟,我會直接貼官方的英文文檔,建議先直接閱讀文檔,遇到問題或有不懂的地方,再單獨問我。

工具介紹

最終使用到的有下列工具:

  • PowerShell Core
  • Windows Terminal:
  • Chocolatey
  • Oh-My-Posh

1. PowerShell Core

倉庫位址:https://github.com/PowerShell/PowerShell

這裡需要好好區分一下,

window

系統自帶了

PowerShell

,但是自帶的是 5.x 版本,在此之後的版本,不再叫

Windows PowerShell

了,而是叫

PowerShell Core

通過這個名稱改變,也能看出來,主要是去掉了

window

,其實就是變成了跨平台的,在 6.x 版本之後,

PowderShell

可以被安裝在

linux

windows

mac

等各個系統中使用了。

是以我們需要先把電腦上的

PowerShell

升個級,直接看文檔安裝下就行。

在 Windows 上安裝 PowerShell

2. Window Terminal

倉庫位址:https://github.com/microsoft/terminal

官方介紹如下:

Windows Terminal is a new, modern, feature-rich, productive terminal application for command-line users. It includes many of the features most frequently requested by the Windows command-line community including support for tabs, rich text, globalization, configurability, theming & styling, and more.

The Terminal will also need to meet our goals and measures to ensure it remains fast and efficient, and doesn’t consume vast amounts of memory or power.

了解成就是個漂亮好用點的終端應用程式就行。

直接通過系統自帶的

Microsoft Store

商店安裝即可。

優化 window 指令行使用體驗

安裝完成之後,可以打開設定界面,改成預設使用

PowerShell

,以及配置相應的外觀

優化 window 指令行使用體驗
優化 window 指令行使用體驗
優化 window 指令行使用體驗

3. Chocolatey

官網:https://chocolatey.org/

chocolatey

是微軟推出的一款包管理器,類似于

apt

yum

,可以直接通過指令行安裝軟體的安裝,基礎的

git

vim

wget

python

等工具,甚至字型

Fira Code

,都可以直接使用

choco

指令完成安裝了,除了容易有網絡問題,綜合體驗比自己到處下安裝包還是強多了。

如何安裝請看:https://chocolatey.org/install

常用指令:

choco install wget # 安裝軟體

choco list -local-only # 列出所有已安裝的軟體

優化 window 指令行使用體驗

choco upgrade all # 更新已安裝的所有軟體

将 all 替換成具體的名稱,可以單獨更新某個軟體。

優化 window 指令行使用體驗

更多指令,自己翻文檔吧。

4. Oh-My-Posh

官網:https://ohmyposh.dev/

類似于

oh-my-zsh

,安裝起來也很簡單,

on-my-posh

提供了很多自定義主題和配色,

posh-git

提供了 git 狀态顯示和指令補全等功能。

PowerShell

中執行下列指令即可:

# 安裝 oh-my-posh
Install-Module oh-my-posh -Scope CurrentUser
Install-Module posh-git -Scope CurrentUser

# 顯示所有的主題,可以從中選一個
Get-PoshThemes

# 修改主題,我個人喜歡使用 robbyrussel 主題,也就是 oh-my-zsh 的預設主題,比較簡潔
Set-PoshPrompt -Theme robbyrussel
           

如果主題顯示有亂碼,是因為字型不全的問題,參考 https://ohmyposh.dev/docs/fonts 解決,其實就是安裝字型,然後修改配置檔案使用這個字型。

更新配置檔案

$PROFILE

,類似于

linux

.bashrc

檔案,輸入以下指令:

然後在檔案中寫入以下内容并儲存:

# 引入 posh-git
Import-Module posh-git

# 引入 oh-my-posh
Import-Module oh-my-posh

# 引入 ps-read-line
Import-Module PSReadLine

# 設定主題
Set-PoshPrompt -Theme robbyrussel

# 設定預測文本來源為曆史記錄
Set-PSReadLineOption -PredictionSource History