关于后端:手把手-windows-terminal-美化拥有王一博个性化的终端

3次阅读

共计 9975 个字符,预计需要花费 25 分钟才能阅读完成。

windows terminal

  • windows terminal 文档
    https://learn.microsoft.com/z…
  • windows terminal 下载
    https://apps.microsoft.com/st…

Windows 终端 是一个旧式主机应用程序,它面向你青睐的命令行 shell,如命令提示符、PowerShell 和 bash(通过实用于 Linux 的 Windows 子系统 (WSL))。
它的次要性能包含多个选项卡、窗格、Unicode 和 UTF-8 字符反对、GPU 减速文本出现引擎,你还可用它来创立你本人的主题并自定义文本、色彩、背景和快捷方式

windows terminal 丑化

  • Windows 终端的 PowerShell 主题中的 Oh-My-Posh
  • windows terminal
  • oh-my-posh 主题
  • oh-my-posh code
  • nerd 字体下载
  • nerd-fonts
  • Jetbrains Mono 字体下载

window11 零碎默认会主动装置 windows terminal 的,
如果是 windows 10 的零碎须要先 下载 windows-terminal

windows-terminal 下载地址

https://apps.microsoft.com/st…

绝对之前的 cmd 和 powershell 曾经是十分难看了,然而还是得搞点个性化的货色,关上 windows terminal 进行设置

关上 windows terminal 设置后能够终端的 启动、款式、快捷键、配置的默认等进行设置,这里抉择 关上 左下角的 关上 JSON 文件 ,点击后
默认会应用 编辑器帮你关上

windows terminal 配置文件所在目录

C:\Users\sunsb\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json

C:\Users\sunsb\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json

最好是,关上 settings.json 文件所在目录,对 settings.json 文件拷贝一份

应用编辑器 vscode 或者 notepad++ 关上 settings.json 后,找到 profiles 下的 defaults

// C:\Users\sunsb\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
{
    "profiles": {
        "defaults": { // 终端的默认值配置
            "experimental.retroTerminalEffect": false, // 复旧格调的终端成果
            "font": {
                "face": "Consolas",
                "size": 14
            }
        },
    }
}

下方图片就是,下面默认配置的可视化

配置终端亚克力成果

{
// C:\Users\sunsb\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
    "profiles": {
        "defaults": { // 终端的默认值配置
            "experimental.retroTerminalEffect": false, // 复旧格调的终端成果
            "useAcrylic": true, // 是否应用 亚克力成果
            "acrylicOpacity": 0.1, // 亚克力成果 透明度
            "font": {
                "face": "Consolas",
                "size": 14
            }
        },
    }
}

接下来,给终端配置一个背景图片,并且设置背景图的透明度

// C:\Users\sunsb\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
{
    "profiles": {
        "defaults": { // 终端的默认值配置
            "experimental.retroTerminalEffect": false, // 复旧格调的终端成果
            "useAcrylic": true, // 是否应用 亚克力成果
            "acrylicOpacity": 0.1, // 亚克力成果 透明度,取值:0 - 1
            "backgroundImage": "D:/Terminal/1.png", // 背景图片门路,留神,图片门路应用 / 正斜杠,拷贝门路过去须要替换下
            "backgroundImageOpacity": 1, // 背景图片透明度,取值:0 - 1
            "font": {
                "face": "Consolas",
                "size": 14
            }
        },
    }
}

留神,图片门路应用 / 正斜杠,拷贝门路过去须要替换下

首次配置背景图成果

对 亚克力成果透明度 acrylicOpacity: 0.2 和 背景图片透明度 backgroundImageOpacity: 0.2 进行调整,最好找深一点色彩图片来作为背景图

上面是调整过后的成果,能够依据本人抉择的背景图片 来调整 亚克力成果透明度 和 背景图片透明度,边调整边查看成果

oh-my-posh 丑化终端

应用 oh-my-posh 来进一步的丑化终端,关上 oh-my-posh 官网地址查看 装置命令,这里采纳了 winget 的形式装置了

::: block-2

oh-my-posh 官网

https://ohmyposh.dev
:::

oh-my-posh 的装置形式

1 间接在 Microsoft Store 中搜寻 oh-my-posh 进行装置,这种默认是装置在 C 盘的,本着不将货色装置 C 盘的准则,不采纳这种形式装置

