macOS的terminal的zsh颜色主题设置及zsh和bash切换

1. 切换终端为zsh的shell

访达中,点击前往->前往文件夹,输入\bin 就可以到达下面的目录中
在这里插入图片描述
可以看到,macos确实是自带zsh这个shell的。

另外,其实一直没注意,每次打开一个终端的时候,会提示:

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.

在这里插入图片描述

# 查看当前使用的 shell
echo $SHELL
> /bin/bash

# 切换为zsh的命令
chsh -s /bin/zsh

提示 Changing shell for username.
Password for username: 

# 切换后重启一个terminal
echo $SHELL
> /bin/zsh

# 查看系统支持的shell风格命令:
cat /etc/shells
> /bin/bash
  /bin/csh
  /bin/dash
  /bin/ksh
  /bin/sh
  /bin/tcsh
  /bin/zsh

但是好像切换之后和之前差不多?? 应该是因为缺乏主题的原因

参考:

2. 修改zsh主题为oh my zsh

根据官网:oh my zsh

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# 如果这步报错超时,多尝试几次

在这里插入图片描述
下载好了,显示上面的界面。其中提示:
Looking for an existing zsh config... Found ~/.zshrc. Backing up to /Users/huangshan/.zshrc.pre-oh-my-zsh Using the Oh My Zsh template file and adding it to ~/.zshrc.

意思就是,发现系统本身有一个.zshrc文件,将其备份为.zshrc.pre-oh-my-zsh,使用Oh My zsh的模板文件,作为新的.zshrc

此外,可以看到下面的这个命令行已经变样了,此时已经在使用on my zsh了,

另外最重要的一点就是要去看.zshrc这个文件进行插件、主题等的配置。

github文档地址,大概如下,可以自己去看有兴趣的部分。
在这里插入图片描述
继续操作

# 进入.zshrc文件
vim ~/.zshrc

在这里插入图片描述
在zsh中,tab找到所有zsh开头的文件,继续tab,可以选择文件。

.zshrc中最重要的一项就是theme
在这里插入图片描述
默认是这个robbyrussell主题。

可以去https://github.com/ohmyzsh/ohmyzsh/wiki/Themes查看主题,选择一个自己想要的,修改到配置文件中去。

一般大佬都用的是这个主题:agnoster,但是我安装重启zshell之后显示有问题,就算了。其实是因为这个主题需要进行额外配置。。详见默认终端+solarized颜色主题配置

在这里插入图片描述


这里贴几个我觉得比较好看的:
cloud
在这里插入图片描述

jnrowe
在这里插入图片描述
jonathan
在这里插入图片描述
af-magic
在这里插入图片描述
这两个主题很好,命令与命令之间有风格线,我觉得很good

第一个尝试cloud
在这里插入图片描述
这个主题其实。。。如果不是在git环境中,就没有那个闪电,就是单纯修改了命令前面的图标符号。
似乎这些主题都是只针对git的repo有特效。。

然后就换一个 这个酷酷🆒的分隔,就决定是你了。jonathan
在这里插入图片描述

参考:

3. oh my zsh使用

参考:

4. 默认终端+solarized颜色主题配置

4.0 更酷的主题-Powerlevel10k

agnoster的solarized主题
参考:

Powerlevel10k主题:
在这里插入图片描述
我不需要这么华丽的,上面那个我配好之后就差不多了。想配的可以看看:

4.1 默认终端配置solarized颜色主题

参考:https://github.com/agnoster/agnoster-zsh-theme终端主题_Oh My Zsh,『 Agnoster 主题配置 』

  1. 确保安装好了oh-my-zsh,以及终端切换好了zsh
  2. 验证字符支持,在终端输入以下命令:echo "\ue0b0 \u00b1 \ue0a0 \u27a6 \u2718 \u26a1 \u2699",结果应该是以下显示:
    在这里插入图片描述
    但是我的显示是:
    在这里插入图片描述
  3. 字符不支持的话,需要额外安装Powerline-patched font这种字体,详见:Github-Powerline fonts
    # clone
    git clone https://github.com/powerline/fonts.git --depth=1
    # install
    cd fonts
    ./install.sh
    # clean-up a bit 安装好之后就可以删除刚刚下载的那个字体repo文件夹了
    cd ..
    rm -rf fonts
    
    其实安装完之后,就可以在自己本机的字体库(macOS下是/Users/yourname/Library/Fonts)下找到这个字体文件ProFont For Powerline.tff了,同时可以看到刚刚显示失败的字符(\ue0b0 \ue0a0)的样子
    在这里插入图片描述
  4. jbergantine → agnoster
    vim ~/.zshrc
    # 把当前的主题改成agnoster,然后重启终端就可以看到了
    
    在这里插入图片描述
  5. 此时还是有乱码,需要对字体进行设置,终端 > 偏好设置 > 字体修改为Meslo LG S DZ Regular for Powerline在这里插入图片描述
    注意,左侧每一个描述文件都有不同的字体设置,换一个默认描述文件,就要改一次字体设置。。
  6. 至此,其实已经设置的差不多了,但是颜色似乎还是有些区别,随便搞搞好了。详细的配色和字体设置可以去看4.2 终端配色对应说明
    在这里插入图片描述
    光标颜色也可以调节,不错,考虑到长时间面对电脑的问题,还是把颜色调暗一点好了,这样就跟默认的solarized主题很像了。

  1. 其实到这里已经可以停了,但是我发现我的和这个人【可视化教程】iTerm2+oh-my-zsh+solarized配色方案的默认命令行中的命令,像ls这样的并没有被高亮,但是其他很多人的方案命令是高亮的。
	# 直接
	brew install zsh-syntax-highlighting
	# 然后在.zshrc的最后添加以下代码:
	source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

