热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Windowsterminal中WSLLinux终端的极简美化指南

之前,本人写了一篇文章黑科技抢先尝-Windows全新终端初体验(附无需编译就能安装的Preview版本及代码Build全过程),介绍了玩转Windowsterminal的两种方式


之前,本人写了一篇文章 黑科技抢先尝 - Windows全新终端初体验(附无需编译就能安装的Preview版本及代码Build全过程 ),介绍了玩转Windows terminal的两种方式。


今天这篇文章,主要介绍如何美化 Windows terminal 中 WSL 的 Linux 终端,依然是以本人最熟悉的 Ubuntu 为例,其他版本的 Linux 请参考本文的流程换用对应的命令。假定你已按上一篇文章安装好了 Ubuntu,并设置号了 WSL 的权限,然后就可以按本文继续操作了。


修改默认源,为apt-get安装提速


由于 Ubuntu 官方的源实在是太慢了,建议大家缓存阿里云镜像的 Ubuntu 源,其具体操作步骤如下:


首先将原配置文件备份


sudo cp /etc/apt/sources.list /etc/apt/sources.list.20190516

然后 vim 打开 sources.list ,


sudo vim /etc/apt/sources.list

i (插入)模式下,在末尾输入依次输入每一行进行替换:


:%s/security.ubuntu/mirrors.aliyun/g
:%s/archive.ubuntu/mirrors.aliyun/g

每输入一行,回车一次,然后就替换好了。


更新源:


sudo apt update; sudo apt upgrade

安装python 和 python pip


依次输入如下命令:


sudo apt-get install python3
sudo apt-get install build-essential
sudo apt-get install python-pip
pip install --upgrade pip

安装 zsh


sudo apt-get install zsh

安装powerline-font中的特定字体


从 github 下载字体"DejaVu Sans Mono for Powerline",并安装。安装字体时,选择对应的哪一个ttf后缀的安装即可。


手动安装字体"Fira code" 或 "DejaVu Sans Mono for Powerline"


然后在命令行应用之,具体操作是在profiles.json中把字体设置成它,即可生效。


powerline/fonts: Patched fonts for Powerline users.


https://github.com/powerline/fonts


安装powerline-shell


cd ~
mkdir src
cd src
git clone https://github.com/b-ryan/powerline-shell
cd powerline-shell
sudo python setup.py install

修改~目录下的配置文件 .bashrc 和 .zshrc


先更新文件 .zshrc


vim ~/.zshrc

在末尾加入内容:


function powerline_precmd() {
PS1="(powerline-shell --shell zsh ?)"
}

function install_powerline_precmd() {
for s in "${precmd_functions[@]}"; do
if [ "$s" = "powerline_precmd" ]; then
return
fi
done
precmd_functions+=(powerline_precmd)
}

if [ "$TERM" != "linux" ]; then
install_powerline_precmd
fi

sudo su
ls

再更新文件 .bashrc


vim ~/.bashrc

在末尾加入内容:


function _update_ps1() {
PS1="(powerline-shell ?)"
}

if [ "$TERM" != "linux" ]; then
PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND"
fi


此时的terminal为:





那么,如果要插入表情,怎么弄呢?就在下图相应的地方加~




vim ~/.bashrc

改完之后更新:


source ~/.bashrc


更有意思的玩法可以参考:


https://loige.co/random-emoji-in-your-prompt-how-and-why/

从 Windows 10 的 Bash 中运行 WSL


对于windows 10中 WSL 独立的默认Bash窗口,只能字体"DejaVu Sans Mono for Powerline",可以在界面上选择后使用。


开始菜单中搜索 bash 并打开,右键 属性-> 字体。



ps1格式脚本小知识:


shell有四种不同的命令提示,称为PS1,PS2,PS3和PS4。 PS代表Prompt String。Windows/Linux/Ubuntu都用得比较多的是PS1脚本。


"$PS1", "Prompt String 1" 指定命令行界面中的环境变量。


更新配置文件 .bashrc 和 .zshrc


source ~/.zshrc
source ~/.bashrc

此时Windows terminal中的效果如下:



我直接就使用这个默认主题了。


zsh主题定制


如果需要定制zsh主题,建议安装 oh_my_zsh ,下面详细介绍。


安装 oh_my_zsh


Linux下安装oh-my-zsh


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

如果 遇到证书类似问题


apt-get install ca-certificates

解决权限问题


如果启动时会出现zsh-syntax-highlighting权限问题,运行下面的命令即可:


compaudit | xargs chmod g-w,o-w

卸载


uninstall_oh_my_zsh

Scott Hanselman:


请注意我在prompt 中也使用了 Powerline 。 我正在使用 Fira Code ,它含有我需要的glyphs,但你当然可以 使用修补的Powerline字体 或使用像 Nerd Fonts 和 它的字体修补程序 那样的工具制作自己 的字体 。 此字体修补程序通常用于获取您最喜欢的等宽字体并为其添加Powerline glyphs。


注意:如果您看到字形有任何奇怪的间距问题,您可以尝试使用 --use-single-width-glyphs 来解决它。 通过发布,我认为所有这些小问题都将得到解决。 在我的终端环境下使用 Fira Code 没有任何问题,您的环境可能有所不同。


参考:


修改 WSL Ubuntu 18.04 默认源为阿里云镜像 - Windows - 大象笔记


https://www.sunzhongwei.com/modify-the-wsl-ubuntu-1804-default-source-for-ali-cloud-images


b-ryan/powerline-shell: A beautiful and useful prompt for your shell


https://github.com/b-ryan/powerline-shell


How to Install Powerline Fonts, Symbols for Bash on Windows 10 - The Customize Windows


https://thecustomizewindows.com/2018/01/install-powerline-fonts-symbols-bash-windows-10/




推荐阅读
author-avatar
帝姬
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有