2 通过命令装置,这里采纳 winget 命令形式 进行装置,装置前,先新建 D:\OhMyPosh 目录,用于保留 oh-my-posh 的装置目录(D:\OhMyPosh)

装置前的注意事项

::: block-1

Windows PowerShell 执行策略

在执行 winget install 命令之前,先查看下,Windows PowerShell 的执行策略

执行策略 是 Windows PowerShell 安全策略中的一部分,它将决定你是否能够载入配置文件(包含你的 Windows PowerShell profile 文件) 和运行脚本,它将会在运行前确定哪些文件必须具备数字签名(digitally signed)

get-ExecutionPolicy 获取 Windows PowerShell 以后执行策略

set-ExecutionPolicy 批改 Windows PowerShell 中执行策略的用户首选项(preference)
:::

::: block-2

执行策略状态阐明
  • Restricted 示意状态是禁止的 不载入配置文件, 不执行脚本. Restricted 是默认值.
  • RemoteSigned 所有从互联网上下载的脚本必须通过信赖的出版商签名(trusted publisher)
  • AllSigned 所有的配置文件和脚本必须通过信赖的出版商签名(trusted publisher),这里所指的脚本页包含在本地计算机上创立的脚本
  • Unrestricted 载入所有的配置文件和脚本,如果运行了一个从互联网上下载且没有数字签名的脚本,在执行前都会被提醒是否执行
    :::
// 执行策略状态:Restricted/RemoteSigned/AllSigned/Unrestricted

// 获取 Windows PowerShell 以后执行策略
get-ExecutionPolicy

// 批改 Windows PowerShell 中执行策略
set-ExecutionPolicy RemoteSigned
winget 执行命令装置 oh-my-posh
// oh-my-posh 装置命令
winget install JanDeDobbeleer.OhMyPosh -s winget --location D:\OhMyPosh

// oh-my-posh 更新命令
winget upgrade JanDeDobbeleer.OhMyPosh -s winget --location D:\OhMyPosh

::: block-2
— location D:\OhMyPosh 是将 oh-my-posh 装置到 D:\OhMyPosh 目录下
:::

PowerShell 创立可保护配置文件

  • powershell 文档
  • about_profiles

powershell 文档
https://learn.microsoft.com/z…

about_profiles
https://learn.microsoft.com/z…

能够创立一个 PowerShell 配置文件来自定义环境并将特定于会话的元素增加到启动的每个 PowerShell 会话中

PowerShell 配置文件是在 PowerShell 启动时运行的脚本,能够将配置文件用作登录脚本来自定义环境,
能够增加命令、别名、函数、变量、治理单元、模块和 PowerShell 驱动器,
还能够将其余特定于会话的元素增加到您的配置文件中,以便在每个会话中都能够应用它们,而无需导入或从新创立它们。

PowerShell 控制台反对以下根本配置文件,配置文件按优先程序列出,第一个配置文件,如:Microsoft.VSCode_profile.ps1 具备最高优先级

PowerShell 反对用户和主机程序的多个配置文件,它不会为您创立配置文件

::: block-1

windows 下的几个变量

变量名 变量阐明
$HOME 用户的主目录
$PSHOME PowerShell 装置目录
$PROFILE 以后用户、以后主机 配置文件的门路
$PROFILE.CurrentUserCurrentHost 以后用户、以后主机 配置文件的门路
$PROFILE.CurrentUserAllHosts 以后用户,所有主机 配置文件的门路
$PROFILE.AllUsersCurrentHost 所有用户,以后主机 配置文件的门路
$PROFILE.AllUsersAllHosts 所有用户、所有主机 配置文件的门路

:::

个别以后用户,以后主机下,PowerShell 配置文件所在位置
$Home\Documents\PowerShell\Microsoft.VSCode_profile.ps1

::: block-1
留神 PowerShell 配置文件 Profiles 不是主动创立的,有可能这个门路 C:\Users\sunsb\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 是存在,
关上电脑对应的目录 C:\Users\sunsb\Documents 却找不到 WindowsPowerShell 目录 和 Microsoft.PowerShell_profile.ps1 文件
:::

能够应用命令 Test-Path $PROFILE 查看以后是否存在 PowerShell 配置文件

