像MAC一样使用win10的Terminal
2019-06-29 本文已影响2166人
kx叔
Windows Terminal(Preview)实用、优化技巧(含第三方Terminal工具介绍)
Windows Terminal
如图:
image.png
一. 安装
直接进入Microsoft Store:
image.png
二. 美化
# 美化要点:
1. 改主题 (Oh-My-Posh)
2. 改颜色主题
3. 换字体
1. 安装scoop
环境要求:
Windows 版本不低于 Windows 7
Windows 中的 PowerShell 版本不低于 PowerShell 3
你能 正常、快速 的访问 GitHub 并下载上面的资源
你的 Windows 用户名为英文(Windows 用户环境变量中路径值不支持中文字符)
2. 运行Powershell
打开菜单,点击:
Windows Terminal
输入以下脚本:
# 保证允许本地脚本的执行
set-executionpolicy remotesigned -scope currentuser
3. 安装scoop
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
4. 安装字体
# 搜索 nerd fonts,这里选择是的FantasqueSansMono这个字体
scoop search FantasqueSansMono-NF
# 添加 nerd fonts 源
scoop bucket add 'nerd-fonts'
# 安装 nerd fonts
scoop install FantasqueSansMono-NF
5. 安装oh-my-posh(类似oh-my-zsh)
# 1. 安装 choco
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
# 2. 安装ConEmu
choco install ConEmu
# 3. 安装 posh-git 和 oh-my-posh
Install-Module posh-git -Scope CurrentUser
Install-Module oh-my-posh -Scope CurrentUser
# 4. 设置 Powershell 的 profile
if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }
notepad $PROFILE
# 5. 粘贴以下内容进 profile 文件
Import-Module posh-git
Import-Module oh-my-posh
Set-Theme Paradox
6. 换颜色
如图:
a969328f28e108ec6b84056e22a8f410.gif
# 安装微软官方颜色工具
scoop install colortool
# 查看已安装主题
colortool -s
# 设置主题
colortool OneHalfDark
更多主题:Iterm2-color-schemes
7. 优化ls
命令的样式
如图:
image.png
# 1. 直接在powershell里运行(如果运行失败请检查是否安装 PowerShellGet):
)
Install-Module Get-ChildItemColor
# 或者
# git 安装(上面成功了,就不需要再用 git 安装)
git clone https://github.com/joonro/Get-ChildItemColor.git
# 2. 激活
Import-Module Get-ChildItemColor
8. 我的配置文件
使用notepad $profile
即可打开
Import-Module Get-ChildItemColor
$env:PYTHONIOENCODING="utf-8"
# Remove curl alias
If (Test-Path Alias:curl) {Remove-Item Alias:curl}
If (Test-Path Alias:curl) {Remove-Item Alias:curl}
# Remove-Item alias:ls -force
Set-Alias l Get-ChildItemColor -option AllScope
Set-Alias ls Get-ChildItemColorFormatWide -option AllScope
function GitLogPretty {
git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --all
}
function PrettyLS {
colorls --light -A
}
function GitStat {git status}
function GoBack {Set-Location ..}
function GetMyIp {curl -L tool.lu/ip}
function UpdateScoop {scoop update; scoop update *}
function UpdateChoco {choco upgrade chocolatey}
Import-Module posh-git
Import-Module oh-my-posh
# $DefaultUser = 'spenc'
# Setup other alias
Set-Alias open Invoke-Item
Set-Alias .. GoBack
Set-Alias glola GitLogPretty
Set-Alias gst GitStat
Set-Alias myip GetMyIp
Set-Alias pls PrettyLS
# Set theme
Set-Theme robbyrussell
Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete
PS:
例图方案
- 主题:SpencerTechy.psm1
- 颜色主题:Nord Theme
{
"name": "Nord",
"background": "#2e3440",
"foreground": "#eceff4",
"brightBlack": "#2e3440",
"brightBlue": "#5e81ac",
"brightCyan": "#8fbcbb",
"brightGreen": "#a3be8c",
"brightPurple": "#b48ead",
"brightRed": "#bf616a",
"brightWhite": "#eceff4",
"brightYellow": "#ebcb8b",
"black": "#2e3440",
"blue": "#5e81ac",
"cyan": "#8fbcbb",
"green": "#a3be8c",
"purple": "#b48ead",
"red": "#bf616a",
"white": "#eceff4",
"yellow": "#ebcb8b"
}
第三方Terminal
1. Fluent Terminal
如图:
Fluent Terminal
2. Hyper
如图:
Hyper
3. Terminus
如图:
Terminus
相关工具
- The PS1 variable
- ColorTool
- Nerd fonts
- Github:Nerd fonts
- Dracula
- Dotfiles
- Get-ChildItemColor
- Iterm2-color-schemes
- FluentTerminal
- chocolatey:Same as Homebrew-Cask
- scoop:Same as Homebrew
- oh-my-posh