在这里插入图片描述


  1. 隐藏用户名和主机名:
    vim ~/.oh-my-zsh/themes/agnoster.zsh-theme
    在代码prompt_segment black default "%(!.%{%F{yellow}%}.)$USER@%m"前加#号进行注释。
    
    在这里插入图片描述
    就变成下面这样了(用户名和主机名已经消失了):
    在这里插入图片描述

vim ~/.oh-my-zsh/themes/agnoster.zsh-theme
# 其实也可以自定义自己喜欢的符号,比如:	
	prompt_context() {
	  if [[ "$USERNAME" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
	   # prompt_segment black default "%(!.%{%F{yellow}%}.)%n@%m"
	   prompt_segment black default "\u21c4 \u21ba \u273f \u266c"
	  fi
	}

这些字符就是从刚刚安装的/Users/yourname/Library/Fonts字体库中,XXX for powerline里找的
在这里插入图片描述

如果不小心改错了,把文件改坏了,可以去这里-agnoster.zsh-theme复制一份

4.2 终端配色对应说明

(橙色:(244,155,43), 绿色(118,233,96),蓝色(47,132,207))
另外,注意,高亮的命令行颜色是跟随二级路径的背景色的,感觉这个配色不错,我很喜欢。哈哈哈哈

这个颜色配置文件可以进行导入导出,我的这个配置文件已经上传到github了,有兴趣可以自取,Competition
/00.basic-component/1.solarized.terminal
。但是前提是要配置好solarized这个颜色主题。

4.4 vscode中终端字体修改

默认的zsh主题修改之后,vscode中的终端也会发生改变,但是由于vscode默认的字体与terminal不一致,所以会出现特殊字符显示有误的问题。需要做进一步设置。
在这里插入图片描述

# 默认的字体是:
Menlo, Monaco, 'Courier New', monospace
# 改为:
Meslo LG S Regular for Powerline, Cousine for Powerline, monofur for Powerline

修改后,就变成:
在这里插入图片描述
字体变了点,但是好看。。。

4.5 安装插件

4.5.1 image viewer类的插件

1. imgcat
如果使用的是macOS的iTerm2,则默认已经集成了这个插件
参考:


2.gthumb
参考:

4.5.2 cpu等信息的status bar

如果使用的是iTerm2,可以直接开启

参考:

4.5.3 vim中文件跳转/终端中访问url

其他vim相关的操作,可以去看这篇博客:vim实用功能汇总

vim中文件跳转

  • 这个其实不是靠什么插件完成的,而是vim编辑器自带的功能
  • 把光标放在要跳转的文件上,按下gf,即可跳转到目标文件;如果要回到跳转前的位置,可以ctrl+o
    在这里插入图片描述
  • ctrl+w,+o,只保留活动窗口,关闭其他窗口
  • :BD, 卸载缓冲区N并将其从缓冲区列表中删除.如果缓冲区已更改,则此操作将失败,除非指定了[!],否则更改将丢失.该文件不受影响.
  • 如果您知道自己在做什么,也可以使用:bw。 :BW,像|:bdelete |,但真的删除了缓冲区.

参考:


终端中访问url

5. zsh切换回bash

参考Stack Overflow:Switching from zsh to bash on OS X, and back again?

永久生效的方式(需要重启terminal才会看到变化)

chsh -s /bin/zsh # 切换成zsh

chsh -s /bin/bash # 切换成bash

# 查看当前使用的 shell
echo $SHELL

临时生效的方式

exec bash

exec zsh

6. 其他ssh终端

6.1 iTerm2

看了一下,包括沐神的课上,沐神自己机器上的终端,使用的都是一个叫iTerm2的工具。相关参考资料如下:

在macOS下Solarized主题的时候,全都是和iTerm2一起出现的。

  • 但是搜索了一下这个iTerm2和macOS默认自带终端的区别,最吸引我的可能就是默认和Tmux集成,默认安装有一个imgcat插件,可以直接在终端里查看图像。。详见:Mac 终端神器 iTerm2
  • 没有心动到必须要换的程度。。
  • 而且搜下来,其实默认终端是可以配置solarized主题的,只是需要一些额外设置。

但是主题solarized主题的创作者也是配着iTerm2用的。。。有兴趣的就自己安装一下吧。。。iTerm2下载链接

参考:

6.2 tilix终端

另外看到Windows上比较好的终端似乎就是这个了,有兴趣的可以去了解一下。
gnunn1/tilix

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吨吨不打野

解决了问题,觉得还行就给点

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值