// 查看以后是否存在 PowerShell 配置文件
// False 不存在配置文件
// True  存在配置文件
Test-Path $PROFILE

::: block-1
如果没有 Microsoft.PowerShell_profile.ps1 文件,应用命令 new-item -path $PROFILE -itemtype file -force 创立一个 PowerShell 配置文件,最好是在创立好 PowerShell 配置文件文件后查看下
以后的 PowerShell 执行策略,get-ExecutionPolicy 将执行策略设置为 RemoteSigned,执行命令是:set-ExecutionPolicy RemoteSigned,如果不设置可能会报错 无奈加载配置文件
:::

// 创立一个 PowerShell 配置文件
New-Item -Path $PROFILE -Type File -Force
// 以后的 PowerShell 执行策略
get-ExecutionPolicy
// 设置 PowerShell 执行策略为 RemoteSigned
set-ExecutionPolicy RemoteSigned

::: block-1

疾速关上配置文件

有个小技巧,在 C:\Users\sunsb\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 编写函数,如想应用 vscode 关上该文件的函数 或者 应用 nodepad 关上该文件的函数
:::

# Microsoft.PowerShell_profile.ps1

# 应用 vscode 关上 $PROFILE 配置文件
function vscodeOpen {Code $PROFILE}

# 应用 nodepad++ 关上 $PROFILE 配置文件
function notepadOpen {noetepad $PROFILE}

oh-my-posh 主题定制化配置

  • 定制化配置
  • oh-my-posh 主题

定制化配置
https://ohmyposh.dev/docs/ins…

oh-my-posh 主题
https://ohmyposh.dev/docs/themes

C:\Users\sunsb\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

# $PROFILE 配置文件门路
# C:\Users\sunsb\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

# 配置 oh-my-posh 主题形式一
# 所有的本地主题文件都在 D:/OhMyPosh/themes 目录下,以 .json 结尾
# oh-my-posh init pwsh --config 'D:/OhMyPosh/themes/jandedobbeleer.omp.json' | Invoke-Expression

# 配置 oh-my-posh 主题形式二,近程形式
# oh-my-posh init pwsh --config 'https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/jandedobbeleer.omp.json' | Invoke-Expression

# 配置 oh-my-posh 主题形式三,以后我应用的
# POSH_THEMES_PATH 是 oh-m-posh 的 用户环境变量
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/jandedobbeleer.omp.json" | Invoke-Expression

# 导出 oh-my-posh 主题
# oh-my-posh config export --output D:/jandedobbeleer.omp.json

此时会发现,字体和小图标是乱码的,oh-my-posh 想要在终端中失常的显示图标,请装置 Nerd Font 字体,并进行终端的 settings.json 的配置

oh-my-posh 有一个 cli 能够抉择和装置 Nerd 字体(测试版)

// 此命令须要以管理员身份执行,字体在零碎范畴内装置
oh-my-posh font install

官网也说这个只是测试版本的,个人感觉不太好,有些可能抉择的字体可能装不上,依据官网情谊提醒 去 nerdfonts 官网下载本人想要的字体

  • nerdfonts
  • nerdfonts downloads

nerdfonts
https://www.nerdfonts.com/

nerdfonts downloads
https://www.nerdfonts.com/fon…

这里以下载、装置、设置 JetBrainsMono Nerd Font 为示例

关上下载的 JetBrainsMono 字体包,Ctrl + a 全选,右击 为所有用户装置

windows 下 如何查看本地的字体:C:\Windows\Fonts

而后对 windows terminal 的配置文件 settings.json 进行批改,抉择带有 Nerd Font 的,字体名字如同复制不了,只能手敲了

C:\Users\sunsb\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json

// C:\Users\sunsb\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
{
    "profiles": {
        "defaults": { // 终端的默认值配置
            "experimental.retroTerminalEffect": false, // 复旧格调的终端成果
            "font": {
                "face": "JetBrainsMono Nerd Font",
                "size": 14
            }
        },
    }
}

如何下次疾速的关上改文件,进行批改,在 PowerShell 配置文件新增个函数 openTermialSetting 即可

C:\Users\sunsb\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

# 去除 Window PowerShell 版权所有提醒
clear

# Microsoft.PowerShell_profile.ps1

# 应用 vscode 关上 $PROFILE 配置文件
function vscodeOpen {Code $PROFILE}

