在Windows Terminal中使用zsh

2022-09-14 14:48:15 字數 2739 閱讀 7384

在linux上使用oh-my-zsh非常爽,而windows下cmd介面太醜陋了。但powershell卻可以擴充套件,同樣能達到類似linux下的效果。

windows自帶了powershell,預設版本為5.x。如要要使用更高的版本7.x,可以參考:powershell 文件 - powershell | microsoft docs

下面的操作都是在powershell下面進行。

1.安裝oh-my-posh和posh-git

類似於oh-my-zsh,oh-my-posh 為 powershell 提供了很多自定義主題和配色,而 posh-git 為 powershell 提供了 git 狀態顯示和命令補全等。

install-module posh-git -scope currentuser 

install-module oh-my-posh -scope currentuser

2.安裝psreadlinewindows自帶的powershell預設版本是5.x,需要安裝psreadline。如果使用 powershell 7.x以上版本,自帶了 psreadline,不需要手動安裝。

# windows預設powershwll為版本為5.x,需要安裝psreadline

install-module psreadline

3.配置生成配置檔案。使用以下命令生成配置檔案。windows自帶的windowsshell配置在c:\users\使用者名稱\documents\windowspowershell下,7.x在同級目錄下,但資料夾名稱為powershell。

# 如果之前沒有配置檔案,就新建乙個 powershell 配置檔案

if (!(test-path -path $profile ))

用記事本開啟配置檔案

notepad $profile
寫入以下內容。

import-module posh-git # 引入 posh-git

import-module oh-my-posh # 引入 oh-my-posh

set-poshprompt paradox # 設定主題為 paradox

set-psreadlineoption -predictionsource history # 設定**文字**為歷史記錄

set-psreadlinekeyhandler -key tab -function complete # 設定 tab 鍵補全

set-psreadlinekeyhandler -key "

ctrl+d

" -function menucomplete # 設定 ctrl+d 為選單補全和 intellisense

set-psreadlinekeyhandler -key "

ctrl+z

" -function undo # 設定 ctrl+z 為撤銷

set-psreadlinekeyhandler -key uparrow -function historysearchbackward # 設定向上鍵為後向搜尋歷史記錄

set-psreadlinekeyhandler -key downarrow -function historysearchforward # 設定向下鍵為前向搜尋歷史紀錄

當然,這裡主題、快捷鍵等都是可以自定義的。設定好後儲存,重啟 powershell。

4.安裝字型

安裝支援powershell環境下的字型。

5.在powershell視窗中配置字型

在powershell視窗的標題欄上右鍵,屬性->字型,選擇字型。選擇字型名稱中含有pl或者powerline 的字型,這些字型是專門為powershell環境設計的字型。

看看效果吧。

windows terminal預設已經將powershell整合進來了。如果額外安裝了powershell 7.x的版本,也可以將其繼承進來。

直接使用msi的安裝包來進行安裝,不用任何設定預設就被整合進來了。

在window terminal的設定中,通過圖形介面來配置字型,或者也可以直接在json配置檔案中配置。

",

"hidden

": false

,

"name

": "

windows powershell"},

","hidden

": false

,

"name

": "

powershell 7",

"source

": "

windows.terminal.powershellcore

"},

注意:預設不是管理員許可權執行。如果將啟動檔案設定了  相容性->勾選 "以管理員身份執行此程式",則在windows ternimal中無法開啟。

前端雜燴 在工作,在思考,在沉澱

當我們沉浸在旺盛的需求之中時,整個人便會成為一台工作的機器,切著類似的頁面,寫著同樣的邏輯,重複著昨天或者上個月做的事情,時間久了,覺得膩味,沒有什麼創新,也沒有明顯的成長。用一句通俗的話來講 工作五年,後面四年重複著第一年的活兒。很多人嘗試跳出這個怪圈,不過基於環境壓力和思維受阻,最後又不得不選擇...

前端雜燴 在工作,在思考,在沉澱

當我們沉浸在旺盛的需求之中時,整個人便會成為一台工作的機器,切著類似的頁面,寫著同樣的邏輯,重複著昨天或者上個月做的事情,時間久了,覺得膩味,沒有什麼創新,也沒有明顯的成長。用一句通俗的話來講 工作五年,後面四年重複著第一年的活兒。很多人嘗試跳出這個怪圈,不過基於環境壓力和思維受阻,最後又不得不選擇...

需求在變化,思維在變化

做了這個遠端監控專案,發現開發專案其實相當具有挑戰性的,這種挑戰性主要表現在兩個方面 1 不斷變化的領導需求 或者客戶需求 2 並不熟練甚至並不了解的技術。最近看了一些 瘋狂的程式設計師 還是很羨慕絕影能在大學期間找到自己喜歡的方向,喜歡的事情,把自己喜歡的事情作為自己的工作甚至事業實際上是非常快樂...