在windows 10中美化并自定义terminal

4,442 阅读1分钟

~~~~上学时用惯了mac,在公司用了一段时间windows之后发现是在忍受不了丑陋的自带终端,所以折腾了一个美美的终端,而且可以像Linux一样用bash command

效果图

用到了 WSL + fluent terminal + oh my zsh + powerLine9k + nerd font

  1. WSL(Windows Subsystem for Linux) 可以直接在Microsoft store里下载,我选的是Ubuntu 16.04版本

  2. 下载 fluent terminal

  3. 打开fluent terminal,设置WSL为executable shell

完成到这步之后就可以在windows中愉快的使用bash command啦,下面我们开始美化fluent terminal

  1. 打开Fluent Terminal,下载 oh-my-zsh,powerLine9k 和 nerd font

    sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

    git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k

  2. 打开.zshrc

    vim ~/.zshrc

    复制粘贴 ZSH_THEME="powerlevel9k/powerlevel9k" 到zshrc

完事,顺便附上我的 .zshrc 配置

# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH

# Path to your oh-my-zsh installation.
export ZSH="/home/kzhang1/.oh-my-zsh"

# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes

#ZSH_THEME="agnoster"
ZSH_THEME="powerlevel9k/powerlevel9k"
POWERLEVEL9K_MODE="nerdfont-complete"

# POWERLEVEL9K_PROMPT_ON_NEWLINE=true
# POWERLEVEL9K_MULTILINE_FIRST_PROMPT_PREFIX=""
# POWERLEVEL9K_MULTILINE_SECOND_PROMPT_PREFIX="┌ "
POWERLEVEL9K_PROMPT_ADD_NEWLINE=true
POWERLEVEL9K_DISABLE_RPROMPT=true

#POWERLEVEL9K_DISABLE_RPROMPT=true
POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR='┌ '
POWERLEVEL9K_LEFT_SUBSEGMENT_SEPARATOR=' '
#POWERLEVEL9K_SHORTEN_STRATEGY=truncate_to_first_and_last

POWERLEVEL9K_SHORTEN_DIR_LENGTH=2

POWERLEVEL9K_LOAD_CRITICAL_BACKGROUND="white"
POWERLEVEL9K_LOAD_WARNING_BACKGROUND="white"
POWERLEVEL9K_LOAD_NORMAL_BACKGROUND="white"
POWERLEVEL9K_LOAD_CRITICAL_FOREGROUND="red"
POWERLEVEL9K_LOAD_WARNING_FOREGROUND="yellow"
POWERLEVEL9K_LOAD_NORMAL_FOREGROUND="black"
POWERLEVEL9K_LOAD_CRITICAL_VISUAL_IDENTIFIER_COLOR="red"
POWERLEVEL9K_LOAD_WARNING_VISUAL_IDENTIFIER_COLOR="yellow"
POWERLEVEL9K_LOAD_NORMAL_VISUAL_IDENTIFIER_COLOR="green"

POWERLEVEL9K_OS_ICON_FOREGROUND="black"
POWERLEVEL9K_OS_ICON_BACKGROUND="magenta"
# POWERLEVEL9K_DIR_DEFAULT_FOREGROUND="black"
# POWERLEVEL9K_DIR_DEFAULT_BACKGROUND="cyan"
POWERLEVEL9K_DIR_ETC_BACKGROUND='none'
POWERLEVEL9K_DIR_ETC_FOREGROUND='005'
POWERLEVEL9K_DIR_HOME_BACKGROUND='none'
POWERLEVEL9K_DIR_HOME_FOREGROUND='004'
POWERLEVEL9K_DIR_DEFAULT_BACKGROUND='none'
POWERLEVEL9K_DIR_DEFAULT_FOREGROUND='005'
POWERLEVEL9K_DIR_HOME_SUBFOLDER_BACKGROUND='none'
POWERLEVEL9K_DIR_HOME_SUBFOLDER_FOREGROUND='004'

POWERLEVEL9K_CONTEXT_DEFAULT_FOREGROUND="black"
POWERLEVEL9K_CONTEXT_DEFAULT_BACKGROUND="magenta"

#POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(os_icon root_indicator context dir vcs status)
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(virtualenv dir status newline )  # 添加virtualenv

# # Change ls colours
LS_COLORS="ow=01;36;40" && export LS_COLORS

# # make cd use the ls colours
zstyle ':completion:*' list-colors "${(@s.:.)LS_COLORS}"

autoload -Uz compinit

compinit