# 应用 nodepad++ 关上 $PROFILE 配置文件
function notepadOpen {noetepad $PROFILE}

# 关上 windows termial 设置文件

function openTermialSetting {Code C:\Users\sunsb\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json}


# 配置 oh-my-posh 主题形式一
# oh-my-posh init pwsh --config 'D:/OhMyPosh/themes/jandedobbeleer.omp.json' | Invoke-Expression

# 配置 oh-my-posh 主题形式二,近程形式
# oh-my-posh init pwsh --config 'https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/jandedobbeleer.omp.json' | Invoke-Expression

# 配置 oh-my-posh 主题形式三,以后我应用的
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/jandedobbeleer.omp.json" | Invoke-Expression

# 导出 oh-my-posh 主题
# oh-my-posh config export --output D:/jandedobbeleer.omp.json

::: bloack-1

如何去除 Window PowerShell 版权所有提醒

如何去除 Window PowerShell 版权所有提醒,在下面的 Microsoft.PowerShell_profile.ps1 最后面加上 clear 或者 cls,认为 clear 只能在 Mac 下应用,window terminal 也反对
:::

其余主题的更换

  • 在终端应用命令 get-Poshthemes 查看本地 oh-my-posh 的所有主题,并且会呈现其余出题的款式
  • 在 oh-my-posh 官网查看 oh-my-posh 主题
  • 关上 D:/OhMyPosh/themes/ 复制 .json 后面的替换即可

终端应用下面配置的函数 vscodeOpen 命令关上 $PROFILE 文件,批改对应的 xx.json 名称即可

vscodeOpen

C:\Users\sunsb\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

# 去除 Window PowerShell 版权所有提醒
clear

# Microsoft.PowerShell_profile.ps1

# 应用 vscode 关上 $PROFILE 配置文件
function vscodeOpen {Code $PROFILE}

# 应用 nodepad++ 关上 $PROFILE 配置文件
function notepadOpen {noetepad $PROFILE}

# 关上 windows termial 设置文件

function openTermialSetting {Code C:\Users\sunsb\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json}


# 配置 oh-my-posh 主题形式一
# oh-my-posh init pwsh --config 'D:/OhMyPosh/themes/jandedobbeleer.omp.json' | Invoke-Expression

# 配置 oh-my-posh 主题形式二,近程形式
# oh-my-posh init pwsh --config 'https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/jandedobbeleer.omp.json' | Invoke-Expression

# 配置 oh-my-posh 主题形式三,以后我应用的
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/jandedobbeleer.omp.json" | Invoke-Expression

# 导出 oh-my-posh 主题
# oh-my-posh config export --output D:/jandedobbeleer.omp.json
# 查看本地 oh-my-posh 所有主题,并且展现其款式
get-Poshthemes

其余问题解决

WindowsTerminal.exe – 零碎谬误

因为找不到 MSVCP140.dll,无奈继续执行代码。从新安装程序可能会解决此问题

Visual Studio 2015 运行库是 microsoft 微软公司提供的很多程序软件必备的运行环境组件,
Visual Studio 2015 运行库是 Visual C++ Redistributable Package 装置运行应用 Visual Studio 2015 生成的 C++ 应用程序时所需的运行时组件,
下载并装置微软 Visual Studio 2015 版运行库后重启零碎,msvcp140.dll 文件即可修复胜利

Microsoft Visual C++ 可再发行程序包最新反对的下载

Microsoft Visual C++ 可再发行程序包最新反对的下载
https://learn.microsoft.com/z…

Microsoft Visual C++ 可再发行程序包最新反对的下载:https://learn.microsoft.com/z…,
找到 Visual Studio 2015、2017、2019 和 2022,我是 64 位零碎的,下载 体系结构 X64 的 VC_redist.x64.exe 进行装置即可

windows11 下,右击开展菜单

可能在平时应用过程中,在某个我的项目中,须要 右击关上终端,上面是 右键菜单的开展

// 应用管理员身份,关上终端,输出命令,重启电脑

// 开展 右击菜单
reg.exe add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve

// 折叠 右击菜单 原来的
reg.exe delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /va /f

快点配置一个领有本人喜爱的明星的个性化终端吧

本文由 mdnice 多平台公布

正文完
 0